Problem z uruchomieniem LCD CX65 (S65)

Witam Od jakiegoś czasu kombinuje z podłączeniem wyświetlacza LCD z telefonu CX65 (Sharp). Źródła mam ze strony

formatting link

Wyświetlacz podłączam do płytki testowej z ATMega 162 i oczywiście nie działa. Prosił bym Was, o wskazanie prawdopodobnego błędu (kilka) jaki zrobiłem.

Sprzęt Prowizorka na płytce uniwersalnej, z braku części nie do końca zgodny ze schematem ze strony. Może w tym tkwi problem. Zasilanie 5V. - kwarc wbudowany 1Mhz (musi być 16Mhz do testu simple.c?, nie znalazłem nigdzie stałej do ustawienia MHz), - linie sygnałowe podłączone tak samo jak na schemacie

formatting link
że w dzielniku napięcia wykorzystałem rezystory 470 i 560 ohm, zamiast 470 i 610. Przez to napięcie na dzielniku spadło mi z 2,82 do 2,71V. Czy ten spadek może być przyczyną, że to nie działa? Mogę podkręcić na

2,95V, ale nie wiem jakie napięcie jest bezpieczne dla tego wyświetlacza, szczególnie, że po podłączeniu wyświetlacza napięcie się na pewno lekko zmieni. - Linie zasilające z braku stabilizatora 2,9V są także na dzielniku napięcia 2V9 na 470 i 680 (2,95V) ,a 1V8 na 560 i 470 (2,28V). Wielki grzech popełniłem tymi dzielnikami?

Połączenia elektryczne są sprawdzone i na 99.9% ok.

Oprogramowanie Źródła do Sharpa simple_display3. Środowisko to WinAVR w miarę aktualne. Gcc w wersji 3.4.3.

- zmieniam w makefile typ procesora z ATMega128>ATMega162

- w pliku lcd.h zmieniam wyprowadzenia dla ATM162 LCD_CS PB0 > LCD_CS PB4 LCD_RESET PB6 > LCD_RESET PB0 (wybrałem dowolny wolny) LCD_RS PB7 > LCD_RS PB1 (jw.) LCD_MOSI PB2 > LCD_MOSI PB5 LCD_MISO PB3 > LCD_MISO PB6 LCD_SCK PB1 > LCD_SCK PB7

- przy próbie kompilacji simple.c wysypuje mi: makefile:339: simple.d: No such file or directory makefile:339: disp.d: No such file or directory Do czego te pliki są używane? Ja tą linijkę w makefile wyhaszowałem

# Remove the '-' if you want to see the dependency files generated. >#include $(SRC:.c=.d) i ruszyło dalej (nie do końca).

- plik simple.hex wygenerowało, ale wysypało takie błędy:

avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \

--change-section-lma .eeprom=0 -O ihex simple.elf simple.eep /bin/sh: avr-objcopy: command not found make.exe: [simple.eep] Error 127 (ignored)

Creating Extended Listing: simple.lss avr-objdump -h -S simple.elf > simple.lss /bin/sh: avr-objdump: command not found make.exe: *** [simple.lss] Error 127

Wcześniej parę plików musiałem pokopiować między katalogami, by znajdywał te pliki. Te mimo kopiowania nie znajduje, albo , źle to rozumie.

Do simple.c dorzuciłem instrukcję zapalającą diodę na jednym porcie i po wczytaniu programu do procka dioda się zapala, więc chyba dobrze się skompilował. Więc w czym może być problem? W dzielnikach napięcia? W kwarcu? W programie (konfiguracji itp)?

Za pomoc bardzo dziękuję, nie chcę zbytnio grzebać w podłączeniach, by LCD nie spalić.

Pozdrawiam

Reply to
SRB
Loading thread data ...

Na mój gust, to zegar może być pierwszym problemem. Z tego co pisze na stronie, to czasy przy inicjalizacji muszą być dosyć ściśle zachowane, więc jak nie zmieniłeś nigdzie w kodzie, że teraz zegar jest inny, to to będzie pierwszym poważnym błędem.

Ze strony forum niemieckiego na którym dosyć ostro walczą ludzie z tym wyświetlaczem, mówią że można wyświetlacz zasilić nawet z 3.3V, a te

1.8V też można podciągnąć do głównego zasilania. Dałeś jakieś kondensatory za tymi dzielnikami? A może zejdź na 3.3V lub mniej z całym zasilaniem i przynajmniej pozbędziesz się całego stada oporników (ale to już nie przy 16MHz).

pozdrawiam

majek

Reply to
Marek Wodzinski

Tez na to bym zwrocil uwage. Te czasy nie sa az tak krytyczne, u mnie z kwarcem 8MHz poszlo bez problemow, ale z CLK 16x mniejszym rzeczywiscie moze juz byc problem. Jednak zwrocilbym uwage na inicjalizacje SPI - moze w twoim procku wyglada ona nieco inaczej? Sprawdz to w PDFie.

Dzielniki sa ok, powinno dzialac z nimi.

Dokladnie, tez sprawdzalem to z wyzszymi napieciami i jest ok.

Reply to
T.M.F.

Marek Wodzinski napisał(a):

Dziś popołudniu podłączyłem zewnętrzny kwarc 16Mhz. Dla testów wczytałem program mrugający co sekundę diodą. Po przełączeniu na zewnętrzny kwarc, dioda przyspieszyła. Dziwne tylko, że na oko o jakieś 3-4 razy, nie o 16. Kombinowałem z różnymi ustawieniami i CKSEL i nic nie pomogło. Przy okazji zablokowałem sobie jednego procka i teraz będę musiał go odblokować. W googlach wyczytałem, że resetuje się go poprzez danie +12V na reset, ale czy tylko podpinać te 12V, czy musi być zasilany 5V normalnie?

Zwiększę napięcia na nóżkach. Do 3.3V będzie i tak daleko, ale o 0,25V podskoczy.

Pozdrawiam

Reply to
SRB

T.M.F. napisał(a):

Co do SPI, na razie jestem laik,ale już w kodzie znalazłem miejsce inicjalizacji SPI, więc pokombinuje.

Na wszelki wypadek podkręce napięcie do 2.95V, może pomoże. Docelowo chce to wrzucić na 74LVC245

Pozdrawiam i dziękuję za opinię.

Reply to
SRB

Jestes pewien, ze przelaczyles go na zewnetrzny kwarc, a nie wewnetrzny generator RC z inna czestotliwoscia?

+5V musi miec normalnie. Z tym, ze to +12V sluzy do wprowadzenia procka w tryb programowania HV (nie wszystkie to supportuja). Do tego potrzebujesz normalny programator HV.
Reply to
T.M.F.

T.M.F. napisał(a):

Właśnie tego nie jestem do końca pewien. Grzebałem w Fuse bits przy pomocy ISP Programmer, a dokładnie w CKOUT, SUT i CKSEL. W tym działającym mam CKOUT=0 SUT[1,0]=10 CKSEL=1111

Reszty nie ruszałem. Fakt, możliwe, że przestawiłem go na 4Mhz, bo to by pasowało do częstotliwości mrugnięć. Musze się jeszcze doszkolić, eksperymentując następnego proca unieruchomię, a to mój ostatni. ... Przed chwilą odlutowałem kwarca i program nie ruszył, więc chyba korzysta z niego. Może gdzieś mam dzielnik przez 4 lub przez 8 uaktywniony. Wracam do lektury.

Zobaczymy. Gdzieś sie nadziałem na opis potraktowania procka przebiegiem prostokątnym o jakiejś tam częstotliwości. Jutro będę miał więcej czasu, to go pomęczę.

Pozdrawiam

Reply to
SRB

CKSEL wyglada ok. Preskalera zakladam, ze nie ruszales? Ktorych procedur inicjalizacji uzywasz? Jestes pewien, ze do wyswietlacza, ktory posiadasz? Ja mam L2F50 i dziala to bezproblemowo. Jeszcze jedna rzecz - zmieniles stala F_CPU (plik disp.h)? Bez tego nieprawidlowo bedzie dzialac delay i moze stad problem?

Reply to
T.M.F.

SRB napisał(a):

Witam! Wreszcie znalazłem trochę czasu dziś (sesja) i wyświetlacz ruszył! :) Przyczyną był ten 0.1%, czyli kable :/ Aż wstyd się przyznać. Na razie wyświetla obraz uszkodzony, bo "He||| w|||d" (pewnie złe adresowanie pamięci, bo ostatnich znaków nie ma) i w dodatku bardzo wolno, ale to już jakiś postęp w końcu. Przynajmniej wiem, że działa.

Rano też kupiłem w Leroyu śrubokręt do komórek i podmieniłem wyświetlacz z telefonu na ten Sharpa. W komórce oryginalnie mam Epsona, czyli tego srebrnego pod spodem. Wrażenia:

- sharp na oko ma bledsze kolory

- nie równe podświetlanie, widać snopy światła od podświetlania

- kąty chyba są nieco słabsze. Wniosek, jak się da, brać Epsona, zamiast Sharpa.

Co do błędów w WinAVR, to też znalazłem prawdopodobną przyczynę. Po zainstalowaniu programu w domyślnym katalogu c:/WinAVR/ problemów z nieznajdywaniem plików niema.

Dziękuję za pomoc!

Reply to
SRB

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.