۰۲-تير-۱۳۸۷, ۲۳:۵۱:۰۶
من از برنامه زیر استفاده کردم و با پروتئوس 6.9 عملکرد مدار را تست کردم متاسفانه اطلاعاتی را که از Rx شبیه سازی شده نرم افزاری باید دریافت شود 98 درصد ان دریافت نمیشود همچنین فشردن بعضی از کلید های صفحه کلید نتایج یکسانی را برمیگرداند
ایا مشکل بخاطر اسیلاتور داخلی است من از باد ریت 2400 استفاده کرده ام
یا ...
$regfile = "m8def.dat" ' specify the used micro
$crystal = 8000000 ' used crystal frequency
$baud = 2400 ' use baud rate
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db7 = Portc.0 , Db6 = Portc.1 , Db5 = Portc.2 , Db4 = Portc.3 , E = Portc.4 , Rs = Portc.5
Config Kbd = Portb , Debounce = 20 , , Delay = 100
Config Serialin = Buffered , Size = 30
Enable Interrupts
Dim P As Word
Dim Mymessage As Byte
Dim Mykey As Byte
Open "COMD.5:2400,8,N,1" For Input As #1
Cls
Lcd "start Program"
Do
Mymessage = Inkey(#1)
While Mymessage > 0
Lcd Mymessage;
Mymessage = Inkey(#1)
Wend
P = Inkey()
If P > 0 Then Print P 'Chr(p);
Mykey = Getkbd()
If Mykey <> 16 Then
Cls
Lcd Mykey ; "PRESSED"
Print Chr(mykey); ''Send TO Other PC Terminal
Do
Waitms 100
Mykey = Getkbd()
Loop Until Mykey = 16
End If
Loop
Close #1
End
ایا مشکل بخاطر اسیلاتور داخلی است من از باد ریت 2400 استفاده کرده ام
یا ...
$regfile = "m8def.dat" ' specify the used micro
$crystal = 8000000 ' used crystal frequency
$baud = 2400 ' use baud rate
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db7 = Portc.0 , Db6 = Portc.1 , Db5 = Portc.2 , Db4 = Portc.3 , E = Portc.4 , Rs = Portc.5
Config Kbd = Portb , Debounce = 20 , , Delay = 100
Config Serialin = Buffered , Size = 30
Enable Interrupts
Dim P As Word
Dim Mymessage As Byte
Dim Mykey As Byte
Open "COMD.5:2400,8,N,1" For Input As #1
Cls
Lcd "start Program"
Do
Mymessage = Inkey(#1)
While Mymessage > 0
Lcd Mymessage;
Mymessage = Inkey(#1)
Wend
P = Inkey()
If P > 0 Then Print P 'Chr(p);
Mykey = Getkbd()
If Mykey <> 16 Then
Cls
Lcd Mykey ; "PRESSED"
Print Chr(mykey); ''Send TO Other PC Terminal
Do
Waitms 100
Mykey = Getkbd()
Loop Until Mykey = 16
End If
Loop
Close #1
End