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 - program sterujący diodami

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
program sterujący diodami
Autor Wiadomość
acertm

Dołączył: 02 Lis 2012
Posty: 5
Wysłany: Sob Lis 17, 2012 3:27 pm   program sterujący diodami

Zacząłem tworzyć program sterujący diodami

i mam dwa problemy
1. jak to podpiąć pod switche (fizycznie wiem, ale dodając IFa i robiąc Call Sub nie wywołuje mi oczekiwanego skutku)
2. nie bardzo ogarniam PWM i w związku z tym nie wiem jakie stany ustawić dla S1 i S2 aby działały wszystkie diody i w S3 przygasały/rozświetłay się

będę wdzięczny za pomoc

kod poniżej:

Kod:

$regfile = "m32def.dat"
$crystal = 16000000
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40

'Definicja typow zmiennych
Dim Diody As Byte
Dim I As Byte
Dim W As Word
Dim Channel As Byte

'Ekran LCD
Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = _
 Portc.7 , E = Portc.3 , Rs = Portc.2
Config Lcd = 16 * 2

'Komunikat na ekran
Cls : Cursor Noblink
Lcd "Aby rozpoczac"
Lowerline
Lcd "wybierz S1/S2/S3"

'Konfigiracja switchy, ADC
Config Pinb.0 = Input
Config Pinb.1 = Input
Config Pinb.2 = Input


' Konfiguracja LED
Leds Alias Portd
'stała symboliczna do ustalenia czasu - reguluje szybkosc przeiwjania
Const Czas1 = 75
Const Czas2 = 200
'Konfiguracja  portu jako wyjście
Config Leds = Output

'Deklaracje
Declare Sub S1()
Declare Sub S2()
Declare Sub S3()

' Petla dla S1
Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Sub S1()
Do
Leds = 254                                                  'ustawiamy jednen pin na stan niski - jedna$ dioda włączona
For I = 1 To 7
Rotate Leds , Left                                          'czekamy
Waitms Czas1                                                'powtarzamy 7 razy w pęli
Next I
Diody = 64
For I = 1 To 7
Rotate Leds , Right                                         'przesunięcie zapalonej diody w drugą stronę o jedną pozycję
Waitms Czas1
Next I
Loop
End Sub

' Petla dla S2
Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Sub S2()
Do
Leds = 254                                                  'ustawiamy jednen pin na stan niski - jedna$ dioda włączona
For I = 1 To 7
Rotate Leds , Right                                         'czekamy
Waitms Czas2                                                'powtarzamy 7 razy w pęli
Next I
Diody = 64
For I = 1 To 7
Rotate Leds , Left                                          'przesunięcie zapalonej diody w drugą stronę o jedną pozycję
Waitms Czas2
Next I
Loop
End Sub

' Petla dla S3
Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Sub S3()
Start Adc
Do
  W = Getadc(0)
  W = W / 4                                                 'zamiana z 10 bitowej na 8 bitową wartość
  Pwm1a = W                                                 'zmiana wartości  PWM
                                          'należy pamiętać, źe diody led świecą się dla niskiego stanu
  W = Getadc(1)
  W = W / 4
  Pwm1b = W
 Wait 1
  Loop
End Sub

 
     
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