Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: 4 битный режим LCD в AVR Studio
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
FisherVet
Доброе время суток всем. Работаю с AVR недавно и начинал с CodeVisionAVR, там проблем особых не было, но пришлось перебраться на AVR Studio, поскольку для этого компилятора больше библиотек. Столкнулся с такой проблемой: не работает 4 битный режим для текстового LCD. Причём не работает при использовании встроеной библиотеки, не работают так же и примеры имеющиеся в студии. Причём 8 битный режим работает без проблем, но он неприемлем из-за ограничености кол-ва ног. Модель в Протеусе вообще ничего на экран не выводит, а на железе мусор всякий на экране. Модель в Протеусе и железо правильные с CodeVision без проблем. Интуитивно понимаю, что проблемма вероятно с длительностью задержек. В настройках частоты и тип проца выставил правильно специально 10 раз перепроверил всё и результат один.
Не сочтите за ламмера, но может кто знает где тут собака порылась, может кто сталкивался с такой проблеммой?
WHALE
AVR STUDIO не компилятор,он на макроассемблер не очень-то тянет.И под него много библиотек?Удиви
тельно blink.gif Советую вернуться обратно на какой-нить сишный компилер-там библиотек действительно море,а асм использовать только в случае необходимости.
З.Ы. возьмите библиотечный пример инициализации 4-разрядного LCD хоть с того-же кодвижина или тут-же на подфоруме исходников, откомпилируйте и посмотрите,что там асме получается,если вам так интересно.
FisherVet
Цитата(WHALE @ Oct 22 2006, 14:54) *
AVR STUDIO не компилятор,он на макроассемблер не очень-то тянет.И под него много библиотек?Удиви
тельно blink.gif Советую вернуться обратно на какой-нить сишный компилер


Извиняюсь за неточность. AVR Studio действительно не является компилятором С, для С он использует GNU GCC compiler for C and C++. Дак вот проблема с этим компилятором, а AVR Studio это оболочка в данном случае.
aesok
Какой конкректно "встроенной библиотекой" для текстового LCD вы пользуетесь?
Ни в avr-gcc, ни в avr-libc нету никаких библиотек для текстового LCD. В avr-libc есть только пример он как я понял у вас тоже не работает.

И пожалуйста сообщите ваши версии WINAVR и avr-gcc.

Анатолий.
smk
Мне тоже импонирует CVAVR в части работы с LCD. Но не устроило то, что мастер ноги LCD подключает сам. Это не всегда приемлемо, ограничивает конструкторскую инициативу, возникает необходимость переброски. Может кто делал что подобное? Вот бы написать хидер, чтоб прям в тексте программы можно было ноги под LCD переназначить. Кто грамотнее меня, может поможете с решением этой проблемы? Буду безмерно признателен!
otrog
Цитата(smk @ Oct 24 2006, 13:20) *
Мне тоже импонирует CVAVR в части работы с LCD. Но не устроило то, что мастер ноги LCD подключает сам. Это не всегда приемлемо, ограничивает конструкторскую инициативу, возникает необходимость переброски. Может кто делал что подобное? Вот бы написать хидер, чтоб прям в тексте программы можно было ноги под LCD переназначить. Кто грамотнее меня, может поможете с решением этой проблемы? Буду безмерно признателен!

Вот здесь решили эту проблему. Может и для Вас подойдет.
smk
Спасибо! Попробую.
FisherVet
Цитата(aesok @ Oct 22 2006, 19:34) *
Какой конкректно "встроенной библиотекой" для текстового LCD вы пользуетесь?
Ни в avr-gcc, ни в avr-libc нету никаких библиотек для текстового LCD. В avr-libc есть только пример он как я понял у вас тоже не работает.

И пожалуйста сообщите ваши версии WINAVR и avr-gcc.

Анатолий.


Встроенная библиотека есть в оболочке AtmanAVR C IDE 8.8.0 Built date 23 сентября 2006. Он использует компилятор AVRGCC 4.1.1
AVRStudio V4.12 SP4 Build 498 использует avr-gcc 3.4.6

Пример не работает из AtmanAVR. Для работы с LCD в AVRStudio использовал стороннюю библиотеку AVRlib (URL=http://www.procyonengineering.com). Их пример тоже не работоспособен.
Я не верю что такие продукты могли выйти с неработающими библиотеками, но у меня не выходит ничего. Хотя использование крайне простое: указать порты и режим (4 бита или 8), инициализация и всё .... облом в моём случае.

Кстати AVRlib позволяет выбирать ноги к которым подключается LCD.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.