Easyelectronics.ru

Электроника для всех
Текущее время: 20 июл 2018, 15:31

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 134 ]  На страницу Пред.  1, 2, 3, 4, 5, 6
Автор Сообщение
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 17 мар 2014, 22:22 
Старожил
Аватара пользователя

Зарегистрирован: 06 янв 2012, 18:49
Сообщения: 801
Откуда: Новый Уренгой
К сообщению добавил архив, для работы с дисплеем используется 4-х битная шина, подключение следующее:
Используется только порт A, пин от дисплея RW подключен к земле, остальные так:
LCD_RS - GPIO_Pin_0
LCD_EN - GPIO_Pin_1
LCD_DB4 - GPIO_Pin_2
LCD_DB5 - GPIO_Pin_3
LCD_DB6 - GPIO_Pin_4
LCD_DB7 - GPIO_Pin_5

При отладке основной проблемой было то что при создании по даташиту таймингов и команд, дисплей работал через раз, но методом тыка подобрал режим при котором вероятность работы при любом включении стала 100%, если нужно могу сделать осциллограммы :-) всех пинов :-)
Проект сделан в кокосе.


Вложения:
LCD_sample 4bit.7z [102.21 Кб]
Скачиваний: 104

_________________
selenur.ru
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 мар 2014, 09:25 
Старожил
Аватара пользователя

Зарегистрирован: 06 янв 2012, 18:49
Сообщения: 801
Откуда: Новый Уренгой
В моменте инициализации дисплея у меня в файле LCD.c есть такой код
lcd_send(0b00100000,COMMAND);
LCDStrobe(); <----- очень важная штука
Delay_ms(5);
lcd_send(0b00101000,COMMAND);
Delay_ms(40);

В даташите написано что нужно установить на пинах данных 0010 сделать строб пина ENABLE, потом установить 0000 снова сделать строб, потом снова установить 0010 и сделать строб, и так далее, но инициализация не всегда проходила, но как только добавил ещё один строб, выделил в коде выше, так дисплей стал отлично инициализироваться. Судя по всему таким образом все-таки удается его переключить в 4-х битный режим... :-)

_________________
selenur.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 дек 2014, 18:26 
Только пришел

Зарегистрирован: 18 дек 2014, 18:08
Сообщения: 7
Дабы не плодить темы.

Начались глюки PB2r2. Модуль с мегой16. Вчера написал хело-ворлд для LCD-экрана (на асме, простыню в столбик), все работало. Сегодня написал библиотеку под дисплей, тоже все работало, до недавних пор. На ровном месте, после очередного включения платы работать перестало. Дисплей не заводится ни с библиотекой, ни с простыней.

Решил зашить (проверить контроллер) одну из старых программ со светодиодами, и заметил такую вещь. При НАЖАТОМ РЕСЕТЕ МК на порте А происходит полный фарш. на РА0 - 3.7 В, на РА1 - прямоугольный импульс переменной частоты. Через раз при старте МК появлялось лог.1 на РА1 и РА2. Порт А никак не задействован в работе с ЛСД.

Заменил контроллер, дважды. У всех трёх всё одно и то же - ЛСД не заводится, на порте А - фарш (даже со стертым флешем и нажатым ресетом). Повторюсь - и хело-ворлд в столбик, и библиотека на ЛСД работали.

Что такое происходит? Куда смотреть? Сам, боюсь, не разберусь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 дек 2014, 18:36 
Старожил
Аватара пользователя

Зарегистрирован: 17 апр 2010, 08:38
Сообщения: 4830
Откуда: Усинск, республика Коми
Как подключен дисплей?

_________________
хаос это непознанный порядок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 дек 2014, 18:48 
Только пришел

Зарегистрирован: 18 дек 2014, 18:08
Сообщения: 7
D0-D7 => PC0-PC7, PB0 => RS, PB1 => RW, PB2 => E.

Боюсь, что дисплей вообще не при делах окажется.

В аттаче файлы хело-ворлда. Проверьте кто-нибудь на работоспособность. Писалось для 8 МГЦ


Вложения:
lcd.zip [2.64 Кб]
Скачиваний: 90
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 дек 2014, 19:07 
Старожил
Аватара пользователя

Зарегистрирован: 17 апр 2010, 08:38
Сообщения: 4830
Откуда: Усинск, республика Коми
На порт выведен JTAG. Он отключен? Просто у меня был похожий случай. Я что-то отлаживал, потом порт перестал отвечать. Я думал, что спалил его. А причина была проста - нужно в программе его отключать, установив соответствующий бит регистра. Ну или через фьюзы. Как только добавил команду отключения JTAG, то сразу все заработало как раньше.

_________________
хаос это непознанный порядок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 18 дек 2014, 19:26 
Только пришел

Зарегистрирован: 18 дек 2014, 18:08
Сообщения: 7
Fuse D9 E4. 11[jtag] 0[spien] 11001 11100100. Отключен. Я их не менял. Снял МК с модуля. на пине РА0, все равно ~2 вольта висит.

Проверьте портянку кода кто-нибудь на железе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 19 дек 2014, 18:58 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6244
Откуда: Челябинск
Ну так пин идет на переменник и джампер по умолчанию стоит. С него и идут эти напруги.

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 20 дек 2014, 16:38 
Только пришел

Зарегистрирован: 18 дек 2014, 18:08
Сообщения: 7
В итоге заменил индикатор, работает.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 134 ]  На страницу Пред.  1, 2, 3, 4, 5, 6

Часовой пояс: UTC + 5 часов


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB