-
1. Data: 2012-02-24 08:04:03
Temat: Program w AVR Studio 4 działa, w 5.1 nie
Od: Michał Lankosz <m...@t...pl>
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ł
-
2. Data: 2012-02-24 09:01:33
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: "Maciek" <f...@i...pl>
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
Użytkownik "Michał Lankosz" <m...@t...pl> napisał w wiadomości
news:ji7g9o$e47$1@inews.gazeta.pl...
> 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ł
-
3. Data: 2012-02-24 21:08:18
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: Michał Lankosz <m...@t...pl>
Link do projektów pod AS4 i AS5: http://tinyurl.com/6nbt4qv
Może jakiś zapis w kodzie jest nieprawidłowy...
Michał
-
4. Data: 2012-02-24 21:24:45
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Michał Lankosz <m...@t...pl> napisał(a):
> Link do projektów pod AS4 i AS5: http://tinyurl.com/6nbt4qv
> Może jakiś zapis w kodzie jest nieprawidłowy...
> Michał
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/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 7 days, 3 hours, 0 minutes and 56 seconds
-
5. Data: 2012-02-24 21:36:16
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Maciek <f...@i...pl> napisał(a):
> 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.
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/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 7 days, 3 hours, 12 minutes and 24 seconds
-
6. Data: 2012-02-24 21:51:45
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Michał Lankosz <m...@t...pl> napisał(a):
> F_CPU to samo
Jesteś pewien? Moim zdaniem plik hd44780.c nie ma prawa znać tego symbolu w
projekcie dla wersji 5.
> Miał ktoś podobne problemy?
Nie :) Moim zdaniem nie przeniosłeś poprawnie projektu z wersji 4 do 5.
> Słyszałem niepochlebne opinie AS5, ale mimo to chciałem spróbować, żeby
> nie zostać w tyle...
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/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 7 days, 3 hours, 19 minutes and 38 seconds
-
7. Data: 2012-02-24 22:57:53
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: shg <s...@g...com>
On Feb 24, 10:51 pm, "Grzegorz Niemirowski"
<g...@p...onet.pl> wrote:
> 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?
Impuls na E (stan wysoki) powinien trwać minimum 450 ns
Dane powinny być stabilne miniumum 195 ns przed opadającym zboczem E i
minimum 10 ns po.
Między tymi narastającymi zboczami na E minimum 1 us. Nie podają ile
może trwać stan niski, ale zakładam, że minimum te 10 ns powyżej.
Brzydko jest to zrobione. Może przez to nie działać
-
8. Data: 2012-02-25 20:58:23
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: Michał Lankosz <m...@t...pl>
W dniu 2012-02-24 22:24, Grzegorz Niemirowski pisze:
> Michał Lankosz <m...@t...pl> napisał(a):
>> Link do projektów pod AS4 i AS5: http://tinyurl.com/6nbt4qv
>> Może jakiś zapis w kodzie jest nieprawidłowy...
>> Michał
>
> A nie mógłyś normalnie, po ludzku, wystawić ZIPa? Chyba, że przeoczyłem
> jak można ściągnąć całość naraz.
>
Przepraszam, nie wiedziałem i nie sprawdziłem, że Gugiel pokaże podgląd
zipa. ZIP tutaj: http://tinyurl.com/6mkawkk
Michał
-
9. Data: 2012-02-25 22:13:24
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: Michał Lankosz <m...@t...pl>
W dniu 2012-02-24 22:51, Grzegorz Niemirowski pisze:
> Michał Lankosz <m...@t...pl> napisał(a):
>> F_CPU to samo
>
> Jesteś pewien? Moim zdaniem plik hd44780.c nie ma prawa znać tego
> symbolu w projekcie dla wersji 5.
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.
> 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?
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ł
-
10. Data: 2012-02-26 00:47:50
Temat: Re: Program w AVR Studio 4 działa, w 5.1 nie
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Grzegorz Niemirowski <g...@p...onet.pl> napisał(a):
>> Słyszałem niepochlebne opinie AS5, ale mimo to chciałem spróbować, żeby
>> nie zostać w tyle...
> Jakie opinie?
> Mnie zmartwiło zaprzestanie obsługi starszych JTAGów, czasem też dziwnie
> zachowuje się debugger.
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/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 8 days, 6 hours, 22 minutes and 49 seconds