wyświetlacz alfanumeryczny

To forum jest dla wszystkich pasjonatów mikrokontrolerów AVR Atmela. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

wyświetlacz alfanumeryczny

Post autor: minik97 » 10 mar 2011, 22:18

Witam :smile: . chcałem zrobić wyświetlacz tak aby wyświetlał np moje imię. Znalazłem taki program :
kod:

Kod: Zaznacz cały

$regfile = "m8def.dat"   'ATmega8 
$crystal = 8000000       'kwarc 8MHz 

Config Portb = &HFF      'wszystkie porty pracuja jako wyjscia 
Config Portc = &HFF 
Config Portd = &HFF 

Portb = &HFF             'wlacz rezystory podciagajace 
Portc = &HFF 
Portd = &HFF 


Config Lcd = 16 * 2      'wyswietlacz alfanumeryczny 16x2 
Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1 
'PORTC.2...5 - 4-bitowa szyna danych; PORTC.0 - sygnal EN, PORTC.1 - sygnal RS 

Lcd "# Test LCD16x2 #" 
Lowerline                'przeskocz do dolnej linii 
Lcd "ABCDEFGHIJKLMNOP" 

End                      'koniec programu 
czy ten program jest dobry. jeśli tak to mugłbym was poprosić o schemat jak to wszystko podłączyć .
Pozdrawiam :grin:

EDIT: Proszę korzystać ze znacznika CODE. RcTomek
Ostatnio zmieniony 11 mar 2011, 3:00 przez minik97, łącznie zmieniany 1 raz.

Awatar użytkownika
tom5555
Użytkownik
Posty: 625
Rejestracja: 23 sty 2008, 1:20
Lokalizacja: Zabrze
Kontakt:

Post autor: tom5555 » 11 mar 2011, 1:30

Po pierwsze przed pierwszym LCD daj CLS.
Linię RS wyświetlacza podłącz do pinu 24 atmegi, linię E do pinu 23, D4 do 25 pinu, D5 do 26, D6 do 27 a D7 do 28 nogi procesora. Oczywiście musisz dać zasilanie, do 7 i 20 nogi +5V, a masę do 8 i 22. Niżej masz schemat zasilania dla wyświetlacza.
Załączniki
lcd.png
lcd.png (1.29 KiB) Przejrzano 12367 razy

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 11 mar 2011, 6:33

Dzięki serdeczne czyli program jest dobry tak? A gdzie do atmegi8 podpinam kable takie jak : Enagle, register select ? :???: A jeszcze jedno co to jest CLS (bo jestem zielony w tym temacie)

http://allegro.pl/usb2lcd-sterownik-lcd ... 10282.html A czy taki sterownik moze być ?

Awatar użytkownika
tom5555
Użytkownik
Posty: 625
Rejestracja: 23 sty 2008, 1:20
Lokalizacja: Zabrze
Kontakt:

Post autor: tom5555 » 11 mar 2011, 12:24

Enable, w skrócie E, a Register Select to RS. Widać to na rysunku.
komenda CLS czyści pamięć wyświetlacza i sam wyświetlacz, ustawia kursor na początku pierwszej linii.
http://allegro.pl/usb2lcd...1500510282.html A czy taki sterownik moze być ?
Teraz nie rozumiem, czy chcesz się dowiedzieć jak połączyć wyświetlacz z Atmega i zaprogramować go z Bascom'a, czy kupić gotowy bajer wyświetlający coś na LCD?

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 11 mar 2011, 16:04

No nie wiem :???: Ale chyba kupię to co jest na allegro. Tylko nie wiem jak to do kompa podłączyć . mógłbym prosić o jakiś schemat?

Awatar użytkownika
Pikczu
Użytkownik
Posty: 754
Rejestracja: 18 lip 2005, 18:33
Lokalizacja: Dublin
Kontakt:

Post autor: Pikczu » 11 mar 2011, 21:09

Za przeproszeniem chyba "srasz" kasą ja chcesz wydać za kawałek płytki i procek 25 zeta plus przesyłkę. Za coś co nie wiadomo do czego ma służyć.
Kup lepiej jakiś zestaw startowy do nauki programowania na AVR i nie takie wodotryski będziesz mógł robić.

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 11 mar 2011, 21:49

Ale jak bym to kupił to jak to do komputera podpiąć aby go zaprogramoać :sad:

Awatar użytkownika
tom5555
Użytkownik
Posty: 625
Rejestracja: 23 sty 2008, 1:20
Lokalizacja: Zabrze
Kontakt:

Post autor: tom5555 » 11 mar 2011, 22:01

Już sam tytuł aukcji o tym mówi :)

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 12 mar 2011, 8:25

Ale widzisz na rysunku jakie jest wyjśćie to jak takie wyjśćie przerobić na usb? :???:

[ Dodano: 2011-03-12, 08:54 ]
A j jeszcze jedno jeśli wkleję ten program do BASCOM-AVR to linijka

Kod: Zaznacz cały

Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1 
jest czerwona. to co jest w tym programie nie tak ?

Awatar użytkownika
tom5555
Użytkownik
Posty: 625
Rejestracja: 23 sty 2008, 1:20
Lokalizacja: Zabrze
Kontakt:

Post autor: tom5555 » 12 mar 2011, 12:59

A j jeszcze jedno jeśli wkleję ten program do BASCOM-AVR to linijka
Kod:
Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.0 , Rs = Portc.1
jest czerwona. to co jest w tym programie nie tak ?
U mnie kod skompilował się bezbłędnie. Może przy przepisywaniu podzieliłeś tę linię enterem. Lepiej podaj od razu nazwę/numer błędu, będzie wiadomo o co chodzi.
Ale widzisz na rysunku jakie jest wyjśćie to jak takie wyjśćie przerobić na usb? :???:
To jest wtyczka podłączana bezpośrednio do USB na płycie głównej. Poczytaj user manual ze swojej płyty głównej, będzie w nim opis wszystkich złącz na płycie. Albo przerób kabelek na zwykły USB.

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 12 mar 2011, 20:47

A czy ten program jest napisany dla atmegi 8 16PU czy 8PU?

snow
Użytkownik
Posty: 794
Rejestracja: 16 sty 2007, 3:44
Lokalizacja: lubelskie
Kontakt:

Post autor: snow » 13 mar 2011, 1:16

8PU i 16PU, musisz tylko odpowiednio ustawić fusebity (lfuse = 0xe4 jeżeli nie chcesz korzystać z zewnętrznego sygnału zegarowego)

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 13 mar 2011, 9:09

czyli jak kupie 16 PU to co musze zmienić ?

[ Dodano: 2011-03-13, 12:16 ]
A znalazłem drugi program a on tez jest poprawny ?

Kod: Zaznacz cały

$regfile = "m8def.dat" 'plik dat dla ATmega8
$crystal = 4000000 'oscylator, ja ustawilem moj na 4MHz

Do 'petla glowna
Cls 'ta komenda inicjalizuje obsluge LCD i go czysci
Upperline 'ustaw kursor w gornej linii
Lcd "WITAM WSZYSTKICH" 'w miejscu ustawienia kursora wyswietl tekst

Lowerline 'ustaw kursor w dolnej linii
Lcd "DOMINIK POZDRAWIA" 'w miejscu kursora wyswietl tekst

Wait 1 'poczekaj 1 sekunde (bez tego LCD bedzie nam mrugalo)

Loop 'zapetlaj
End

snow
Użytkownik
Posty: 794
Rejestracja: 16 sty 2007, 3:44
Lokalizacja: lubelskie
Kontakt:

Post autor: snow » 13 mar 2011, 22:35

Którego byś nie kupił to i tak musisz przestawić fusebity. Polecam poczytać o podstawach AVR żeby nie było później że przy przestawianiu fusebitów się procesor zablokował i nie można go zaprogramować.

minik97
-
Posty: 75
Rejestracja: 10 mar 2011, 22:12
Lokalizacja: MAŁOPOLSKA

Post autor: minik97 » 14 mar 2011, 7:20

A mugłbyś powiedzieć jak to się przestawia? :???:

[ Dodano: 2011-03-14, 14:25 ]
A co to ten w_ogule ?usebity_ :???:
Ostatnio zmieniony 14 mar 2011, 18:36 przez minik97, łącznie zmieniany 2 razy.

ODPOWIEDZ