Zwieram wejście B.2 do masy, zostaje uruchomione wyjście B.0 a po 1s. wyjście wraca do poprzedniego stanu, nawet jak dalej trzymam przycisk wejścia.
Puszczam przycisk wejścia, dzieje się dokładnie to samo, czyli uruchamia się wyjście B.0 na 1s. i wraca do poprzedniego stanu nawet jak nie trzymam przycisku.
Do tego chciałbym aby wraz z uruchomieniem wejścia na 3s. w cyklu co 400ms. migała sobie dioda na wyjściu B.3.
Obecnie mam taki stan że uruchamiam wejście, uaktywnia się wyjście B.0 ale nie zmienia stanu po 1s., oraz uaktywnia się wyjście B.3 (miga dioda) ale cały czas do momentu zwolnienia wejścia. Jak zwolnię wejście to deaktywuje się poprzedni stan wyjścia B.0 i B.3. Co robię źle?
Code: [Zaznacz cały] [Rozwiń/Zwiń]
- $Regfile = "attiny13.dat"
- $Crystal = 9600000 'taktowanie procesora 9,6MHz - podział przez 8 wyłączony
- $hwstack = 10
- $swstack = 0
- $framesize=40
- Config Pinb.2 = Input
- Config Pinb.0 = Output
- Config Pinb.3 = Output
- przycisk Alias Pinb.2
- wyjscie Alias Portb.0
- led Alias Portb.3
- Dim flaga As Bit
- Dim licznik As Word
- Dim miganie As Word
- przycisk = 1
- do
- if przycisk = 0 then
- if flaga = 0 then
- flaga = 1
- licznik = 0
- miganie = 0
- endif
- endif
- if flaga = 1 then
- if wyjscie = 1 then
- wyjscie = 0
- endif
- endif
- incr licznik
- if licznik = 1000 then
- wyjscie = 1
- led = 1
- flaga = 0
- endif
- incr miganie
- if miganie = 400 then
- toggle led
- endif
- waitms 1 'opoznienie petli glownej
- loop
- End