Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 7 kwi 2026, o 22:58


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 4 sty 2014, o 13:51 
Offline
Nowy

Dołączył(a): 04 sty 2014
Posty: 3
Pomógł: 0

W ramach nauki zmajstrowałem prosty układ na Atmega8 z 2 diodami LED i przyciskiem. Wymyśliłem sobie, że diody będą mrugać na zmianę co 500ms natomiast przy wciśniętym przycisku diody zaczną mrugać jednocześnie co 1000ms.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Wszystko działa poprawnie oprócz jednoczesnego gaszenia 2 diod. Diody zaświecają się jednocześnie ale najpierw gaśnie dioda podłączona do PD7 a po około 500ms dopiero dioda z PD6. Nie wiem gdzie popełniam błąd, jakieś sugestie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 14:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 lut 2013
Posty: 376
Lokalizacja: Kłopoty-Stanisławy
Pomógł: 33

imsv11 napisał(a):
PORTD &= ~((1<<PD6)|(1<<PD7));          //Zgas 2 diody


moim zdaniem gdyby było :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


działałoby dobrze.

_________________
50 znaków Atnela ....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 14:15 
Offline
Użytkownik

Dołączył(a): 12 paź 2012
Posty: 207
Lokalizacja: Rzeszów
Pomógł: 16

acid3 napisał(a):
imsv11 napisał(a):
PORTD &= ~((1<<PD6)|(1<<PD7));          //Zgas 2 diody

....

ten zapis jest poprawny - np. BB str 181.
Moim zdaniem albo jest to efekt drgania zestyków lub coś nie łączy, ten układ jest na stykówce? Posprawdzaj czy są dobre połączenia, jak masz możliwość to może inny przycisk daj, bo kod wygląda na poprawny (można by dać najprostszą eliminację drgań zestyków). Bo wygląda to jakby przeskakiwało do kodu z bloku else...
A i jeszcze jedno może najważniejsze.:D
Sprawdź koniecznie czy programujesz procka dobrym wsadem. Bo zdarzały się sytuację że ktoś walczył i nie patrzył że wgrywa sąsiedni projekt lub niby wgrywa poprawny a np. któryś kabelek nie łączy a nie zobaczył że w consoli pisze że układ się nie programuje.
Diody mają dołączone w szereg rezystory?

_________________
sig off ;(



Ostatnio edytowano 4 sty 2014, o 14:24 przez Lukasz89, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 14:21 
Offline
Nowy

Dołączył(a): 04 sty 2014
Posty: 3
Pomógł: 0

W takim przypadku przestały się jednocześnie oświecać i nie gasną równocześnie. Teraz działa tak:
-mrugnięcie pierwszej PD7
-mrugnięcie drugiej PD6
-obydwie zgaszone



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 14:28 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 lut 2013
Posty: 376
Lokalizacja: Kłopoty-Stanisławy
Pomógł: 33

To w takim razie drgania styków... ;)

_________________
50 znaków Atnela ....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 15:16 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

A na czym masz zrobiony układ?
Stykówka?
ATB?
Inna płytka?
Daj może jakiś kawałek schematu.

Bo raz piszesz:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


A za chwilę:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Sorki ale nie da się tym samym stanem raz gasić a raz zapalać diod ;-)

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 15:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 lut 2013
Posty: 376
Lokalizacja: Kłopoty-Stanisławy
Pomógł: 33

a gdyby tak warunki po else było w klamrach {} ?


Autor postu otrzymał pochwałę

_________________
50 znaków Atnela ....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 15:30 
Offline
Użytkownik

Dołączył(a): 12 paź 2012
Posty: 207
Lokalizacja: Rzeszów
Pomógł: 16

acid3 napisał(a):
a gdyby tak warunki po else było w klamrach {} ?

hah faktycznie :D
kolega chyba znalazł babola:)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 sty 2014, o 15:46 
Offline
Nowy

Dołączył(a): 04 sty 2014
Posty: 3
Pomógł: 0

acid3 napisał(a):
a gdyby tak warunki po else było w klamrach {} ?


No i znalazła się przyczyna, dzięki kolego za spostrzegawczość. :mrgreen:



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 5 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO