Program w AVR Studio 4 działa, w 5.1 nie

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From Polish to

Threaded View
Opisałem skrótowo, chodzi o kompilowany kod przez AS 5.1 (5.0 tak samo).
Raczej prosty program, kod obsługi wyświetlacza 2x16 ze strony
http://radzio.dxp.pl/hd44780 /
w programie głównym inicjalizacja wyświetlacza i wypisanie tekstu.
Biblioteka sprawdziła mi się już wcześniej (AS4 z WinAVR-20100110) więc
dodałem do większego projektu pisanego w nowoczesnym, ładnym, ciężkim...
AS 5.0. Nie działa LCD. Co jest?! Porty, JTAG włączony, z LCD coś nie
tak. Po chwili zmian w kodzie poprzerywanych 'wiązankami' słownymi
sprowadziłem do tego, że jest tylko i wyłącznie obsługa LCD - minimum!
Przeniosłem kod do projektu AS4, kompilacja i działa!
Parametry kompilacji domyślne, (optymalizacja ustawiona -Os, chociaż
przy -O0 nie ma poprawy), F_CPU to samo, programator pobierający HEX ten
sam. Aha, przed inicjalizacją LCD załączam LED - program startuje.
Inicjalizacja LCD teĹź raczej ok, poniewaĹź przechodzi wzrokowy test na
ciemne bloki pierwszego wiersza. Nie wyświetla najprostszego znaku za
pomocą LCD_WriteData :( Nie miałem czasu analizować źródeł, nie mam też
możliwości JTAG. A! ATmega128@16MHz, 5V.
Miał ktoś podobne problemy? Słyszałem niepochlebne opinie AS5, ale mimo
to chciałem spróbować, żeby nie zostać w tyle... Projekciki mogę gdzieś
umieścić, może po południu.

Michał

Re: Program w AVR Studio 4 dział a, w 5.1 nie
Cześć,

zdaje się, że mam podobne objawy. Kompilacja na Atmega64 z AS4 działa, a z
AS5 nie do końca...
No i czemu rĂłzny jest rozmiar kodu? Kompilator przecieĹź ten sam, opcej
kompilacji te same.

Maciek



Quoted text here. Click to load it


Re: Program w AVR Studio 4 dział a, w 5.1 nie
Quoted text here. Click to load it

Na pewno ten sam? Sprawdź wersję kompilatora. Nowsze wersje GCC dają z
jakiegoś powodu większy kod, już było o tym na grupie.

--
Grzegorz Niemirowski
http://www.grzegorz.net /
We've slightly trimmed the long signature. Click to see the full one.
Re: Program w AVR Studio 4 działa, w 5.1 nie
Link do projektĂłw pod AS4 i AS5: http://tinyurl.com/6nbt4qv
Może jakiś zapis w kodzie jest nieprawidłowy...

Michał


Re: Program w AVR Studio 4 dział a, w 5.1 nie
Quoted text here. Click to load it

A nie mógłyś normalnie, po ludzku, wystawić ZIPa? Chyba, że przeoczyłem
jak
można ściągnąć całość naraz.

--
Grzegorz Niemirowski
http://www.grzegorz.net /
We've slightly trimmed the long signature. Click to see the full one.
Re: Program w AVR Studio 4 działa, w 5.1 nie
W dniu 2012-02-24 22:24, Grzegorz Niemirowski pisze:
Quoted text here. Click to load it

Przepraszam, nie wiedziałem i nie sprawdziłem, że Gugiel pokaże podgląd
zipa. ZIP tutaj: http://tinyurl.com/6mkawkk

Michał

Re: Program w AVR Studio 4 dział a, w 5.1 nie
Quoted text here. Click to load it

Jesteś pewien? Moim zdaniem plik hd44780.c nie ma prawa znać tego symbolu w
projekcie dla wersji 5.

Quoted text here. Click to load it

Nie :) Moim zdaniem nie przeniosłeś poprawnie projektu z wersji 4 do 5.

Quoted text here. Click to load it

Jakie opinie?
Mnie zmartwiło zaprzestanie obsługi starszych JTAGów, czasem też dziwnie
zachowuje się debugger. Ogólnie jednak jest bardzo przyjemnie dzięki oparciu
softu o Visual Studio Isolated Shell.

Przy okazji zaciekawiło mnie takie coś:

LCD_E_PORT |= LCD_E;
_LCD_OutNibble(dataToWrite >> 4);
LCD_E_PORT &= ~LCD_E;
LCD_E_PORT |= LCD_E;
_LCD_OutNibble(dataToWrite);

Czy to nie jest za szybko? Czy nie powinno być jakiegoś, choćby
mikrosekundowego, opóźnienia po ustawieniu stanu linii E?

--
Grzegorz Niemirowski
http://www.grzegorz.net /
We've slightly trimmed the long signature. Click to see the full one.
Re: Program w AVR Studio 4 działa, w 5.1 nie
On Feb 24, 10:51C2%A0pm, "Grzegorz Niemirowski"
Quoted text here. Click to load it
87%by
Quoted text here. Click to load it

Impuls na E (stan wysoki) powinien trwaC4%87 minimum 450 ns
Dane powinny byC4%87 stabilne miniumum 195 ns przed opadajC4%85cym zbocze=
m E i
minimum 10 ns po.
MiC4%99dzy tymi narastajC4%85cymi zboczami na E minimum 1 C2%B5s. Nie po=
dajC4%85 ile
moC5%BCe trwaC4%87 stan niski, ale zakC5%82adam, C5%BCe minimum te 10 n=
s powyC5%BCej.
Brzydko jest to zrobione. MoC5%BCe przez to nie dziaC5%82aC4%87

Re: Program w AVR Studio 4 działa, w 5.1 nie
W dniu 2012-02-24 22:51, Grzegorz Niemirowski pisze:
Quoted text here. Click to load it

Mea culpa! Nie wiem, dlaczego nie zauważyłem ostrzeżenia... mogłoby to
być jakoś lepiej zrobione w AS5, a ja ręcznie przełączam na 'Error
list'... czasem. Teraz przyczepiłem sobie okienko tak, żeby było widoczne.
Definicję F_CPU dodałem jednak do do okienka 'Defined symbols' w opcjach
Toolchain. Chyba tak lepiej, niĹź doczepianie do kaĹźdego kolejnego pliku
kolejnego pliku nagłówkowego z definicją F_CPU.

Quoted text here. Click to load it

Fakt, niezbyt ładnie mimo, że działa. Kiedyś popełniałem swoje wersje
obsługi LCD, również w asm, ale jakoś ostatnio przyjęła mi się ta
biblioteka. Na wszelki wypadek wstawiłem w kilku miejscach wymagane
przez HD44780 opóźnienia (mniej więcej).

Michał


Re: Program w AVR Studio 4 dział a, w 5.1 nie
Quoted text here. Click to load it

Zrobiłem teraz upgrade z 5.0 do 5.1 i JTAG przestał działać, tzn. działa
zupełnie losowo, widać ewidentne przekłamania, np. jak zczytuje sygnaturę
atmegi to potrafi w dwóch bajtach ustawić wszystkie bity na 1. Co za
badziew.

--
Grzegorz Niemirowski
http://www.grzegorz.net /
We've slightly trimmed the long signature. Click to see the full one.

Site Timeline