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



Teraz jest 14 lut 2025, o 23:44


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
Autor Wiadomość
PostNapisane: 11 mar 2014, o 23:34 
Offline
Użytkownik

Dołączył(a): 09 cze 2013
Posty: 34
Pomógł: 0

Witam serdecznie

od pewnego czasu stałem się posiadaczem zestawu HY-Mini STM32V i napotkałem na problem przy obsłudze wyświetlacza TFT.
Problem tyczy się ustalenia jaki kontroler wyświetlacza TFT siedzi w moim zestawie. Wraz z płytką dostałem folder, w którym przykładowy kod posiada wiele inicjalizacji dla różnych kontrolerów i wykonuje się w zależności od tego jaki device kod wysyła wyświetlacz. Magistarala danych wyświetlacza (D0...D15) jest podłączona w nieuporządkowany sposób, czyli D0 jest podpięty do PD14, D2 do E0 itd. podczas gdy wszystkie przykładowe kody działają tak, że piny danych są podpinane w uporządkowany sposób czyli D0 do PE0 , D1 do PE1 itd.
Myślałem, że nie będzie z tym problemu i napisałem kod badając na który pin został wysłany bit poprzez instrukcje if i przypisując go do zmiennej value, poniżej umieszczam kod:

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


Następnie wartosc wysłaną z rejestru 0x00 (przechowującą device kod) przypisałem do rejestru ODR GPIOA , aby miernikiem posprawdzać które piny ustawiły się na stan wysoki, a które są w stanie niskim aby w ten sposób odczytać ID.

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


Niestety ustawiły się tylko PA13 i PA15.
Postanowiłem odkręcić wyświetlacz i podłączyć go osobno kabelkami w uporządkowany sposób i wykorzystać funkcję które są załączone w przykładach. Tym razem udało mi się z czytać następującą wartość:1010 0100 0000 1000 czyli w hex A408. Przypomina to device kod sterownika SPFD5408B, z tą jednak różnicą, że tam device kod jest 5408.
Zainicjalizowałem wyświetlacz kodem dotyczącym SPFD5408 (czyli 5408) i wszystko działa dobrze.
Jednak nie dają mi spokoju dwie kwestie; pierwsza to dotycząca funkcji przeze mnie napisanych, które miały z czytywać device id warunkami if, dlaczego to nie działało i z czytywane były tylko PA14 i PA15. Druga kwestia dotyczy tej różnicy między A408 a 5408, czyli tak jakby te końcowe cztery bity zostały przesunięte o jeden w prawo (1010 a powinno być 0101).
Bardzo był bym wdzięczny jeśli ktoś rozwieje moje wątpliwości, może ktoś się spotkał z podobnym problemem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 mar 2014, o 01:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 lip 2012
Posty: 238
Pomógł: 5

Proponuje Ci żebyś połączył to jeszcze raz , ale z pominięciem wszystkich pinów od programatora , czyli tych od JTAG i SWD (PA13, PA14, PA15, PB3, PB4 ...). Oczywiście można je włączyć w tryb IO ale to jak już naprawdę zabraknie pinów wolnych :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 mar 2014, o 20:31 
Offline
Nowy

Dołączył(a): 30 wrz 2012
Posty: 15
Pomógł: 0

Cytuj:
Magistarala danych wyświetlacza (D0...D15) jest podłączona w nieuporządkowany sposób, czyli D0 jest podpięty do PD14, D2 do E0 itd. podczas gdy wszystkie przykładowe kody działają tak, że piny danych są podpinane w uporządkowany sposób czyli D0 do PE0 , D1 do PE1 itd.


Bo jest podłączony pod FSMC. Też się na to nabrałem na samym początku.
Myślę, że obrazek rozwieje wątpliwości.

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 mar 2014, o 14:35 
Offline
Użytkownik

Dołączył(a): 09 cze 2013
Posty: 34
Pomógł: 0

Dziękuję za odpowiedź :) muszę się zapoznać z tematyką FSMC. Jak tylko się z tym uporam to dam znać.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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