Forum www.nestor-electronic.pl Strona Główna www.nestor-electronic.pl
Forum sterowników procesorowych- programy BASCOM
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Problem z TIMER2, pwm, lcd, lub rc5

 
Napisz nowy temat   Odpowiedz do tematu    Forum www.nestor-electronic.pl Strona Główna -> Pomoc w programowaniu BASCOM
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Ząbek
Nowy


Dołączył: 03 Paź 2008
Posty: 1

PostWysłany: Pon Lis 23, 2009 10:24 pm    Temat postu: Problem z TIMER2, pwm, lcd, lub rc5 Odpowiedz z cytatem

Mam pana plytkę testową jestem z niej bardzo zadowolony. Za zadanie sterować jasnością 3 diod przez pilot RC5i na wyświetlaczu ma się wyświetlać stan. Na timerze 1 steruje pwm1a i pwm1b i jest w porządku zmienia się jasność. Problem ze sterowaniem 3 diodą (TIMER2), ona nie reaguje gdy wysyłam kod 6 lub 9, mrugnie jednorazowo tylko wtedy gdy wysyłam dowolną komendę do tmfs5360. PinB.3 podlaczylem pod uln 2803. Jasność tej 3 diody się nie zmienia. Jeżeli zmienię na

Config Timer2 = Pwm , Async = Off
to wtedy jestem w stanie sterować tylko ze na wyświetlaczu pojawiają się krzaczki ;/
Nie wiem w czym jest kłopot pomóżcie ;/ Prosze o pomoc

Kod:


$regfile = "m8def.dat"
$crystal = 8000000
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portd.4 , E = Portd.3 , Rs = Portd.2
Config Timer1 = Pwm , Prescale = 1 , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Config Timer2 = Pwm , Async = On , Pwm = On , Compare Pwm = Clear Up , Prescale = 1
Config Pinb.1 = Output
Config Pinb.2 = Output
Config Pinb.3 = Output
Declare Sub Wysw

Config Rc5 = Pind.1
Dim Flaga As Bit
Dim Address As Byte , Command As Byte , I As Byte
Enable Interrupts
Enable Timer1
Enable Timer2

Pwm1a = 0
Pwm1b = 0
Ocr2 = 0
Flaga = 1
I = 10
  Call Wysw



       Do
          Getrc5(address , Command)
          If Address = 0 Then

               If Command = 1 Then
                  Pwm1a = Pwm1a + I
               End If

               If Command = 2 Then
                  Pwm1b = Pwm1b + I
               End If

               If Command = 4 Then
                  Pwm1a = Pwm1a - I
               End If
               If Command = 5 Then
                  Pwm1b = Pwm1b - I
               End If
               If Command = 3 Then
                   Ocr2 = Ocr2 + I
               End If
               If Command = 6 Then
                   Ocr2 = Ocr2 - I
               End If

             Flaga = 1
             Waitms 20
            End If
         Command = Command And &B01111111
         Waitms 100
         Call Wysw
      Loop

End


Sub Wysw
   If Flaga = 1 Then
     Cls
    Lcd "PWMA:" ; Pwm1a ; " PWMB:" ; Pwm1b
    Lowerline
    Lcd "OCR2: " ; Ocr2
    Waitms 20
      Flaga = 0
   End If
End Sub



Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum www.nestor-electronic.pl Strona Główna -> Pomoc w programowaniu BASCOM Wszystkie czasy w strefie CET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


Powered by phpBB © 2001, 2005 phpBB Group