Подключение LCD 16х2 к любым ножкам МК

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 10 дек 2007, 14:59

Работаю с Code Vision-ом, а в нем при использовании встроенной библиотеки ЖКИ модуль подкючается определенным образом к ножкам одного порта. Иногда это неудобно, т.к. хочется под ЖКИ использовать ненужные для других целей лапки. Для решения проблемы набросал программку с альтернативными функциями работы с ЖКИ для ATmega 8. Сигналы RS и Enable - задаются произвольно. Для вывода данных используются 4 младших бита порта С. С комментариями. За основу взят материал из статей Рюмика в Радиоаматоре и пару функций Code Vision. Не блеск, конечно, но мне помогло. :)
Вложения
LCD_Test.zip
(30.3 КиБ) Скачиваний: 139
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Myp » 10 дек 2007, 15:30

эммм
а что мешает в этой встроенной библе передефайнить ноги?
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 11 дек 2007, 04:33

Myp писал(а):эммм
а что мешает в этой встроенной библе передефайнить ноги?

Ну это... Там ассемблерные вставки. Пужають... :o Да и там, помойму (глубоко копать не хотелось), определения всех битов для связи с названием одного выбранного порта завязаны, а мне хотелось, чтобы, например, данные слались из одного порта, а сигналы RS и E на ножки другого выводились. Вот.
Вот еще на досуге набросал нЕмощную программку для перекодировки русских букаф для ЖКИ с контроллером, совместимым с HD44780, в которых есть их поддержка (таблички ЖКИ-шных и компьютерных символов не совпадают). Запускаем программу, жмем начать, выбираем исходный с-файл. Исходный файл сохранится в той же папке под именем, например, ххх_old.c. А перекодированный - под именем исходного файла. После этого открываем проект, мэйкаем и прошиваем контроллер. Уря! Теперь можно на ЖКИ выводить на могучем русском "Превед, Мир!". :)
Тестировалось с ЖКИ SC1602B.
Сорри за размер (порядка 200 кб) - Дельфи - слишком тяжелая артиллерия для таких целей, но чем богаты, как говорится... :)
Вложения
.jpg
Пример
.jpg (10.67 КиБ) Просмотров: 5556
ReCoding.rar
Программа перекодировки русским символов компьютерной кодовой таблицы в символы таблицы ЖКИ
(196.49 КиБ) Скачиваний: 146
Последний раз редактировалось SSG 11 дек 2007, 12:24, всего редактировалось 1 раз.
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Myp » 11 дек 2007, 10:43

хмм
а если при инициализации вторую страницу символов включить ?:)
я тож сначало искал прогу для переконвертации символов
даж тему создал тут на форуме
а потом включил 2 кодовую страницу и стало выводится как есть в натуральном виде=)

может у тя там тоже есть 2 страничка? в даташите то ничо не написано?
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение avr123.nm.ru » 11 дек 2007, 10:52

Спасибо за труд.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 11 дек 2007, 12:28

avr123.nm.ru писал(а):Спасибо за труд.

Незачто. :)
Извиняйте, кто уже залил себе. Перезалейте, пожалуйста - нашел ошибку, неправильный код для буквы "ц" был. :oops:
2 Мур
А как там что с кодовыми страницами? Ничего не слышал... :(
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Master » 11 дек 2007, 12:45

А как там что с кодовыми страницами? Ничего не слышал...

У некоторых дисплеев есть две странички кодов. Как то уже обсуждали на форуме. У болиминвоских дисплеев нету.

Добавлено спустя 1 минуту 36 секунд:
Во время активации дисплеев включается первая либо вторая страничка, это выставляется в lcd.h
Аватара пользователя
Master
 
Сообщения: 4468
Зарегистрирован: 21 дек 2006, 19:56
Откуда: Украина, г.Одесса
прог. языки: Delphi и С

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Myp » 11 дек 2007, 13:07

хмм
а я думал это встроенная возмозность именно этого чипа HD44780
2 страницы

я кстати мэлтовские мучал, они дишовые и техподдержка у них активно работает
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Master » 11 дек 2007, 14:31

а я думал это встроенная возмозность именно этого чипа HD44780

Может у этого чипа так и есть, тока большинсто чипов называются аналог.
Аватара пользователя
Master
 
Сообщения: 4468
Зарегистрирован: 21 дек 2006, 19:56
Откуда: Украина, г.Одесса
прог. языки: Delphi и С

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Vooon » 11 дек 2007, 14:35

так по моему только у мелтовских и есть две странички, первая стандартная, а вторая cp1251

и вы это, CVAVR'щики а про
Код: Выделить всё
#pragma rl+
#pragma rl-
не знаете?
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 11 дек 2007, 16:29

Vooon писал(а):и вы это, CVAVR'щики а про
Код: Выделить всё
#pragma rl+
#pragma rl-
не знаете?

А чтой-то? При включении #pragma rl+ vmlab стал вместо русских букаф абракадабру выдавать. Нет сейчас контроллера с дисплеем проверить, может он нормально будет отображать. :(
Тестируемый ЖКИ тоже недорогой - порядка 6 американских денег. С подсветкой. Страница, как я понял из кривых Санлайковских даташитов одна.
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Myp » 11 дек 2007, 16:38

Vooon писал(а):и вы это, CVAVR'щики а про
Код: Выделить всё
#pragma rl+
#pragma rl-
не знаете?

не незнаю
а что это???
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 12 дек 2007, 00:58

Хм. Странно. Чего-то я в справке Code Vision-а ничего не нашел про #pragma rl+, но оно работает. По крайней мере с SC1602B. Вот я лопух - зря тока литр пива злоупотребил пока программу перекодировки писал. :)
2 Vooon Можно поподробней чего оно как?
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение Vooon » 12 дек 2007, 02:34

это встроенный перекодировщик, работает только для строк, для символов - нет

на электрониксе посмотри. а в хелпе они так и не добавили? забавно :)
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Подключение LCD 16х2 к любым ножкам МК

Сообщение SSG » 12 дек 2007, 22:57

В 1.25.7 beta нету. Перерыл.
Так это тока в Кодвижоновском компиляторе есть? Если да, то программулина может кому-нить и пригодится. Идею я уворовал :oops: в статье Рюмика. Он там под WinAVR програмил и писал свою программу перекодировки. Она через командную строку работала, что мне и не понравилось.
Вот еще переделал функции работы с ЖКИ. Теперь можно все ножки, подключаемые к ЖКИ через define определять. В примере я использовал PC5-PC2 для вывода данных и PD6,PD7 для управляющих сигналов у Atmega8.
Вложения
LCD.ZIP
(33.34 КиБ) Скачиваний: 151
I live My life!
Аватара пользователя
SSG
 
Сообщения: 1058
Зарегистрирован: 15 янв 2007, 19:23
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК

След.

Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22