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



Teraz jest 5 gru 2024, o 01:46


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 46 ]  Przejdź na stronę Poprzednia strona  1, 2
Autor Wiadomość
PostNapisane: 7 gru 2015, o 12:14 
Offline
Nowy

Dołączył(a): 04 lis 2015
Posty: 11
Pomógł: 0

Też miałem taki problem ale stwierdziłem że pewnie coś źle robię i zająłem się wyświetlaczem LED i wgrywaniem fusbitów do procesora gdy znów wróciłem do lcd i powtykałem wszystko tak samo jak za pierwszym razem. Zaskoczyło i chodzi do tej pory. Nie wiem co było u mnie ale naprawiło się samo tak jak u kolegi który założył temat.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 gru 2015, o 15:01 
Offline
Nowy

Dołączył(a): 24 lis 2015
Posty: 2
Pomógł: 0

No właśnie z tą myślą że coś źle podłączam/podpisuje w .h robiłem to kilka razy i ciągle nic, jakbym zasilał jedynie LCD i podświetlenie, a z Atmegi jakby było brak odzewu.

EDIT// Próbowałem z trzema różnymi mikro-kontrolerami i dwiema płytkami stykowymi, dalej prostokąty.. Zna ktoś jakiś sposób na sprawdzenie LCD? Może podczas lutowania pinów coś się uszkodziło? Czy częstotliwość 8Mhz wystarcza? Już naprawdę nie wiem o co może chodzić.

EDIT2// Podłączyłem diodę testową, i po połączeniu całego układu do zasilania, odłączam pin E od wyświetlacza i podłączam do diody. Czyli po prostu po inicjalizacji LCD sprawdzam stan pinu E i jest on ustawiony jako wysoki. LCD dalej nie reaguje, czy stan wysoki na E po inicjalizacji jest ok? Może program zawiesza się w którymś momencie? Inne funkcje w main.c zakomentowałem tak, żeby program jedynie inicjował LCD a potem wisiał w while(1). Brak pomysłów



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 gru 2015, o 09:01 
Offline
Nowy

Dołączył(a): 04 lis 2015
Posty: 11
Pomógł: 0

Może wyświetlacz jest padnięty. Jak masz jakieś inne urządzenie które na takim wyświetlaczu działa to sprawdź tam. Ale ja tam specem to nie jestem i moje rady w tej dziedzinie to tak jak by ślepy ślepego prowadził :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 mar 2016, o 16:01 
Offline
Nowy

Dołączył(a): 16 mar 2016
Posty: 8
Pomógł: 0

Witam,

Pierwszy post i też pozwolę sobie odkopać temat problemów z wyświetlaczem LCD.

Realizuje kod na podstawie ćwiczenia z blue book'a.

Niestety wszystkie próby kończą się wyświetleniem kwadratów w pierwszej linii wyświetlacza (po ustawieniu odpowiedniego kontrastu na potencjometrze).

Dla sprawdzenia wyświetlacza, wgrałem również plik *.hex zamieszczony w tym temacie przez użytkownika Ryszard56. Niestety rezultat jest taki sam jak w przypadku mojego kodu (mamy takie samo podłączenie, PORTA przeniesiony od góry na goldpiny wyprowadzone do wyświetlacza).

Poniżej ustawienie fuse bitów :

Obrazek

Kolejną specyficzną sytuacją jest kontrola podświetlenia. Przy próbie wysterowania odpowiedniego wyjścia na płytce 1.04b, podświetlenie działa w w trybie "dyskoteki".

Spróbuje jeszcze dzisiaj podłączyć pin podświetlenia bezpośrednio do VCC.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 mar 2016, o 17:07 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27315
Lokalizacja: Szczecin
Pomógł: 1041

d3tox napisał(a):
Pierwszy post i też pozwolę sobie odkopać temat problemów z wyświetlaczem LCD.

Szczególnie jak pierwszy post i nowy problem to proszę zakładać NOWY wątek a nie doklejać się do wykopalisk ok ? to tak na przyszłość bo powstaje bajzel na forum i na końcu taki mega wątek to nie wiadomo jakiego problemu dotyczy. Forum jest po to żeby zakładać nowe wątki a nie - jak niektórzy myślą - wiesz - założyć jeden wątek na forum i każdy będzie się dopisywał

d3tox napisał(a):
Realizuje kod na podstawie ćwiczenia z blue book'a.

To może jak masz problemy z przepisywaniem z Bluebooka a widać po opisie, że masz - to może jednak zajrzyj na DVD/Pendrive dołączony do książki i tam masz pan gotowy działający kod źródłowy - tylko może jeszcze przeczytaj dokładnie rozdział z książki o LCD bo tam jest napisane nie tylko jak tworzyć sobie bibliotekę do LCD ale też jak ją konfigurować ... tymczasem ty ani słowa nie napisałeś o tym jak podłączyłeś sobie LCD (do jakich pinów) i jak skonfigurowałeś w programie - za to ładujesz jakiś dziwny czyjś tam HEX ... to już jest dla mnie kompletnie niezrozumiałe

d3tox napisał(a):
Kolejną specyficzną sytuacją jest kontrola podświetlenia. Przy próbie wysterowania odpowiedniego wyjścia na płytce 1.04b, podświetlenie działa w w trybie "dyskoteki".

Nie sądzisz ... pomyśl nie sądzisz - że zadając takie pytania warto pokazać chociaż fragment swojego kodu jak ty to robisz żeby móc pokazać gdzie masz babole ? czy uważasz może że lepiej jak wszyscy będą zgadywali co źle robisz ?

d3tox napisał(a):
Spróbuje jeszcze dzisiaj podłączyć pin podświetlenia bezpośrednio do VCC.

Od razu trzeba było spróbować bo to podstawowy test żeby zobaczyć, że podświetlenie działa poprawnie. Gdyby tu nie działało i coś mrugało to wtedy możnaby podejrzewać np wyświetlacz, ale jeśli jest ok to znaczy że z kolei coś masz źle w kodzie. A zatem taki test to PODSTAW PODSTAW

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2016, o 19:57 
Offline
Nowy

Dołączył(a): 16 mar 2016
Posty: 8
Pomógł: 0

Uwagi na temat tworzenia nowych postów jak i pozostałe przyjmuje z pokorą.

Problem z podświetleniem okazał się problemem błahym. Po podłączeniu bezpośrednio do VCC, wszystko działało bez zarzutu. Po ponownym połączeniu do pinu uC również. Prawdopodobnie połączenie było zbyt "luźne".

Wracając do problemu z wyświetleniem tekstu. Spróbowałem pliku wsadowego dołączonego do płyty DVD. Na wyświetlaczu również widać jedynie kwadraty.

Podłączenie mam wykonane w taki sposób :

Kod:
// Data bits declaration
#define LCD_DDR DDRA
#define LCD_PORT PORTA
#define LCD_PIN PINA
#define LCD_BACK (1<<PA7)
#define LCD_D7 (1<<PA6)
#define LCD_D6 (1<<PA5)
#define LCD_D5 (1<<PA4)
#define LCD_D4 (1<<PA3)
#define LCD_BF LCD_D7

Kod:
// Control bits
#define LCD_DDR_CONTROL DDRA
#define LCD_PORT_CONTROL PORTA
#define USE_RW 1 // 0 - RW pin connected do GND
#define LCD_E (1<<PA2)
#define LCD_RW (1<<PA1)
#define LCD_RS (1<<PA0)


Zworka RW pod wyświetlaczem połączona jest do uC.

Pliki projektu w załączniku. Celem programu było przetestowanie funkcji inicjalizującej wyświetlacz oraz wysłanie prostego tekstu :

Kod:
int main(void)
{
   char tab[] = "Test Text !";
   LCD_init();
   lcd_string(tab);
   
    while (1)
    {

    }
}


Analizuje obecnie funkcja po funkcji porównując kod z DVD do funkcji wykorzystanych w swojej wersji.



Ostatnio edytowano 26 mar 2016, o 20:13 przez d3tox, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2016, o 20:04 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27315
Lokalizacja: Szczecin
Pomógł: 1041

wiesz zdecyduj się może - jeśli chcesz sprawdzić czy działa ci i zestaw i LCD to najpierw odpal to na przykładzie z DVD. A ty piszesz że na kodzie z DVD masz kwadraty i do analizy dajesz swój kod ? Jaki jest tego cel ? Jak chcesz rozwiązać problem zadając sobie równanie z jeszcze większą ilością niewiadomych ?

To tak samo jak z tym podświetleniem co ci szwankowało, nie wziąłeś pod uwagę, że możesz mieć podobny kabelek np na którejś linii do LCD ...

Ja nie mam na tym etapie czasu na analizę kodu jeśli tobie nie chce działać na początek to co jest pewne na 100% czyli kod z DVD. Zacznij od niego bo wtedy prędzej będzie można wyeliminować jakieś kolejne babole sprzętowe albo nawet czy coś jest nie tak z wyświetlaczem ....

ale moim zdaniem skoro widać rząd prostokącików to z wyświetlaczem jest OK ... ty zaś chyba coś źle robisz

więc jak mówię - na początek pokaż fragment pliku *.h z DVD z konfiguracją pinów jakich używasz

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2016, o 20:15 
Offline
Nowy

Dołączył(a): 16 mar 2016
Posty: 8
Pomógł: 0

Z DVD używam takiej konfiguracji :

Kod:
// tu konfigurujemy port i piny do jakich podłączymy linie D7..D4 LCD
#define LCD_D7PORT  A
#define LCD_D7 6
#define LCD_D6PORT  A
#define LCD_D6 5
#define LCD_D5PORT  A
#define LCD_D5 4
#define LCD_D4PORT  A
#define LCD_D4 3


// tu definiujemy piny procesora do których podłączamy sygnały RS,RW, E
#define LCD_RSPORT A
#define LCD_RS 0

#define LCD_RWPORT A
#define LCD_RW 1

#define LCD_EPORT A
#define LCD_E 2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2016, o 20:16 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2587
Pomógł: 128

Wklej fotkę jak to masz podłączone.

Sent from my mobile.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 26 mar 2016, o 20:16 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27315
Lokalizacja: Szczecin
Pomógł: 1041

Kod się kompiluje poprawnie ? nie ma żadnych warningów ? Sprawdziłeś przewody połączeniowe ? jeśli nie to wymień za jednym razem wszystkie od LCD

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 14:42 
Offline
Nowy

Dołączył(a): 16 mar 2016
Posty: 8
Pomógł: 0

Kod z DVD kompiluje się bez warningów, przewody wymienione i sytuacja wyglądała tak samo.

Przez przypadek jednak zadziałało... mianowicie :

Płytka jest zasilana przez port USB. Dodatkowo cały czas miałem podpięty zewnętrzny programator ISP.

Kiedy go odpiąłem kwadraty zamieniły się w tekst z przykładu. Jeżeli pozostaje wpięty tekst ginie... .



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 16:41 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27315
Lokalizacja: Szczecin
Pomógł: 1041

czyli co? Jednak wyświetlacz LCD podłączałeś fizycznie do portu B ? tak ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 17:07 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 sie 2013
Posty: 3797
Lokalizacja: Grudziądz
Pomógł: 143

A moze jtag wlaczony w fusebit atmegi?

Namazane ze smarta.

_________________
Usługi druku przestrzennego - www.drumik.pl



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 17:50 
Offline
Nowy

Dołączył(a): 16 mar 2016
Posty: 8
Pomógł: 0

Wyświetlacz podłączony jest do PORT-u A tak jak wcześniej wklejałem kod.

Korzystam z programatora ISP firmy SIBIT.
Według ich instrukcji :

Cytuj:
JP2 - zworka POWER. Zworka założona - zasilanie programatora z USB
komputera. W tym przypadku pin VCC programatora jest pinem wyjściowym
z którego można zasilić układ programowany. Wysokość napięcia na pinie
VCC zależy od komputera i może zawierać się w przedziale 4,3V – 5,25V.
Zworka zdjęta – zasilanie programatora (bufora wyjściowego) z
programowanego układu.

UWAGA ! JEŚLI PODŁĄCZONY UKŁAD POSIADA WŁASNE ŹRÓDŁO
ZASILANIA, ZWORKA JP2 W PROGRAMATORZE POWINNA BYĆ ZDJĘTA A
NAPIĘCIE ZASILANIA PODŁĄCZONEGO MIKROPROCESORA
DOPROWADZONE DO PINU VCC PROGRAMATORA *
*Zdejmując zworkę JP2 odłączamy zasilanie USB od bufora wyjściowego
programatora. Aby zasilić bufor należy doprowadzić napięcie z podłączonego
mikrokontrolera do pinu VCC programatora.


Zworka JP2 jest zdjęta. Jednak podczas pracy programu, gdy programator jest podpinany (lub wpięty) pojawiają się kwadraty.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 19:14 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27315
Lokalizacja: Szczecin
Pomógł: 1041

aaa no to nic nie poradzę ... masz wbudowany normalny programator w zestaw ATB - to czemu z niego nie korzystasz ?

http://atnel.pl/ft232r-programator-w-atb.html

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 27 mar 2016, o 22:32 
Offline
Użytkownik
Avatar użytkownika

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

Cytuj:
Jednak podczas pracy programu, gdy programator jest podpinany (lub wpięty) pojawiają się kwadraty.
Pewnie programator cały czas wystawia sygnał resetu. Nie masz tak jakiś opcji w programie od programatora to sterowania tym?

Jak masz zestaw ATB, to prościej jest użyć wbudowanego programatora, jak to napisał Ci Mirek.
Cytuj:
masz wbudowany normalny programator w zestaw ATB - to czemu z niego nie korzystasz ?


--
Pozdrawiam,
Robert



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: 46 ]  Przejdź na stronę Poprzednia strona  1, 2

Strefa czasowa: UTC + 1


Kto przegląda forum

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