Witam koleżeństwo . Potrzebuję pomocy przy sterowaniu silnikiem (potencjometr ALPS) przy pomocy podczerwieni (RC5). Z racji że już od kilku lat sie nie zajmowałem mikrokontrolerami to mam lekki problem. W zestawie attiny 2313 , sterownik silnika L293 i standardowy odbiornik podczerwieni. Zastosowałem standardowy sposób odbioru kodu i mam problem . Po odebraniu kodu , sterownik zasila silnik , ale jest to praktycznie na czas trwania kodu i za chwilę silnik sie zatrzymuje. Przy dłuższej emisji kodu z pilota następuje przerywana praca silnika. A oczywiście chodzi o to aby silnik pracował tak długo jak trzymany zostaje przycisk na pilocie.
Oto kod który skleciłem
Oto kod który skleciłem
$regfile = "attiny2313.dat"
$crystal = 8000000
Enable Interrupts
Config Rc5 = Pind.4
Config Pinb.2 = Output
Config Pinb.3 = Output
Config Pinb.4 = Output
Dim Address As Byte , Command As Byte
Do
Getrc5(address , Command)
Command = Command And &B01111111
If Address = 0 And Command = 16 Then
Set Pinb.2
Set Pinb.3
Waitms 45
Set Pinb.4
End If
If Address = 0 And Command = 17 Then
Set Pinb.2
Set Pinb.4
Waitms 45
Set Pinb.3
End If
Waitms 5
Reset Pinb.2
Reset Pinb.3
Reset Pinb.4
Loop
End