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



Teraz jest 17 sty 2025, o 07:04


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
Autor Wiadomość
PostNapisane: 4 lut 2013, o 09:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Mam pytanie dotyczące sterowaniem wyświetlacz 4 cyfrowego o wspólnej anodzie rejestrem przesuwnym typu 74HC595 który jest sterowany trzema liniami z atmegi 16.
W jaki sposób wyświetlić cokolwiek na LED 7-segmentowym pisząc program w c. ,jak to działa?

Poniżej zamieszczam schemat podłączenia tych układów na mojej płytce szkoleniowej.

Obrazek

Proszę o pomoc w zrozumieniu sposobu sterowania tych wyświetlaczy
Poniżej umieszczam program który wyświetla mi wszystkie segmenty wyświetlacza w zależności od wartości zmiennej "i".
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 lut 2013, o 09:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 sty 2013
Posty: 328
Lokalizacja: Rzgów k. Łodzi
Pomógł: 11

Po prostu robisz 4 zmienne i wstawiasz je zamiast np PORTA np. WYSW |= (1<<SEG_A). I wysyłamy przez SPI od końca. Dane do ostatniego wyświetlacza są pierwsze a dla pierwszego wyświetlacza ostatnie.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 lut 2013, o 21:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Możesz może dopisać coś do tego kodu abym mógł to ruszyć z miejsca?
Jeśli tak to poproszę.

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



Kody umieszczamy w znaczniku syntax -- poprawiłem --> moderator user friendly : SunRiver



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lut 2013, o 01:38 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 sty 2013
Posty: 328
Lokalizacja: Rzgów k. Łodzi
Pomógł: 11

Ee no tak łatwo to nie ma :smile: Jak chcesz się czegoś nauczyć musisz to zrozumieć. Na razie jestem na telefonie, jutro postaram się Ci pomóc. Powiem Ci co musisz zrobić:smile:

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lut 2013, o 09:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 sty 2013
Posty: 328
Lokalizacja: Rzgów k. Łodzi
Pomógł: 11

mirek1968 napisał(a):
Możesz może dopisać coś do tego kodu abym mógł to ruszyć z miejsca?
Jeśli tak to poproszę.

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



Kody umieszczamy w znaczniku syntax -- poprawiłem --> moderator user friendly : SunRiver


Ok, już jestem na kompie.

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

Tutaj zamiast wysłania liczby wysyłasz 1nkę na wyświetlacz. Czyli zapali ci się segment G. Potem wybierasz 1wszy wyświetlacz.

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lut 2013, o 18:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

A może coś więcej,bo to przecież kawałek mojego kodu powyżej co napisałem:-(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lut 2013, o 01:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 01 sty 2013
Posty: 328
Lokalizacja: Rzgów k. Łodzi
Pomógł: 11

Powinieneś zamiast 1 wysłać cały znak z tablicy. Pod patrz jak robi to Mirek :wink:

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lut 2013, o 18:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

A gdzie to można podpatrzyć?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lut 2013, o 18:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 gru 2012
Posty: 56
Lokalizacja: Praszka
Pomógł: 1

Na płycie DVD dołączonej do książki Mikrokontrolery AVR Język C Podstawy programowania jest dobry przykład --> 03_Multi_LED
Sam ostatnio to przerabiałem :) i sporo się dzięki niemu dowiedziałem.
Oczywiście wraz z opisem w książce, wszystko opisane przejrzyście. :D
Tylko z tego co pamiętam przykład dotyczy wyświetlacza ze wspólną katodą a nie anodą, ale jeśli chodzi o programowanie to idea jest ta sama. ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 paź 2013, o 13:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Muszę o coś zapytać bo nie daję sobie rady z tym wysyłaniem 2-bajtów do rejestrów.

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



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



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


Obrazek



Ostatnio edytowano 10 paź 2013, o 14:10 przez mirek1968, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 paź 2013, o 13:49 
Offline
Użytkownik

Dołączył(a): 05 lut 2013
Posty: 302
Pomógł: 19

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




No jak wysylasz, skoro masz linie zakomentowana?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 paź 2013, o 14:10 

Pomógł: 0

Jest tego sporo np. PCF8575, MCP23017 i jeszcze kilka innych

Tylko co za problem połączyć kaskadowo 2x595?



Góra
  
cytowanie selektywne  Cytuj  
PostNapisane: 10 paź 2013, o 14:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Od komentowałem i nadal nic:-)

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

[/syntax]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 paź 2013, o 20:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Odbiegając troszkę od mojego tematy mam problem z Eclipse.
Po otwarciu programu mam taki błąd i nie mogę nic przesłać do procesora pomimo poprawnej kompilacji programu.
Prosze o pomoc.

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 paź 2013, o 13:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 lut 2013
Posty: 257
Lokalizacja: Racibórz
Pomógł: 0

Już sobie poradziłem z tym problemem przykleiła mi sie dioda impulsowa akurat do druku płytki testowej i robiła zwarcie:-)
Udało mi się także uruchomić SPI na moich rejestrach przesuwnych 74595 i działa ok,mam tylko jedno pytanie czy jakbym chciał użyć w swoim projekcie przerwania zamiast delayów to czy w obsłudze przerwania wrzucić ?,własnie co tam wrzucić??



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: 15 ] 

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