f
Warning: Cannot modify header information - headers already sent by (output started at /home/anderian/ftp/www_forum/db/mysql4.php:1) in /home/anderian/ftp/www_forum/includes/sessions.php on line 548

Warning: Cannot modify header information - headers already sent by (output started at /home/anderian/ftp/www_forum/db/mysql4.php:1) in /home/anderian/ftp/www_forum/includes/sessions.php on line 549

Warning: Cannot modify header information - headers already sent by (output started at /home/anderian/ftp/www_forum/db/mysql4.php:1) in /home/anderian/ftp/www_forum/includes/page_header.php on line 343
And-Tech :: Zobacz temat - PWM + gaszenie diody przyciskiem

Strona korzysta z plików cookie w celu realizacji usług zgodnie z Politykš prywatnoœci.

Możesz okreœlić warunki przechowywania lub dostępu do cookie w Twojej przeglšdarce lub konfiguracji usługi.

And-Tech Strona Główna And-Tech
Forum firmy And-Tech

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy
RejestracjaRejestracja  ZalogujZaloguj  AlbumAlbum  DownloadDownload

Poprzedni temat «» Następny temat
PWM + gaszenie diody przyciskiem
Autor Wiadomość
qwee

Dołączył: 05 Lis 2011
Posty: 9
Wysłany: Pon Gru 19, 2011 8:10 pm   PWM + gaszenie diody przyciskiem

jestem w trakcjie pisania programu, z póżniejszym zastosowaniem praktycznym, lecz na razie chciałbym żeby zadziałał na płytce testowej. mianowicie chodzi o to, że do jednego portu podłaczamy diode a do drugiego odbiornik IR. Z pilota RC5 ma odbywać się sciemnianie i rozjaśnianie diody, oraz zapalanie i gaszenie bez konieczności regulacji. Oto kod:

Kod:



$regfile = "m32def.dat"                                     ' mega32


$crystal = 16000000

Config Pind.5 = Output                                      'dioda pod pin 5 portu D



Config Pind.6 = Input                                       ' tsop pod pind.6
Set Portd.6

Config Rc5 = Pind.6
Dim Address As Byte , Command As Byte , Togglebit As Bit    ' zmienne

Enable Interrupts                                           ' włączenie przerywan

Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1       ' ustawnienia timera
Pwm1a = 0





Do                                                          'pętla główna

Getrc5(address , Command)
Togglebit = Command.7
Command = Command And &B01111111
Address = 0
Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Prescale = 1

'--------------------------------------

If Address = 0 And Command = 59 Then
 Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Disconnect , Prescale = 1

 Toggle Portd.5
                                           'gaszenie i zapalanie bez regulacji
 If Togglebit = 0 Then
 Pwm1a = 0
 End If

 If Togglebit = 1 Then
 Pwm1a = 255
 End If

 Waitms 100


End If
'---------------------------------------------------------------------

 If Pwm1a <> 255 Then
If Address = 0 And Command = 32 Then
Incr Pwm1a                                                  ' regulacja w gore
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Incr Pwm1a
Waitms 65
End If
End If

If Pwm1a <> 0 Then
If Address = 0 And Command = 33 Then
Decr Pwm1a
Decr Pwm1a                                                  'regulacja w dol
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
Decr Pwm1a
End If
End If




Loop



End


Sciemnianie i rozjaśnianie od 0 do 255 ze skokiem co 17 ( 15 poziomów jasności ) - tak wiem, małoprofesjonalne rozwiązanie, ale grunt, że działa.
Ale problem nie leży tutaj, bo dotąd program działa dobrze.
Chodzi o to, że dodałem opcje gaszenia i zapalania diody za pomocą przycisku, za co odpowiedzialny miał być ten fragment kodu:
Kod:

If Pind.1 = 0 Then
Set Portd.0
End If


dla próby podłączyłem inna diodę do innego portu żeby zobaczyć czy da się nią manipulować no i nie działa. Powiedzcie mi co robie źle w tym kodzie bo już brak mi pomysłów?
oczywiście wcześniej było

Kod:
Config Pind.0 = Output                                      'druga dioda pod pin 0 portu d
Config Pind.1 = Input
Set Portd.1
 
     
Tsmmakika 

Wiek: 29
Dołączyła: 12 Wrz 2015
Posty: 2
Wysłany: Sob Wrz 12, 2015 8:42 am   

I liked and wanted to try it once.
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group