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



Teraz jest 5 maja 2024, o 21:12


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 6 maja 2014, o 20:00 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Witam.
Próbuje wyświetlić sobie na ekranie jakieś słowa, litery. Niestety nie udaje mi się to ponieważ niektóre znaki po prostu się zamieniają na inne np. słowo temperatura wyświetla mi się tempepatuta albo projekt jako proxhim(lub jakoś tak). Czy jest to spowodowane wadliwym wyświetlaczem? czy może opóźnienia są nie prawidłowe?, gdzieś słyszałem że funkcja _delay_ms() może mieć inny czas na procesorze 8Mhz niż 1Mhz lecz wydaje mi się to nie prawdą.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 20:03 
Offline
Użytkownik

Dołączył(a): 19 sty 2013
Posty: 322
Pomógł: 22

Zapodaj program, schemat, powiedz jaka częstotliwość taktowania jest ustawiona, Wydaję mi się że czas jest ten sam jak ustawisz 200 ms to masz 200ms i tyle chyba, że taktowanie w procesorze masz inne niż taktowanie w programie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 20:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

funkcja _delay_ms() będzie miała zawsze taki sam czas trwania przy zegarze 8MHz jak i 1MHz (minimalne odchyłki na pewno będą, ale pomijalne w tym wypadku). Warunek jest taki, że wartość zegara będzie taka sama w projekcie i na procesorze.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 20:15 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

icer_cmg co masz na myśli taka sama w projekcie i procesorze?, o tą instrukcje :
#define F_CPU 8000000UL ?

Głównym problemem dla mnie jest jednak te błedne znaki:(


Kod programu
plik main:

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


W tym programie probóje wyświetlić temperature z OneWire, z czym też mam problem, tutaj jest kod funkcji z lcd.h to nie jest mój kod, innej osobie ten kod działa, lecz ona ma procesor 1Mhz:

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



Ręce opadają. Tak podłączyłem LCD:

http://imageshack.com/a/img842/2007/fm49z.jpg



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 20:45 
Offline
Użytkownik

Dołączył(a): 16 mar 2013
Posty: 157
Pomógł: 6

A czy kolega zapoznał się może z tym artykułem http://mirekk36.blogspot.com/2012/04/lc ... aczac.html?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 21:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 28 lis 2011
Posty: 156
Pomógł: 12

Witam ostatni tez musialem sprawdzic temperaure i powstal taki kod moze on ci troszke pomoze

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


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


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


A tak to mniej wiecej wygladalo
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 maja 2014, o 21:34 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Teraz mam całkowitą już pewność że mój sposób również działa(kolega sprawdził i wszystko jest ok), ale dzięki za poglądowy kod. Więc dalej mam problem z wyświetlaczem, wyświetla nie taki znaki jak trzeba.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 01:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

Spróbuj zrobić test wyświetlania wszystkich znaków ASCII

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


Od 65 lecą litery w kolejności alfabetycznej. Zobacz czy dobrze się się wyświetlają.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 09:22 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Duża część liter i znaków wyświetla się źle, nawet puszczone od innego miejsca też wyświetlają się źle zmieńając te same litery na złe w tej samej kolejności. Zacząłem od 33 znaku to efekty:
! _ ! $ % $ % ( ) ( ) , - , - 0 1 0 1 4 5 4 5 8 9 8 9 < = < = ?(chyba) A ?(chyba) D E D E H I H I L M L M P Q P Q T U T U T U X Y X Y (dziwny znak, przekreślone Y) ] (ten sam dziwny znak) ] ' a ' a d e d e h i l m l m p q p q t u x y x y | } | }

Jak widać po literach jest pewna prawidłowość.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 10:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

Dość nietypowo sterujesz ten wyświetlacz. Najczęściej używa się sterowania 4 bitowego. Może masz zamienione linie data, albo wyświetlacz pracuje w trybie 4 bitowym.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 11:48 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Problem własnie polega na tym że taki sam program działa u kolegi, który podłącza go tak samo jedyną rzeczą jaka się różni to to że on pracuje na 1Mhz a ja na 8Mhz i to jest jedyna różnica. Postaram się inaczej podłączyć ten wyświetlacz oraz sprawdzić inny wyświetlacz.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 12:06 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

No dobra Ty pracujesz na 8 MHz. A w programie nie masz ustawionego czasem taktowania 1 MHz takie jak u kolegi ?
Bo to się musi zgadzać. Możesz sobie pracować nawet na 30 MHz ale w programie też to musi być ustawione.
Kompilator musi wiedzieć z jaką częstotliwością pracuje procesor.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 15:10 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Wszystko jest ustawione sprawdzałem to nie raz, niestety, nawet dodałem linijke : #define F_CPU 8000000UL i to nic nie pmogło



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 16:59 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Znaki które się błędnie wyświetlają to m.in.
2367BCFGJKRSZbcf - za to dostaje : 0145?ADEHIPQX'ad
Gdy wysyłam : 014589DEHILMPQTU lub to dehilmpqtuxy to dostaje dobry wynik.
Z tego co zauważyłem to róznią sie one zwykle o jeden bit : np 2 - 00110010 a 0 -00110000 lub c-01100011 a-01100001

Sprawdziłem wszystkie kable i napięcie na portach i dostałem dobre wyniki. Ma ktoś jakiś pomysł co do tego problemu? Bardzo on mi ciąży gdyż blokuje on pracę nad urządzeniem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 21:03 
Offline
Nowy

Dołączył(a): 02 maja 2014
Posty: 16
Pomógł: 0

Udało mi się uporać z problemem, implementując program na 7 bitach a nie 11, mimo to dzięki za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 maja 2014, o 22:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 05 sie 2013
Posty: 1154
Lokalizacja: Lublin / Kraków
Pomógł: 72

sq8dsr napisał(a):
Dość nietypowo sterujesz ten wyświetlacz. Najczęściej używa się sterowania 4 bitowego.


A no właśnie... ;)



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


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