странный недолёкий чел
754 / 476 / 123
Регистрация: 31.10.2016
Сообщений: 3,957
1

Не отображаются символы во второй строке ЖК дисплея LMO16L (Proteus)

26.12.2018, 18:15. Показов 1712. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть рабочая модель Proteus7.6 (Atmega32 + LMO16L). При работе с первой строкой дисплея всё функционирует правильно, но при попытке вывести данные во второй строке они не отображаются. Причём сообщений об ошибках никаких нет.
Здесь{del} (ссылки на форумы запрещены)нашел, что это похоже на неправильную инициализацию LCD, но разобраться сам не могу. Прошу помощи!
Вот мой код инициализации:

C
1
2
3
4
5
6
7
8
9
// -- конфигурирование дисплея --------
PORTC &= ~(1 << PORTC0);  // режим команды LCD
PORTD=0b00111100; set(); // 8-разрядная шина, 2 строки, малые символы
PORTD=0b00001000; set(); // выключить дисплей, курсор не виден, и не мигает
PORTD=0b00000001; set(); // сброс
_delay_us(1600); 
PORTD=0b00000110; set(); // курсор сдвигается вправо, сдвиг экрана запрещён
PORTD=0b00001110; set(); // включить дисплей, курсор виден, курсор не мигает
// ------------------------------
set(); - это функция, подающая стробирующий импульс на вывод "Е"
C
1
2
3
4
5
6
7
void set()  // функция записи в LCD
{
PORTC &= ~(1 << PORTC1); 
_delay_us(5); 
PORTC |= (1 << PORTC1);
_delay_us(40); 
}
Взят код отсюда http://s-engineer.ru/rabotaem-... 4780-ch-2/
ну и, слегка, доработан (потому, что у меня LCD подключен по 8-битной шине).

Буду благодарен, если кто то поможет подправить этот код.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2018, 18:15
Ответы с готовыми решениями:

символы '#$D#$A' - в строке. Отображаются как перенос строки. Нужно убрать. Не дают перейти по ссылке в которой есть эти символы
символы '#$D#$A' - в строке. Отображаются как перенос строки. Нужно убрать. Не дают перейти по...

Вывести на экран в первой строке нечетные символы, во второй четные символы исходной строки
Помогите написать 3 программы. (на С или С++) 1. Вывести на экран в первой строке нечетные...

Удвоить в первой строке все символы, принадлежащие второй строке
Написать программу, которая удваивает в первой введённой строке все символы, принадлежащие второй...

В командной строке python не отображаются японские символы katakana
Хотел поработать с японскими символами в Python, но в командной строке, при вызове этих символов по...

Proteus. Инициализация дисплея
Подключил в протеусе дисплей к мк, написал прошивку. При инициализации дисплея мк шлет какие-то...

2
1180 / 655 / 113
Регистрация: 15.05.2012
Сообщений: 4,049
26.12.2018, 19:02 2
Цитата Сообщение от Alexis333 Посмотреть сообщение
слегка, доработан
Искать косяк в доработке.
0
странный недолёкий чел
754 / 476 / 123
Регистрация: 31.10.2016
Сообщений: 3,957
26.12.2018, 22:48  [ТС] 3
Пришлось много информации перечитать по этому вопросу, вот здесь, на мой взгляд наиболее доходчиво написано http://badembed.ru/hd44780/,
по крайней мере, именно эта информация мне помогла. Оказалось, действительно, дело в инициализации LCD. Между 2-й и 3-тей строками вышеприведённого кода добавил такой фрагмент:
C
1
2
3
4
5
PORTD &= ~(1 << PORTD7);  
PORTD &= ~(1 << PORTD6);
PORTD |= (1 << PORTD5);
PORTD |= (1 << PORTD4);
set(); set(); set();
после этого, всё стало работать отлично, как и должно.
0
26.12.2018, 22:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.12.2018, 22:48
Помогаю со студенческими работами здесь

Подключение LCD дисплея к ATMEGA8 в PROTEUS
Не могу понять, как подсоединить дисплей к микроконтроллеру, чтобы при нажатии каждой кнопки...

Не получается вывести изображение и текст на экран дисплея (Proteus)
Здравствуйте, помогите пожалуйста, не получается вывести изображение и текст на экран дисплея...

Модель дисплея Nokia1202 для Proteus (+Nokia1616 LCD)
Сделал сабж. Дисплей Nokyo1202 стремительно набирает популярность как достойная замена дисплею...

В строке удалить второй и четвертый по счету символы
В заданной строке удалить второй и четвертый по счету символы.

Удалить из первой строки символы, не принадлежащие второй строке
Нужна помощь. Составить программу, в результате выполнения которой из первой заданной строки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru