Проект PICachu
Соственно так называется мой прокт. Пикачу. Назван так
потому, что основой в нём является МикроКонтролер (Далее МК) PIC16F876A
(кстати купленный случайно, не то дали, а я и незаметил). Этот МК
подключается к компьютеру через USART (он же SerialPort, н же RS232).
Скорость передачи составляет 115200. Также к МК подключен дисплей от
Нокий старых моделей типа 3310 (у меня от Нокия 5210) С помощью
программы на компе, можно управлять функциями на МК, а это:
- Вывод картинки на дисплей
- Управлением подсветки дисплея
- Очистка дисплея
- Перезагрузка МК
- Управление Портами A,B,C
- Чтение и запись байтов памяти
Рассмотрим
работу протокола.
Первым байтом посылает управляющий
байто (00h - 0Fh). Этот байт
указывает МК, что делать дальше.
00h -
Карина на дисплей. Посылаются 504 байта картинки. Более подробное
описание работы дисплея читать тут.
01h
– Управление подсветкой следующим байтом (00 – выключить, 01 –
зелённый, 02 –
синий, 03 – оба)
02h
– Очистка экрана.
03h
– Следующий байт – команда для Дисплея.
04h
– Перезагрузка МК.
05h
– управление TRISA
06h
– управление TRISB
07h
– управление TRISC
08h
– управление PORTA
09h
– управление PORTB
0Ah
– управление PORTC
0Bh
– чтение PORTA
0Ch – чтение PORTB
0Dh – чтение PORTC
0Eh XXh
– чтение байта из регистра XX.
0Fh XXh YYh–
запись байта YYh
в регистр XX.
И так, допустим, нам надо
прочитать байт из регистра 17h. Для это мы посылаем в порт команду 0eh
а потом намер регистра (в нашем случае - 17h)
МК пришлёт нам значение этого
регистра. Всё довольнотки просто. Надо заметить, что на первые пять
команд МК ни как не отвечает. На остальные он отвечает или OK или ERROR.
Весь протокол вообщем рассмотрели.
Исходники к прошивке прилагаются, так что модифицируйте как хотите. Это
ваше право.
Рассмотрим
схемы подключения:
Это распиновка контактов дисплея,
вид сзади. Конденсатор (1мкф) я напаивал прямо на эти контакты.
Так выглядит схема конвертатора
сигналов RS232 в сигналы TTL. Я не стал мудорствовать с транзисторными
схемами и сделал на МАХ232. Если вам нужно только передавать сигналы в
МК, то можете собрать схему на одном транзисторе, одном диоде и два
резистора.
Мда, рисунок получился
большеватый. Ну ладно. Контакты МК 11-14 подключаются к LCD. Контакты
25-28 используются как входы для кнопок. Контакты 16 и 15 используются
как выходы для светодиодов подсветки Дисплея. В своём устройстве я их
не использовал (выводы). У меня подсветка постоянная.
Программа, которая управляет
дисплеем - LCDHype. Скачать её можно отсюда:
http://lcdhype.mod-extreme.info/lcdhypeforum/index.php?showforum=22
Ппрошивка, исходники,
схемы, эскизы печатных плат (SprintLayout 4.0), а так же как прошить
PIC16F876:
Pic16f876.rar
Драйвер к LCDHype 0.40 с
исходниками Delphi7:
Picachu
Как подключить различные дисплеи
от телефонов к LPT:
http://rifer.narod.ru/index.html
Фотки, довольно нормального
качества (подсветка мешала) сделанные на телефоне и небольшая запись
работы PICachu в формате 3pg
files/photo.rar