PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ارسال متن



amirsabaghian
20-05-2008, 07:14
با سلام
يه سوال كلي داشتم كسي هست جوابمو بده؟؟؟ ممنون!
من براي ارسال عدد تا255 از كامپيوتر (ويژوال بيسيك) هيچ مشكلي ندارم ولي نتونستم متن ارسال كنم. امكان ارسالش وجود نداره؟
راستي براي ارسال از ميكرو به كامپيوتر هم يه خورده نتونستم اگه كمكم كنيد ممنون ميشم
:D

amirsabaghian
20-05-2008, 07:21
ببخشيد اصلاْ حواسم نبود اينايي كه كفتم با پورت سريال كامپيوتر هستش (ماكس 232)
ممنون :lol:

mostafahk
20-05-2008, 13:36
هیچ فرقی نمی کنه. یه متن از n کاراکتر تشکیل شده که هر کاراکتر در واقع یک عدده که در جدول ASCII (You can see links before reply) تعریف شده.

شما میتونید نوشته مورد نظرتون رو در یک آرایه قرار بدید و تک تک کاراکتر ها رو به ترتیب ارسال کنید. عدد و حرف ماهیتا فرقی ندارند ، فرقشون تو درک ما آدمها از اونهاست. برای ما 65 یه عدد معمولیه ولی این عدد تو جدل اسکی حرف A تعریف شده.

من بیسبک بلد نیستم. اینا رو سرچ کردم ، اینو پیدا کردم. به نظرم کتابخونه خوبیه. این کاری که شما می خواید بکنید رو اینطور انجام داده.

[align=left:89d12c8a60]
[marq=right] Set objComport = CreateObject( "ActiveXperts.Comport" ) ' Create a new Comport instance

objComport.Device = "COM1" ' Use a COM port directly (no Windows Device Driver)
objComport.BaudRate = 56000 ' Set baudrate (default value: 9600)
objComport.HardwareFlowControl = asFLOWCONTROL_ENABLE ' Set Hardware Flow Control (default: On)
objComport.SoftwareFlowControl = asFLOWCONTROL_ENABLE ' Set Software Flow Control (default: Off)
objComport.Open ' Open the port
Wscript.Echo "Open, result: " & objComport.LastError
If( objComport.LastError <> 0 ) Then
WScript.Quit
End If

objComport.WriteString( "at&f" ) ' Write command
str = objComport.ReadString
WScript.Echo "Received: [" & str & "]" ' Read the response

objComport.Close ' Close the port
[/align:89d12c8a60]

لینکش (You can see links before reply)

amirsabaghian
22-05-2008, 06:27
خيلي ممنون
ببخشيد من فراموش كردم بكم كه برنامه ميكرو رو با BASCOM-AVR نوشتم يعني اصلاْ سي بلد نيستم برنامه اي هم كه نوشتم اينجوري بود:

ويژوال بيسيك: ------------------------------------------------------------------------------------

[align=left:efefcc43a0]براي فراخواني كتابخانه
Private Declare Function InitCommonControls Lib "comctl32.dll" () As Long

براي پيكربندي پورت
()Private Sub Form_Load
"MSComm1.Settings = "9600,N,8,1
MSComm1.RThreshold = 1
MSComm1.SThreshold = 1
MSComm1.InputLen = 1
MSComm1.PortOpen = True

و براي ارسال عدد
("عدد")$MSComm1.Output = Chr[/align:efefcc43a0]
و برنامه ميكرو: ------------------------------------------------------------------------------------

[align=left:efefcc43a0]پيكر بندي:
"regfile = "m16def.dat$
crystal = 8000000 $
Config Pind.4 = Output
_= Config Lcdpin = Pin , Db4 = Portb.4 , Db5 = Portb.5 , Db6 = Portb.6 , Db7
Portb.7 , E = Portb.3 , Rs = Portb.2
Config Lcd = 16 * 2
Config Porta = Output
$baud = 9600
Enable Urxc
Enable Interrupts

و دريافت از طريق ميكرو:
Dim Uart As Word
Uart = Udr
If Uart = 1 Then
Set Porta.0
Else
Reset Porta.0
End If[/align:efefcc43a0]

حالا اگه منو بيشتر راهنمايي كنيد خيلي خيلي ممنون ميشم (البته هم از لحاظ برنامه ميكرو و هم از لحاظ برنامه ويژوال بيسيك) :roll: