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



Teraz jest 25 gru 2024, o 09:10


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 33 ]  Przejdź na stronę 1, 2  Następna strona
Autor Wiadomość
PostNapisane: 14 gru 2015, o 12:09 
Offline
Użytkownik

Dołączył(a): 24 kwi 2014
Posty: 59
Pomógł: 0

Próbuję uruchomić wyświetlacz LCD I2C na bibliotece z płyty niebieskiej.
Używam układu PCF8574T
W bibliotece zmieniłem tylko prędkość na 100kHz i adres na 0x4E
linie podciągnięte do + zasilania przez 4,7Kom
Niestety efekt jak na zdjęciu
Obrazek

Obrazek

Proszę o jakieś pomysły co może być nie tak.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 12:42 
Offline
Nowy

Dołączył(a): 22 wrz 2015
Posty: 24
Pomógł: 0

Masz pewnie problem z adresem PCF8574.
Zlutuj do masy A0,A1,A2 i właściwy adres to 0x40.

Sprawdź ale chyba ten moduł I2C ma na płytce rezystory do SDA,SCL i nie potrzeba dodawać na zewnątrz, przynajmniej ja mam ten sam moduł i nie dokładam rezystorów.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 14:01 
Offline
Użytkownik

Dołączył(a): 24 kwi 2014
Posty: 59
Pomógł: 0

Zlutowałem do masy zmieniłem adres na 0x40 i zlikwidowałem zbędne rezystory. Rzeczywiście są na płytce przejściówki.
Mam goły procesor Atmega32 z kwarcem 18432000 i podłączonym wyświetlaczem
Zasilany z przetwornicy 5V
Niestety żadnych zmian.



Ostatnio edytowano 14 gru 2015, o 14:35 przez rohan, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 14:30 
Offline
Użytkownik

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

no jeżeli goły to rezystory podciągające są potrzebne :!:

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 14:52 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 02 kwi 2015
Posty: 450
Pomógł: 3

rohan napisał(a):
Próbuję uruchomić wyświetlacz LCD I2C na bibliotece z płyty niebieskiej.
Używam układu PCF8574T
W bibliotece zmieniłem tylko prędkość na 100kHz i adres na 0x4E
linie podciągnięte do + zasilania przez 4,7Kom
Niestety efekt jak na zdjęciu


Witam!
Początkowo też walczyłem z tym konwerterem, ale ostatecznie udało się go uruchomić z ustawieniami jak powyżej. Sprawdź koniecznie czy zaznaczyłeś w pliku lcd44780.h opcję wykorzystania magistari I2C:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

oraz czy prawidłowo podłączyłeś linie SCL (PC0) i SDA(PC1) dla Atmega32. Kolejną sprawą jest nierozłączność biblioteki LCD i I2C_TWI (najnowsza wersja płytki DVD) z projektu LCD_I2C_PCF8574 z BB. Celem wyświetlenia czegokolwiek na LCD musisz użyć tej biblioteki! Inne wersje (z innych projektów z BB z 2011 i z poprawkami) u mnie nie działały.
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 gru 2015, o 20:27 
Offline
Użytkownik

Dołączył(a): 11 maja 2014
Posty: 59
Pomógł: 3

Pokaż jak masz skonfigurowane piny



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 gru 2015, o 08:51 
Offline
Użytkownik

Dołączył(a): 24 kwi 2014
Posty: 59
Pomógł: 0

michal98 napisał(a):
Pokaż jak masz skonfigurowane piny

konfiguracja
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: 18 gru 2015, o 06:51 
Offline
Nowy

Dołączył(a): 25 mar 2014
Posty: 6
Pomógł: 0

spróbuj tak


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: 28 sty 2016, o 14:14 
Offline
Nowy

Dołączył(a): 27 sie 2015
Posty: 19
Lokalizacja: Usa
Zbananowany użytkownik

Pomógł: 0

Witam, Pierwsze moje pytanie na forum. Mam identyczny problem jak autor postu. Ten sam ekspander biblioteki Mirka z BB cz. II DVD. Porty ekspanadera ustawione poprawnie, lecz posiadam błędy w pliku I2c_twi.c
Procesor Atmega 644 PA taktowany zewnętrznym kwarcem 12MHz Fuse bity FF 99 FF.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Błędy w pliku i2c_twi.c
Obrazek

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

_________________
True Females



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2016, o 14:59 
Offline
Użytkownik

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

A tyle razy na forum było napisane:
pokaż zakładkę console a nie problems :!:

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2016, o 17:56 
Offline
Nowy

Dołączył(a): 27 sie 2015
Posty: 19
Lokalizacja: Usa
Zbananowany użytkownik

Pomógł: 0

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

_________________
True Females



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2016, o 21:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Jest to log z wgrywania programu do procesora oraz ustawania fuse bitów i nie ma tutaj żadnego błędu. Jest poprawny hex, więc kompilacja nie mogła zgłosić błędu.

Daj wynik z konsoli z kompilacji programu zrobionej po wcześniejszym zrobieniu clean projektu.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2016, o 21:23 
Offline
Nowy

Dołączył(a): 27 sie 2015
Posty: 19
Lokalizacja: Usa
Zbananowany użytkownik

Pomógł: 0

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

Fakt źle się trochę wyraziłem errorów żadnych nie wyrzuca, ale dlaczego mam krzyżyki czerwone przy pliku i2c_twi.c
Wejścia A0 A1 A2 zwarte mam do GND. Próbowałem już różnych adresów 0x40, 0x4E, 0x70. Wyświetlacz milczy, świeci tylko górny rząd. Już dziś nie chcę się bawić jutro podłącze sam wyświetlacz.

_________________
True Females



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 sty 2016, o 22:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Fakt źle się trochę wyraziłem errorów żadnych nie wyrzuca, ale dlaczego mam krzyżyki czerwone przy pliku i2c_twi.c
Program poprawnie ci się kompiluje. Czasami eclipse ma problemy i gubi informacje o zależnościach w plikach. Trzeba zrobić odświeżenie poprzez kliknięcie prawym klawiszem na nawie projektu w oknie Project Explorer (te z plikami po lewej stronie) i wybranie Index -> Rebuild oraz Index -> Freshen All Files.

Cytuj:
Wejścia A0 A1 A2 zwarte mam do GND. Próbowałem już różnych adresów 0x40, 0x4E, 0x70.
Nie ustawiaj w ciemno. Sprawdź jaki masz układ (litery na końcu) i zastosuj właściwy adres. Poniżej informacja o przypisanych adresach poszczególnych wersji:
Kod:
- PCF8574P / PCF8574T / PCF8574TS:
   0 1 0 0 A2 A1 A0 R/W   => 0x40 .. 0x4E

- PCF8574AP / PCF8574AT / PCF8574ATS:
   0 1 1 1 A2 A1 A0 R/W   => 0x70 .. 0x7E

Jak masz PCF8574T i A2..A0 podpięte do masy to masz adres 0x40.

Jak używasz jakiś nietypowych bibliotek do I2C (TWI) to sprawdź jak rodzaj adresu należy u Ciebie podawać - 7 bitowy czy 8 bitowy. W typowych bibliotekach (i także tych Mirka) podaje się 8 bitowy. Z czego najmłodszy bit służy do sterowania typem operacji odczyt / zapis - przy odczycie ma wartość 1 a przy zapisie wartość 0 (ale to już biblioteka przy read zamienia podawany address na (address | 0x01) i użytkownik ma nieprzejmować się tym).

Przy każdej operacji TWI (I2C) w rejestrze TWSR zwracany jest status operacji na szynie I2C. Sprawdź jaką wartość dostajesz po wysłaniu adresu poprzez TWI. Powinieneś dostać wartość 0x18. Każda inna wartość (a szczególnie 0x20) oznacza, że układ slave nie odpowiada. A to oznacza albo wysyłasz zły adres albo masz złe połączenie master - slave (w tym błędne podciągniecie na szynie).

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 paź 2016, o 17:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2013
Posty: 491
Lokalizacja: Siedlce
Pomógł: 9

Dołączam się do pytania Czy udało się kolegom uruchomić ten moduł ?
mam 2 takie moduły -

i mam ten sam problem.... i wiecie koledzy co się okazało? - ZONK
poniżej w schemacie jak powinien być połączony ekspander według biblioteki BB i jak jest połączony w powyższym module z wyjściami na wyświetlacz :shock: :cry: ech te chińczyki... :|

Obrazek
a P3 jest prawdopodobnie do rezystor 4,7k
JAK NA PONIŻSZYM SCHEMACIE
Obrazek

i w moim przypadku kolego wystarczyło zrobić zmienić adres po zwarciu A0;A1;A2 DO gnd:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


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


A poniżej efekt :)



Poprawiłem ci to YouTube -- zobacz sobie jak się to wkleja :) --> SunRiver

_________________
Ucz się ucz ,bo po to tutaj jesteś...



Ostatnio edytowano 4 paź 2016, o 20:19 przez RadekB86, łącznie edytowano 4 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 paź 2016, o 19:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 mar 2015
Posty: 144
Pomógł: 2

Brawo RadekB86, obserwuję ten wątek i nareszcie dostrzegam konkretny głos.

Od sprawdzenia połączeń trzeba było jak widać zacząć, tym bardziej, że te "chińskie" płytki są fajne, bo tanie, ale do schematów trzeba się dokopywać.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 08:44 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

Mam podobny problem A0,A1,A2 nie podłączone do masy adres 0x4E jest poprawny, bo programowo wł i wy podświetlanie. Deklaracje pin LCD poprawne i sprawdzone RS 0, RW 1, E 2, LED 3, D4 4, ...D7 7. Używam AS7 i AtmelICE, zdeklarowałem F_CPU w symbolach. Kwarc 11059200 na zestawie ATB 1.04b. Po zaprogramowaniu cisza. Programowo wł/wy podświetlenie led ale wygląda ma to, że transmisja I2C nie działa prawidłowo. Kompilacja przechodzi prawidłowo.
Wszystkie wyjścia konwertera sprawdziłem miernikiem i jestem pewien co do podłączenia.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 21:36 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

zmiana prędkości transmisji I2C też nic nie przynosi...
( ...lcd_LED( a & 0x01 ); // migotanie podświetlenia LCD co 0,5 s...) miganie wyświetlaczem z pliku main.c też nie działa ale działa taki zapis
lcd_LED(1);
_delay_ms(500);
lcd_LED(0);
_delay_ms(500);
lcd_LED(1);
wyświetlacz wtedy miga.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 21:40 
Offline
Nowy

Dołączył(a): 17 mar 2014
Posty: 17
Lokalizacja: Opole
Pomógł: 0

Gdzie kupiłeś pcf8574?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 21:47 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

kupiłem moduł do LCD z polskiego sklepu internetowego od TELMAL

Obrazek


https://obrazkiforum.atnel.pl/4138/c034c ... 4c4530.jpg

to jest schemat. układ ma podciąganie do lini SDA SCL



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 21:52 
Offline
Nowy

Dołączył(a): 17 mar 2014
Posty: 17
Lokalizacja: Opole
Pomógł: 0

A adres przy odłączonych pinach a0, a1, a2 nie będzie przypadkiem 0x20?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 21:59 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

nie... przy takim adresie nie działa.... przy A0...A2 nie podłączonych do GND jest 4E chociaż noty katalogowe PHILIPSA wskazują na to , że powinno być 2E



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 22:09 
Offline
Nowy

Dołączył(a): 17 mar 2014
Posty: 17
Lokalizacja: Opole
Pomógł: 0

a przepraszam. późno jest i wymyśliłem sobie tam zera zamiast jedynek. w sumie powinno być raczej 0x27 bo adres bitowy jest 0100111



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 22:12 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

na takim adresie nie pójdzie bo jest przesunięcie bitowe jak to we wcześniejszych postach ktoś napisał. Chyba w arduino taki adres chodzi.
na adrersie 4E mi działa ale tylko miga wyświetlacz. Nie ma tak jak by sterowania RW RS E



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 paź 2016, o 22:41 
Offline
Nowy

Dołączył(a): 17 mar 2014
Posty: 17
Lokalizacja: Opole
Pomógł: 0

co do przesunięcia bitowego to racja, 0x4E, Już śpię. nie wiem. Sprawdź czy przypadkiem gdzieś nie styka, lub styka w złym miejscu, pokręć potencjometrem kontrastu. Jaki masz program w c napisany? Mirka? Własny?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 paź 2016, o 06:20 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

Wszystkie połączenia są ok. Mam wgrany do testów program Pana Mirka. Potencjometrem kręciłem i nic. Muszę sprawdzić jeszcze czy prawidłowo działa przesunięcie do starszej połwki bajtu, chyba że procedura inicjalizacyjna LCD źle działa, bo tak jak mówiłem programowo przez I2C mogę sterować miganiem wyświetlacza. W bibliotece Mirka deklaracja pinów expandera była inna.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 paź 2016, o 22:04 
Offline
Nowy
Avatar użytkownika

Dołączył(a): 25 lip 2014
Posty: 7
Pomógł: 0

znalazłem usterkę :idea: ....wszystko działa...okazało się, że LCD (NOWY :shock: ) jest uszkodzony. Po nitce do kłębka... ale to nic przypomniałem sobie przynajmniej działanie LCD i przeanalizowałem kod :lol:



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 paź 2016, o 22:24 
Offline
Nowy

Dołączył(a): 17 mar 2014
Posty: 17
Lokalizacja: Opole
Pomógł: 0

No, ja też co nieco sobie przypomniałem. :)

Wysłane z mojego lenovo k5



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 28 wrz 2018, o 21:39 
Offline
Nowy

Dołączył(a): 20 wrz 2018
Posty: 17
Pomógł: 0

Witajcie
Miałem w planie na dzisiaj pobawić się w klikanie przekaźnikami za pomocą PCF8574.
Zakupiłem części do stykówki , ale w ręce wpadł mi chińczyk pokazany wyżej.
Ależ łatwe były podłączenia względem stykówki. Zakładałem , że równie szybko wykonam resztę prac w ramach ćwiczenia.
No i było jak zwykle.
Moja pycha została ukarana.

Zgodnie z poradnikiem Mirka o schieldzie IO (ale bez niej i to na chińskim układzie) , wykonałem jak w poradniku. I ... nic.
Kompilacje na LCD z uP pracowały poprawnie a program z twardego BB (rozd 8. ) LCD_TWI_PCF8574 nie chciał pracować pokazując jak na zdjęciach powyżej zapalony górny rząd wyświetlacza.
Przez głowę przeszły mi wszelkie myśli. Wylałem pomyje gdzie się dało.

Postanowiłem , zę sam spróbuję znaleźć problem. I się udało

I przed chwilą ... po którym tam wgraniu softu zadziałało.
Zasadniczo od 15tej do 22iej kręciłem się w kółko.
Przedostatnią rzeczą którą zrobiłem, było podłączanie przewodów od D4-D7 do przejściówki w inne piny (na zasadzie - a nóz może chińczyki coś zmieniły w swoim FC-113) . Dosłownie po pierwszej zmianie pojawiły się dwa znaki, potem więcej a na końcu wszystkie. Oczywiście były to znaki predatora plus pełna tablica dowolnie zapalonych segmentów. Ale czułem, że jestem bliżej, bo do mnie gada, nie szkodzi że po chińsku.
Po ponownym poprawnym podłączeniu wszystko zadziałało poprawnie.
Być może problemem na cały dzień były jakieś stany nieustalone świeżo uruchomionego układu.
A może coś innego niewiem, sprawdzałem wszystko o czym napisano na tym forum w około 12tu watkach.
Ten jest dwunasty który otworzyłem.

Oryginalnego schelda i kilka dodatkowych mam zamiar nabyć wkrótce.

------------------------ [ Dodano po: 7 minutach ]

Po takim dniu można nieco stracić pewność siebie.
Celem moim było zapalić diody za pomocą tego PCFa (a dokładnie przekaźniki za pomocą ULN).
Jeżeli macie jakąś podpowiedź dla mnie to byłbym wdzięczny.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 paź 2018, o 20:21 
Offline
Nowy

Dołączył(a): 20 wrz 2018
Posty: 17
Pomógł: 0

Schelda IO nabyłem.
Ale i bez niego a tylko na samym chińczyku już wysyłam ciągle dane przez PCF8574.
Było to prostsze niż początkowo myślałem.
Pomocnym był Mirka poradnik w kurtce. Chyba jedyny taki na mirkowym kanale YT.
Na 8 diód wysyłam sekundnik. Bo czemu nie - w ramach ćwiczeń.
Aż miło jak się ledy gasną i się zapalają.
Kolejna sprawność zaliczona :D
Teraz zamiast sekundnika chcę wysyłać wartości z tabeli.



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: 33 ]  Przejdź na stronę 1, 2  Następna strona

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO