реклама на сайте
подробности

 
 
> Пример кода для atmega328 + LCD
POLL
сообщение Dec 15 2011, 12:33
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 300
Регистрация: 11-06-11
Пользователь №: 65 640



Добрый день!

Подскажите, пожалуйста, простой пример кода на Си по работе с текстовым экраном 16*2, в 4bit режиме.

Соединения:
DB4 -> PORTB0
DB5 -> PORTB1
DB6 -> PORTB2
DB7 -> PORTB3

RS -> PORTB4
R/W -> PORTB5

Enable -> PORTD7


Перерыл в сети кучу примеров - ну все с ошибками в коде, у кого #define F_CPU не прописан, у кого синтаксические ошибки...
Делаю все в AVR Studio. Собственно, для OLED индикатора WEH001602 пишу инициализацию, пока ни в какую, то вроде зафурычит, а потом хоп и погаснет или выведет не на той строке или ни в том месте или закарючки пойдут...

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Genadi Zawidowsk...
сообщение Dec 15 2011, 17:22
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Вот тут http://www.cqham.ru/forum/showthread.php?t=9688 лежит проект, в котором я победил проблемы WEH02002. Файл HD44780.C
НА мой взгляд, проблема вот в чём:
При подключени по 4-м битам надо обеспечить корректное переключение в 4 бита и после включения питания (легко) и после ресета процессора (делается трюком из трёх команд, которые переводят в 8 бит, потом обратно в 4).
Так вот - этот трюк с WEH* (с его контроллером) не проходит, так как в ранее игнорировавшихся битах младшего байта команды теперь другая информация. Как я с этим разобрался - смотрите в исходник. Коротко - по 4-х битному интерфейсу устанавливаю позицию курсора, а потом считываю её (ненулевая и с разными старшим/младшим нибблами). Если считалось - индикатор в 4-х битном режиме и ничего делать не надо. Если не считалось - инициализируем.
Правда, есть ещё состояния, когда процессор сбросили в момент чтения первого из двух нибблов статуса - но это я не проверял (да и иделаьнее решить ключём в питании индикатора).
Или перейти на SPI интерфейс - с WEH это можно сделать.
http://www.cqham.ru/forum/showthread.php?t=18954

Сообщение отредактировал Genadi Zawidowski - Dec 15 2011, 17:32
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 12:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016