۱۴-خرداد-۱۳۹۰, ۱۹:۴۴:۳۴
سلام این برنامه فرستنده هست:
وقتی در فرستنده کلید رو می زنم به زیر برنامه ارسال می رود و پورت a رو میخونه و میفرسته. ولی وقتی مثلا عدد 3 رو میفرستم در گیرنده عدد 67 رو نشون میده و بعضی وقت ها درست نشون میده. یه بار عدد ارسالی رو درست نشون میده و بعضی وقت ها نه. به نظرتون مشکل کجاست؟ آیا باید برنامه رو درست کنم یا مشکل سخت افزاره؟ من پایه های پورت a روpull down کردم.
ممنون میشم کمکم کنید
کد:
$regfile = "m16def.dat"
$crystal = 11059200
$baud = 9600
Config Portb.0 = Input
Config Porta = Input
Portb.0 = 1
Dim B As Byte , S As String * 3 , A As String * 1 , Ro As String * 4
Dim D As Byte
Cls
Do
Debounce Pinb.0 , 0 , Ersal
Loop
Ersal:
B = Pina
A = "h"
S = Str(b)
Ro = A + S
For D = 1 To 8
Print Ro ; Chr(13);
Waitms 10
Next D
Return
End
گیرنده:
$regfile = "m16def.dat"
$crystal = 11059200
$baud = 9600
Config Porta = Output
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Porta.2 , Db5 = Porta.3 , Db6 = Porta.4 , _
Db7 = Porta.5 , Rs = Porta.0 , E = Porta.1
Dim B As Byte , S As String * 3 , A As String * 1 , Ro As String * 4
Cls
Locate 1 , 5
Lcd "welcom"
Wait 2
Cls
Do
Input Ro
A = Left(ro , 1)
If A = "h" Then
S = Mid(ro , 2 , 2)
B = Val(s)
Locate 1 , 1
Lcd B
Wait 3
Cls
End If
Loop
End
وقتی در فرستنده کلید رو می زنم به زیر برنامه ارسال می رود و پورت a رو میخونه و میفرسته. ولی وقتی مثلا عدد 3 رو میفرستم در گیرنده عدد 67 رو نشون میده و بعضی وقت ها درست نشون میده. یه بار عدد ارسالی رو درست نشون میده و بعضی وقت ها نه. به نظرتون مشکل کجاست؟ آیا باید برنامه رو درست کنم یا مشکل سخت افزاره؟ من پایه های پورت a روpull down کردم.
ممنون میشم کمکم کنید