سلام دوستان
من یک برنامه با میکرو نوشتم که توی این برنامه یک عدد از پورت سریال کامپیوتر فرستاده میشه به صورت hexadecimal و اونطرف با یک Max232 به ttl تبدیل میشه و وارد پورت سریال میکرو میشه . برنامه میکرو هم به صورت زیر هستش
$regfile = "m32def.dat"
$crystal = 1000000
$baud = 1200
Config Portd.6 = Output
Dim A As String * 12
Dim B As Byte
On Urxc Rec_isr
Enable Urxc
Enable Interrupts
Main:
Do
Loop
End
Rec_isr:
Input A
B = Hexval(a)
If B = 255 Then
Set Portd.6
End If
If B = 128 Then
Reset Portd.6
End If
Return
این برنامه دارای وقفه سریال هستش . همونطور که گفتم از کامپیوتر اعداد به صورت hex ارسال میشه . برنامه میکرو همونطور که معلومه اعداد رو دریافت میکنه و رشته تبدیل به عدد میشه ( با دستور hexval) .
ولی چیزی که هستش برنامه کار نمی کنه یعنی من روی برد نتونستم جواب بگیرم .
1- از خروجی کامپیوتر هم مطمئن هستش چون خروجی com کامپیوتر رو به پورت com یک کامپیوتر دیگه وصل کردم و با استفاده از terminal بسکام تونستم اطلاعات رو به شکل صحیح بخونم .
2- از برنامه میکرو هم مطمئن هستم چون هم توی پروتوس جواب داده و هم این که به در قسمت فرستنده ( که قراره کامپیوتر باشه ) یک میکرو گزاشتم که اعداد رو بفرسته به میکرو گیرنده و جواب + داده و کار کرده .
حالا موندم مشکل سر چی هستش . من خودم فکر می کنم مشکل از baud rate باشه
حالا نظر شما دوستان چی هستش.
با تشکر فراوان
من یک برنامه با میکرو نوشتم که توی این برنامه یک عدد از پورت سریال کامپیوتر فرستاده میشه به صورت hexadecimal و اونطرف با یک Max232 به ttl تبدیل میشه و وارد پورت سریال میکرو میشه . برنامه میکرو هم به صورت زیر هستش
$regfile = "m32def.dat"
$crystal = 1000000
$baud = 1200
Config Portd.6 = Output
Dim A As String * 12
Dim B As Byte
On Urxc Rec_isr
Enable Urxc
Enable Interrupts
Main:
Do
Loop
End
Rec_isr:
Input A
B = Hexval(a)
If B = 255 Then
Set Portd.6
End If
If B = 128 Then
Reset Portd.6
End If
Return
این برنامه دارای وقفه سریال هستش . همونطور که گفتم از کامپیوتر اعداد به صورت hex ارسال میشه . برنامه میکرو همونطور که معلومه اعداد رو دریافت میکنه و رشته تبدیل به عدد میشه ( با دستور hexval) .
ولی چیزی که هستش برنامه کار نمی کنه یعنی من روی برد نتونستم جواب بگیرم .
1- از خروجی کامپیوتر هم مطمئن هستش چون خروجی com کامپیوتر رو به پورت com یک کامپیوتر دیگه وصل کردم و با استفاده از terminal بسکام تونستم اطلاعات رو به شکل صحیح بخونم .
2- از برنامه میکرو هم مطمئن هستم چون هم توی پروتوس جواب داده و هم این که به در قسمت فرستنده ( که قراره کامپیوتر باشه ) یک میکرو گزاشتم که اعداد رو بفرسته به میکرو گیرنده و جواب + داده و کار کرده .
حالا موندم مشکل سر چی هستش . من خودم فکر می کنم مشکل از baud rate باشه
حالا نظر شما دوستان چی هستش.
با تشکر فراوان
دیدگاه