Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PIC16F946 + LCD
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
Vny4ek
Добрый день.
Ковыряю пейджер от сигналки, и поскольку там пик внутри захотелось попробовать выводить на дисплей что то свое.
Сразу появились вопросы 21 вывод на LCD (гибкий шлейф прям на стекло с PIC)
Вопросы:
1) Так понял что разработчики использовали аппаратный драйвер LCD в пике для того что бы зажигать значения или не факт?
2) что мне нужно узнать из схемы устройства что бы инициализировать дисплей, не понятно просто ни в каком режиме работает дисплей, вызвонить ножки ПИКа идущие на дисплей, но что мне это даст?
3) посоветуйте план действий, что сделать и как начать использовать дисплей, имея только устройство в руках. Может быть есть пример исходников на Си, компилятор HI-TECH. Я пробовал пытаться запустить дисплей с разными режимами, но это все не помогло, в лучшем случае нелепо загорались несколько элементов, и то очень тускло, либо плавно гасли. Спасибо
-SANYCH-
Не имея схемы разговаривать о чем то конкретном нет смысла. Поэтому самое первое что Вам нужно, это нарисовать электрическую схему данного устройства. Если нет документации на какой то элемент (например LCD дисплей) то нарисуйте его как микросхему без названия.
В LCD на стекле сегменты не зажигаются как светодиоды (подал логическую единицу и светодиод светится). Для того чтобы сегмент индикатора загорался нормально на него нужно подавать переменный сигнал с частотой около 30 кГц.
Vny4ek
Тогда сегодня как раз эти и займусь, то есть вызвоню выводы идущие от мк к дисплею.
Vny4ek
Вызвонил на дисплее выводы, схему рисовать нет смысла я думаю, напишу какие выводы дисплея приходят на какие ножки PIC'a

1 -SEG2
2 -SEG3
3 -SEG4
4 -SEG5
5 -SEG6
6 -SEG7
7 -SEG8
8 -SEG9
9 -SEG10
10 -SEG15
11 -SEG16
12 -SEG17
13 -SEG18
14 -SEG19
15 -SEG20
16 -SEG21
17 -SEG22
18 -COM0
19 -COM1
20 -COM2
21 -COM3

Подскажите пожайлуста как запустить дисплей
Может кто поделится примером использования на си

Что то выводится, и я уже разобрался как назначать сегменты, но вот одно плохо, сегменты зажигаются нужные, но если наклонить дисплей то еле видно другие или если в другую сторону наклонить то тускло видно те сегменты что зажигаю командой.
Ruslan1
Цитата(Vny4ek @ Sep 26 2011, 19:03) *
Подскажите пожайлуста как запустить дисплей
Может кто поделится примером использования на си

Что то выводится, и я уже разобрался как назначать сегменты, но вот одно плохо, сегменты зажигаются нужные, но если наклонить дисплей то еле видно другие или если в другую сторону наклонить то тускло видно те сегменты что зажигаю командой.

Если есть рабочий приборчик с этим ЖКИ- полезно осциллографом поглядеть амплитуду-форму-частоту сигналов. Может вы нештатной частотой возбуждаете или там форма несколько хитрее.
Вот сходу нашел похожее обсуждение, там и ссылки есть.
Vny4ek
Спасибо за совет, действительно думал над этим, но поторопился и залил уже свою прошивку, сейчас уже все что нужно работает, единственное контрастность как то особо не радует, на штатном варианте лучше высвечивалось. Может каким то регистрам обратить больше внимания в этом случае.
LP<3-0> меняют картину, но как то не полно, конечно нашел оптимальную, но все как описал выше
Сергей Борщ
QUOTE (Vny4ek @ Sep 27 2011, 18:53) *
сейчас уже все что нужно работает, единственное контрастность как то особо не радует, на штатном варианте лучше высвечивалось.
-SANYCH- ошибся с порядком частоты возбуждения. Нормальной для стекол является частота 30Гц.
Vny4ek
читаю даташит но там нет такой частоты, параметр отвечающий за это как я понимаю это
Код
CS<1:0>: Clock Source Select bits
00 = FOSC/8192
01 = T1OSC (Timer1)/32
1x = LFINTOSC (31 kHz)/32

и прескалер
Код
LP<3:0>: LCD Prescaler Select bits
1111 = 1:16
1110 = 1:15
1101 = 1:14
1100 = 1:13
1011 = 1:12
1010 = 1:11
1001 = 1:10
1000 = 1:9
0111 = 1:8
0110 = 1:7
0101 = 1:6
0100 = 1:5
0011 = 1:4
0010 = 1:3
0001 = 1:2
0000 = 1:1

кварц 1мгц, у меня стоит как тут реализовать 30гц, правильно ли понимаю что нужно установить 00 = FOSC/8192 и прескалером выбрать частоту что бы получилось 30гц ?
Так и сделал, но у меня все сегменты начинают моргать по очереди снизу дисплея вверх. Причем в LCDDATA я ничего не присваивал. Подскажите пожалуйста на что еще посмотреть
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.