۰۹-مرداد-۱۳۹۳, ۱۸:۰۷:۱۵
سلام
من ميخوام يک برنامه بيسيک بنويسم براي ميکرو مگا 32 که مثلا اگر portb.2 يک شد مقدار پالس ورودي به portb.0 را جمع بزند و در يک ال سي دي نمايش دهد و اين شمارش با کمترين خطا باشد ولي در برنامه زير مشکلي که دارم در پرتيوس وقتي portb.2 را 1 مکنم و تعداد پالس رو نشان مي دهد ولي ميخواهم براي بار بعدي دوباره بهم تعداد پالس ها را نشان دهد کليد عمل نمي کند و چيزي رو ال سي دي نمايش نمي دهد ازتون ممنون ميشم کمک کنيد
من ميخوام يک برنامه بيسيک بنويسم براي ميکرو مگا 32 که مثلا اگر portb.2 يک شد مقدار پالس ورودي به portb.0 را جمع بزند و در يک ال سي دي نمايش دهد و اين شمارش با کمترين خطا باشد ولي در برنامه زير مشکلي که دارم در پرتيوس وقتي portb.2 را 1 مکنم و تعداد پالس رو نشان مي دهد ولي ميخواهم براي بار بعدي دوباره بهم تعداد پالس ها را نشان دهد کليد عمل نمي کند و چيزي رو ال سي دي نمايش نمي دهد ازتون ممنون ميشم کمک کنيد
کد php:
$regfile = "m32def.dat"
$crystal = 1000000
$baud = 9600
Config Timer1 = Counter , Edge = Rising
'Config Int0 = Rising
Config Int1 = Rising
'On Int0 Interrupt0
On Int1 Interrupt1
Config Portb.2 = Input
Config Portb.0 = Input
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7 , E = Portc.3 , Rs = Portc.2
'Main Body of Program
Enable Int0
Enable Interrupts
Main:
Tcnt1 = 0
Do
If Pinb.2 = 1 Then
Enable Int1
Elseif Pinb.2 = 0 Then
Disable Int1
If Portb.0 <> 0 Then
Lcd Tcnt0
Wait 1
Cls
Tcnt1 = 0
End If
End If
Loop
End
Interrupt0:
Enable Int1
Return
Interrupt1:
Lcd Tcnt1
Return