RTV forum PL | NewsGroups PL

Jak podłączyć pamięć I2C do ATmega8 dla wyświetlacza graficznego?

atmega i lcd + pamiec

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Jak podłączyć pamięć I2C do ATmega8 dla wyświetlacza graficznego?

Goto page Previous  1, 2, 3, 4, 5  Next

Grzegorz Niemirowski
Guest

Tue Jul 23, 2013 2:00 pm   



wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Quote:
teraz jest tak, ze dane so na D a sterowanie na C...atmega32 oczywiscie.

Ale co Ci mamy powiedzieć bez kodu źródłowego? Z tego, że coś jest na C a
coś na D nic jeszcze nie wynika. Masz mieć kod poprawnie implementujący
protokół komunikacji z wyświetlaczem. Nie gwarantuję, że komuś będzie się
chciało na grupie ten kod analizować (nie wiem jak skomplikowana jest
komunikacja, bo nie używałem tego wyświetlacza), ale bez kodu to na pewno
nikt Ci nie powie co masz źle.
I tak jaka pisałem, możesz przecież poprosić tego gościa z elektrody o
gotowca. Chyba że już się do niego zwróciłeś i Ci odmówił?

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 11 days, 6 hours, 40 minutes and 20 seconds

wchpikus
Guest

Tue Jul 23, 2013 2:01 pm   



W dniu 2013-07-23 15:53, wchpikus pisze:
Quote:
W dniu 2013-07-23 15:47, wchpikus pisze:
Chyba uwalony mam ten wyswietlacz, mam jakies glupie paski na ekranie,
za chiny nie moge nic dobrze wyswietlic..

Wyglada to tak:
http://www.fotosik.pl/pokaz_obrazek/6038c3d37e8d54d3.html

Polaczenia sprawdzone, na liniach pojawiaja sie dane, wiec chyba nie tak
cos z wyswietlaczem..
Mial ktos podobnie?


teraz jest tak, ze dane so na D a sterowanie na C...atmega32 oczywiscie.

Kod dokladnie taki jak ten, tak samo podlaczone:)

http://www.a-phys.eng.osaka-cu.ac.jp/hosoda-g/site1/GLCD_DMF5001_example2.bas

Grzegorz Niemirowski
Guest

Tue Jul 23, 2013 2:08 pm   



wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Quote:
Kod dokladnie taki jak ten, tak samo podlaczone:)
http://www.a-phys.eng.osaka-cu.ac.jp/hosoda-g/site1/GLCD_DMF5001_example2.
bas

Config Graphlcd = 240 * 128
u Ciebie chyba powinno być 240*64. Poza tym ten kod nie jest na ATmega32.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 11 days, 6 hours, 50 minutes and 58 seconds

wchpikus
Guest

Tue Jul 23, 2013 2:45 pm   



W dniu 2013-07-23 16:08, Grzegorz Niemirowski pisze:
Quote:
wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Kod dokladnie taki jak ten, tak samo podlaczone:)
http://www.a-phys.eng.osaka-cu.ac.jp/hosoda-g/site1/GLCD_DMF5001_example2.

bas

Config Graphlcd = 240 * 128
u Ciebie chyba powinno być 240*64. Poza tym ten kod nie jest na ATmega32.

Oczywiscie, poprawiony tylko na 32 i 240x64..te dwie linijki sa inne,

chodzi raczej o to ze jesli juz cos jest nie tak, to nie powinno byc
takich dziwnych rzeczy.rozumiem krzaki, jesli predkosci lub czasy sie
nie zgadzaja..

wchpikus
Guest

Wed Jul 24, 2013 12:26 pm   



Ok doszedlem do tego ze:
Wyswietlacz wyswietla ale dziwnie..
mam 30 kolumn i 8 linii..
wysylam do niego znak "1" a wyswietla tak:
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|
|1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1| |1|



jak wysle "0" to jest
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|
|0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0| |0|

Nie mam juz pomyslow, sprawdzalem tez inna konfiguracje, reset do + na
stale, FS odpinany...sprawdzone kilakrotnie polaczenia, wygenerowalem na
zmiane stany portow na wszyskich liniacz danych i sterowania by zobaczyc
czy dochodza sygnaly..wyglada ok..
moze jest jakos uszkodzony?

Grzegorz Niemirowski
Guest

Wed Jul 24, 2013 12:50 pm   



wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Quote:
Nie mam juz pomyslow, sprawdzalem tez inna konfiguracje, reset do + na
stale, FS odpinany...sprawdzone kilakrotnie polaczenia, wygenerowalem na
zmiane stany portow na wszyskich liniacz danych i sterowania by zobaczyc
czy dochodza sygnaly..wyglada ok..
moze jest jakos uszkodzony?

Możliwe, mi się jeden LCD niedawno uszkodził. Spróbuj skombinować drugi, np.
pożyczyć jak masz znajomego elektronika. Nie wiem ile kosztuje taki LCD, ale
może taniej wyjdzie kupić drugi niż poświęcać Twój czas.
A jak testujesz, to na minimalnym kodzie, co wyświetla jeden piksel, łatwiej
się szuka problemu.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 12 days, 5 hours, 32 minutes and 20 seconds

wchpikus
Guest

Wed Jul 24, 2013 1:03 pm   



W dniu 2013-07-24 14:50, Grzegorz Niemirowski pisze:
Quote:
wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Nie mam juz pomyslow, sprawdzalem tez inna konfiguracje, reset do + na
stale, FS odpinany...sprawdzone kilakrotnie polaczenia, wygenerowalem
na zmiane stany portow na wszyskich liniacz danych i sterowania by
zobaczyc czy dochodza sygnaly..wyglada ok..
moze jest jakos uszkodzony?

Możliwe, mi się jeden LCD niedawno uszkodził. Spróbuj skombinować drugi,
np. pożyczyć jak masz znajomego elektronika. Nie wiem ile kosztuje taki
LCD, ale może taniej wyjdzie kupić drugi niż poświęcać Twój czas.
A jak testujesz, to na minimalnym kodzie, co wyświetla jeden piksel,
łatwiej się szuka problemu.

problem jest w tym, ze cokolwiek chce wyswietlic mam kolumny:(

wyglada na padake..szkoda, zakupie drugi

Grzegorz Niemirowski
Guest

Wed Jul 24, 2013 1:06 pm   



wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
Quote:
problem jest w tym, ze cokolwiek chce wyswietlic mam kolumny:(
wyglada na padake..szkoda, zakupie drugi

Ewentualnie możesz skorzystać z biblioteki napisanej w C. Miałem kiedyś
przypadek wyświetlacza, któremu się te Bascomowe funkcje nie podobały, a
działał ze znalezioną w necie biblioteką napisaną w C. Pewnie był wybredny
co do czasów sygnałów czy coś. Oczywiście mógł też być błąd po mojej
stronie, ale jak mi zadziałało z C to już nie dociekałem.

--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 12 days, 5 hours, 48 minutes and 14 seconds

wchpikus
Guest

Wed Jul 24, 2013 4:14 pm   



W dniu 2013-07-24 15:06, Grzegorz Niemirowski pisze:
Quote:
wchpikus <wchpikus@wytnijto.wp.pl> napisał(a):
problem jest w tym, ze cokolwiek chce wyswietlic mam kolumny:(
wyglada na padake..szkoda, zakupie drugi

Ewentualnie możesz skorzystać z biblioteki napisanej w C. Miałem kiedyś
przypadek wyświetlacza, któremu się te Bascomowe funkcje nie podobały, a
działał ze znalezioną w necie biblioteką napisaną w C. Pewnie był
wybredny co do czasów sygnałów czy coś. Oczywiście mógł też być błąd po
mojej stronie, ale jak mi zadziałało z C to już nie dociekałem.

Szukam wlasnie takiej, a moze znajdzie sie caly kod testowy..


wchpikus
Guest

Thu Jul 25, 2013 9:41 am   



Znalazlem cos takiego:
http://chomikuj.pl/tomcio_pl/Elektronika/Biblioteki+dla+LCD+graficznych/T6963C

Zmienilem porty i nadal to samo..zamawiam drugi wyswietlacz:(

wchpikus
Guest

Thu Jul 25, 2013 10:42 am   



W dniu 2013-07-25 11:41, wchpikus pisze:
Quote:
Znalazlem cos takiego:
http://chomikuj.pl/tomcio_pl/Elektronika/Biblioteki+dla+LCD+graficznych/T6963C


Zmienilem porty i nadal to samo..zamawiam drugi wyswietlacz:(

Z tej strony tez nie dziala:
http://en.radzio.dxp.pl/t6963/

dokladnie taki sam objaw..ehh..
musialem go jakos uwalic.

Sylwester Łazar
Guest

Sat Jul 27, 2013 8:42 pm   



Quote:
I dlatego dostałeś już radę, żeby użyć naprostszej kompresji:
http://www.binaryessence.com/dct/en000057.htm

Chmura, czy słońce z jednolitym tłem powinny się ładnie kompresować.

Właśnie ukończyłem obsługę GLCD 480x272.
Wnioski mam takie:
1) Użyłem 32 bitowego procesora z pamięcią 0,5MB i 128kB RAM
2) Wyświetlałem 3 rodzaje grafiki:
a) 480x272 24 bity na pixel
b) 240x136 24 bpp
c) 240x136 1 bpp monochromatyczna i tylko czarno-biała.

Najbardziej czasochłonne okazało się wyświetlanie grafiki monochromatycznej,
ale obraz zajmował najmniej miejsca. W jednym słowie 32-bitowym są 32
pixele.

Kolory 24bpp kodowałem tak, że w trzech słowach 32-bitowych mam 4 pixele.
Podczas wyświetlania mogę nawet coś jeszcze wcisnąć w NOPy.

Przy wyswietlaniu 1 bpp nie moge nic już wcisnąć, bo wyłuskanie bitu, jego
przesunięcie i odpowiednie wystawienie 24 bitów na dwóch portach zajmuje
czas na max.

Piszę w asm.
Linia trwa od 40 do 80 us

Gdybym zastosował kompresję 1 Bit RLE czas byłby silnie uzależniony od
zawartości.
Niektóre grafiki są specjalnie tak kodowane, aby "1" i "0" były w miarę
równomiernie rozłożone.
W związku z powyższym długości trwania poszczególnych linii dość znacznie by
się różniły
w ramach jednego obrazu.
Nie sądzę, że byłby to duży problem, ale nie sprawdzałem w praktyce.
Myślałem o tym kodowaniu, ale właśnie miałem wyświetlać kody QR, gdzie ta
metoda kompresji nic nie da, a one akurat dużo pamięci nie zabierały.
Dekodowanie to kilka instrukcji tcy=12,5 ns więcej na pixel.


--
-- .
pozdrawiam
Sylwester Łazar
http://www.alpro.pl Systemy elektroniczne.
http://www.rimu.pl -oprogramowanie do edycji schematów
i projektowania PCB.

Zbych
Guest

Mon Jul 29, 2013 6:35 am   



W dniu 27.07.2013 22:42, Sylwester Łazar pisze:
Quote:
I dlatego dostałeś już radę, żeby użyć naprostszej kompresji:
http://www.binaryessence.com/dct/en000057.htm

Chmura, czy słońce z jednolitym tłem powinny się ładnie kompresować.

Właśnie ukończyłem obsługę GLCD 480x272.
Wnioski mam takie:
1) Użyłem 32 bitowego procesora z pamięcią 0,5MB i 128kB RAM
2) Wyświetlałem 3 rodzaje grafiki:
a) 480x272 24 bity na pixel
b) 240x136 24 bpp
c) 240x136 1 bpp monochromatyczna i tylko czarno-biała.

Najbardziej czasochłonne okazało się wyświetlanie grafiki monochromatycznej,
ale obraz zajmował najmniej miejsca. W jednym słowie 32-bitowym są 32
pixele.

Kolory 24bpp kodowałem tak, że w trzech słowach 32-bitowych mam 4 pixele.
Podczas wyświetlania mogę nawet coś jeszcze wcisnąć w NOPy.

Przy wyswietlaniu 1 bpp nie moge nic już wcisnąć, bo wyłuskanie bitu, jego
przesunięcie i odpowiednie wystawienie 24 bitów na dwóch portach zajmuje
czas na max.

Piszę w asm.
Linia trwa od 40 do 80 us

W trybie 24bpp i 1bpp lepiej by się chyba sprawił cortex-M3/4 z
zewnętrzną szyną do pamięci. Można by połączyć trzy mechanizmy:
mapowanie LCD na adresy w zewnętrznej pamięci, adresowanie bitowe w
SRAMie i DMA. I miałbyś czas na coś więcej niż tylko wyświetlanie obrazu.

Quote:
Gdybym zastosował kompresję 1 Bit RLE czas byłby silnie uzależniony od
zawartości.

W wątku była mowa o wyświetlaczu z _własną_ pamięcią i kompresji
obrazów, żeby wlazły do flasha.

Sylwester Łazar
Guest

Mon Jul 29, 2013 8:04 am   



Quote:
W trybie 24bpp i 1bpp lepiej by się chyba sprawił cortex-M3/4 z
zewnętrzną szyną do pamięci. Można by połączyć trzy mechanizmy:
mapowanie LCD na adresy w zewnętrznej pamięci, adresowanie bitowe w
SRAMie i DMA. I miałbyś czas na coś więcej niż tylko wyświetlanie obrazu.

Ten też ma pamięć zewnętrzną PARALLER MASTER PORT i 4 kanały DMA, ale
zrobiłem już płytkę tak, że nie da się użyć PMP.
Poza tym jest tylko 16-bitów danych przy tym rodzaju transferu, a ja mam 24
bity.
Tak więc musiałbym jeszcze te 8 bitów też obsłużyć przez DMA i
zsynchronizować.
A może samo DMA tylko zapis do portu?
Czy w tym CM4 to można wysłać 24 bity na raz i wpisać ?
No właśnie, ten 32MX/MIPS wydaje się, że nie ma zwykłego pośredniego,
adresowania bitowego.


Czasu mi starcza na wszystko inne ze spokojem, bo w czasie gdy nie nadaje
danych bity zegarowe impulsów H iV są wysyłane sprzętowo, a obsługa klawiszy
i przygotowanie obrazu
statycznego to niewiele mi teraz zajmuje.
S.

Quote:
Gdybym zastosował kompresję 1 Bit RLE czas byłby silnie uzależniony od
zawartości.

W wątku była mowa o wyświetlaczu z _własną_ pamięcią i kompresji
obrazów, żeby wlazły do flasha.
Tak wiem. Autor wątku musiałby spróbować zamienić grafikę w arkuszu

kalkulacyjnym chociaż, aby sprawdzić,
czy dla niego ta kompresja wystarcza. Myślę, że będzie O.K., ale tylko myślę
Smile

Zbych
Guest

Mon Jul 29, 2013 8:07 am   



W dniu 29.07.2013 10:04, Sylwester Łazar pisze:
Quote:
W trybie 24bpp i 1bpp lepiej by się chyba sprawił cortex-M3/4 z
zewnętrzną szyną do pamięci. Można by połączyć trzy mechanizmy:
mapowanie LCD na adresy w zewnętrznej pamięci, adresowanie bitowe w
SRAMie i DMA. I miałbyś czas na coś więcej niż tylko wyświetlanie obrazu.

Ten też ma pamięć zewnętrzną PARALLER MASTER PORT i 4 kanały DMA, ale
zrobiłem już płytkę tak, że nie da się użyć PMP.
Poza tym jest tylko 16-bitów danych przy tym rodzaju transferu, a ja mam 24
bity.
Tak więc musiałbym jeszcze te 8 bitów też obsłużyć przez DMA i
zsynchronizować.
A może samo DMA tylko zapis do portu?
Czy w tym CM4 to można wysłać 24 bity na raz i wpisać ?

Nie da się. Dopiero jak napisałem posta, to przypomniałem sobie że
wyświetlacze muszą dostać wszystkie kolory jednocześnie a nie np. 3 *
8-bitów.
Trzeba by ograniczyć paletę kolorów do 16 bitów.

Quote:
No właśnie, ten 32MX/MIPS wydaje się, że nie ma zwykłego pośredniego,
adresowania bitowego.


Goto page Previous  1, 2, 3, 4, 5  Next

elektroda NewsGroups Forum Index - Elektronika Polska - Jak podłączyć pamięć I2C do ATmega8 dla wyświetlacza graficznego?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map