ICD2
23.01.2009, 23:30
Суть(цель?) проекта
--- На тот момент это был проект для областных соревнований по радиоэлектронике и радиоконструированию. диплом имеется.
Далее по списку:
--- Выбрать идею - модернизация телефона.
--- Создать устройство на базе микроконтроллера семейства PIC16
--- Более лучшее изучение языка ASM а так же Си.
--- Создать юзабельный аппарат через который можно будет звонить
--- что нибуть еще =)
Что нам нужно?
Во первых надо знать что мы можем. из этого и исходить, на тот момент я владел контроллерами PIC12/16 и остановил свой выбор на PIC16F877A
Вот наш пациент =) Далее программатор отладчик ICD2 болгарского производства ~2.5к рублей. Прошу заметить что работает и в MPLAB нативной программы для виндовз а так же в Piklab на Linux через USB
http://itmages.ru/files/images/mini/Ph14.jpg http://itmages.ru/files/images/mini/Ph08.jpg
Даташит на контроллер можно найти тут microchip (http://www.microchip.ru/files/d-sheets-rus/PIC16_Manual.pdf)
Обычный пластиковый DIP40 корпус(на керамику денег жалко)
Задаем вопрос почему DIP40?
--- Во первых нам нужно обеспечить проверку кнопок, а у нас клавиатура 4х4 -- в нашем случае, один порт контроллера уже занят.
--- Во вторых, нам нужно подключить дисплей 4х20 а там 16 контактов для управления.
--- В третьих так же нужно чем то будет набирать номер, взонить, мигать, системные светодиоды внутри корпуса.
--- Ну и "Запас карман не тянет"
Можно было бы конечно посадить дисплей и клавиатуру на один порт но на тот момент у меня проект "горел", так что это был идеальный выбор.
Немного о дисплее, использовался дисплей 4 строки на 20 символов в каждой, даташит на дисплей можно посмотреть тут 4x20 LCD (http://itmages.ru/files/hd44780u.pdf)
Скажу что это легкий в освоении дисплей.(не то что точечный с которым недавно возился)
Еще нам понадобится немного рассыпухи помимо дисплея и контроллера =) а, ну да, еще немного мозга и свободного времени.
Поехали! (с)
Жертвой моей переделки стал как я уже говорил, старый стационарный телефон, фотку в первоначальном виде по понятным причинам показать не могу :) был этот телефон с "колесом-наборником"
из него было удалено все лишнее, и смотрелось это примерно так -
http://itmages.ru/files/images/mini/Ph01.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0070.jpg)
Затем была разработана схема и изготовлена плата.
Разворот платы (т.е. дорожки) можно наблюдать тут -
http://itmages.ru/files/images/mini/Ph05.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0075.jpg)
К сожалению, много времени прошло с момента того как я сконструировал этот телефон, и принципиальная схема слилась в /dev/null^W^W^W^W^W смотрим ниже и остались наброски из моей рабочей книжки =)
рас (http://itmages.ru/files/images/Photo-0081.jpg) --- два (http://itmages.ru/files/images/Photo-0082.jpg) --- три (http://itmages.ru/files/images/Photo-0083.jpg) --- четыре (http://itmages.ru/files/images/Photo-0084.jpg)
После изготовления платы, вышло что то вроде этого -
http://itmages.ru/files/images/mini/Ph02.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0072.jpg)
Варнинг, Друзья, когда делаете - ставьте кварцевый резонатор как можно ближе к ножкам контроллера.
Далее делаем корпус, тут конечно можно было и по аккуратнее но =) вобщем помещаем всю эту муть внутрь -
http://itmages.ru/files/images/mini/Ph06.jpg
Затем закрываем и включам/тестим -
http://itmages.ru/files/images/mini/Ph07.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0079.jpg)
Теперь я расскажу всякие штучки, какие у него есть
1 Аппарат работает от сети телефонной + питание (да это плохо)
2 Имеет режим "без звука"
3 Имеет режим "отключить/включить подсветку"
4 имеет режим городского набора
5 имеет режим междугороднего набора
6 у него классный дисплей =) а если еще туда воткнуть синюю подсветку будет вообще шик!
7 юзабельная клавиатура для набора номера, не то что рулетка эта..
8 пикает при нажатии =)
9 в версии асма некое подобие мелодии, в Си просто пикает при входящем звонке =)
Теперь пару слов о прошивках
======== ASM ==========
В асмовской прошивке аццки много кода, да. зато есть то чего нет в Сишной :) к примеру
--- при входящем звонке там анимация небольшая на дисплее крутится,
--- там корректно работает счетчик разговора(входящего)
--- помойму там остался счетчик пропушенных звонков =)
=======================
========== Си ==========
Когда писал сишную прошивку то разделил все на части, там много файлов, что бы легче было править
Для чего на Си ее писал так и не пойму, но помойму хотел сделать лучше но не допилил =)
но, тут есть такие фичи как
--- Отключение/включение подсветки
--- Режим "без звука"
--- улучшеная работа с междугородними номерами
--- неудачная попытка сделать redial =)
=======================
прошивки можно скачать тут же:
ASM (http://itmages.ru/files/Telefon(ASM).tar.bz2) и Си (http://itmages.ru/files/Telefon(C).tar.bz2)
UPD:
Вобщем, нарисовал схему, делал как можно юзабельнее, поэтому выполнил ее в sPlan 6.0 классная программа!
--- скачать не установленный splan (http://itmages.ru/files/sPlan_6.0(not_installed).tar.bz2)
--- скачать установленый splan там я правил либы некоторые + схема там же splan (http://itmages.ru/files/sPlan_6.0(installed).tar.bz2)
--- у кого уже есть эта программа может скачать просто схему splan (http://itmages.ru/files/Telefon.spl.tar.bz2) ОБНОВЛЕНО
А кому лень все это делать может посмотреть скриншоты =))
http://itmages.ru/files/images/mini/Ph14.png
Полная картинка ОБНОВЛЕНО (http://itmages.ru/files/images/Photo-0085.png)
шина на дисплей на схеме пронумерована, подключать соответственно
не исключено что в востановленной мною схеме есть ошибки, но вроде правильно делал, но чуть не помер(сложно рисовать схемы "наоборот")
Что касается дисплея, значит, это BC2004GPLCH фирмы Bolymin QC OC 060711
МЭЛТ мне не нравятся тем, что у них "застекольный слой" слишком зеленый. Даташит на дисплей выше в статье.
П.С. мне говорили что у меня неправильное включение транзисторов и на высокой частоте открыть/закрыть контроллер может виснуть, но уже поздно что то менять =)
--- На тот момент это был проект для областных соревнований по радиоэлектронике и радиоконструированию. диплом имеется.
Далее по списку:
--- Выбрать идею - модернизация телефона.
--- Создать устройство на базе микроконтроллера семейства PIC16
--- Более лучшее изучение языка ASM а так же Си.
--- Создать юзабельный аппарат через который можно будет звонить
--- что нибуть еще =)
Что нам нужно?
Во первых надо знать что мы можем. из этого и исходить, на тот момент я владел контроллерами PIC12/16 и остановил свой выбор на PIC16F877A
Вот наш пациент =) Далее программатор отладчик ICD2 болгарского производства ~2.5к рублей. Прошу заметить что работает и в MPLAB нативной программы для виндовз а так же в Piklab на Linux через USB
http://itmages.ru/files/images/mini/Ph14.jpg http://itmages.ru/files/images/mini/Ph08.jpg
Даташит на контроллер можно найти тут microchip (http://www.microchip.ru/files/d-sheets-rus/PIC16_Manual.pdf)
Обычный пластиковый DIP40 корпус(на керамику денег жалко)
Задаем вопрос почему DIP40?
--- Во первых нам нужно обеспечить проверку кнопок, а у нас клавиатура 4х4 -- в нашем случае, один порт контроллера уже занят.
--- Во вторых, нам нужно подключить дисплей 4х20 а там 16 контактов для управления.
--- В третьих так же нужно чем то будет набирать номер, взонить, мигать, системные светодиоды внутри корпуса.
--- Ну и "Запас карман не тянет"
Можно было бы конечно посадить дисплей и клавиатуру на один порт но на тот момент у меня проект "горел", так что это был идеальный выбор.
Немного о дисплее, использовался дисплей 4 строки на 20 символов в каждой, даташит на дисплей можно посмотреть тут 4x20 LCD (http://itmages.ru/files/hd44780u.pdf)
Скажу что это легкий в освоении дисплей.(не то что точечный с которым недавно возился)
Еще нам понадобится немного рассыпухи помимо дисплея и контроллера =) а, ну да, еще немного мозга и свободного времени.
Поехали! (с)
Жертвой моей переделки стал как я уже говорил, старый стационарный телефон, фотку в первоначальном виде по понятным причинам показать не могу :) был этот телефон с "колесом-наборником"
из него было удалено все лишнее, и смотрелось это примерно так -
http://itmages.ru/files/images/mini/Ph01.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0070.jpg)
Затем была разработана схема и изготовлена плата.
Разворот платы (т.е. дорожки) можно наблюдать тут -
http://itmages.ru/files/images/mini/Ph05.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0075.jpg)
К сожалению, много времени прошло с момента того как я сконструировал этот телефон, и принципиальная схема слилась в /dev/null^W^W^W^W^W смотрим ниже и остались наброски из моей рабочей книжки =)
рас (http://itmages.ru/files/images/Photo-0081.jpg) --- два (http://itmages.ru/files/images/Photo-0082.jpg) --- три (http://itmages.ru/files/images/Photo-0083.jpg) --- четыре (http://itmages.ru/files/images/Photo-0084.jpg)
После изготовления платы, вышло что то вроде этого -
http://itmages.ru/files/images/mini/Ph02.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0072.jpg)
Варнинг, Друзья, когда делаете - ставьте кварцевый резонатор как можно ближе к ножкам контроллера.
Далее делаем корпус, тут конечно можно было и по аккуратнее но =) вобщем помещаем всю эту муть внутрь -
http://itmages.ru/files/images/mini/Ph06.jpg
Затем закрываем и включам/тестим -
http://itmages.ru/files/images/mini/Ph07.jpg
Полная картинка (http://itmages.ru/files/images/Photo-0079.jpg)
Теперь я расскажу всякие штучки, какие у него есть
1 Аппарат работает от сети телефонной + питание (да это плохо)
2 Имеет режим "без звука"
3 Имеет режим "отключить/включить подсветку"
4 имеет режим городского набора
5 имеет режим междугороднего набора
6 у него классный дисплей =) а если еще туда воткнуть синюю подсветку будет вообще шик!
7 юзабельная клавиатура для набора номера, не то что рулетка эта..
8 пикает при нажатии =)
9 в версии асма некое подобие мелодии, в Си просто пикает при входящем звонке =)
Теперь пару слов о прошивках
======== ASM ==========
В асмовской прошивке аццки много кода, да. зато есть то чего нет в Сишной :) к примеру
--- при входящем звонке там анимация небольшая на дисплее крутится,
--- там корректно работает счетчик разговора(входящего)
--- помойму там остался счетчик пропушенных звонков =)
=======================
========== Си ==========
Когда писал сишную прошивку то разделил все на части, там много файлов, что бы легче было править
Для чего на Си ее писал так и не пойму, но помойму хотел сделать лучше но не допилил =)
но, тут есть такие фичи как
--- Отключение/включение подсветки
--- Режим "без звука"
--- улучшеная работа с междугородними номерами
--- неудачная попытка сделать redial =)
=======================
прошивки можно скачать тут же:
ASM (http://itmages.ru/files/Telefon(ASM).tar.bz2) и Си (http://itmages.ru/files/Telefon(C).tar.bz2)
UPD:
Вобщем, нарисовал схему, делал как можно юзабельнее, поэтому выполнил ее в sPlan 6.0 классная программа!
--- скачать не установленный splan (http://itmages.ru/files/sPlan_6.0(not_installed).tar.bz2)
--- скачать установленый splan там я правил либы некоторые + схема там же splan (http://itmages.ru/files/sPlan_6.0(installed).tar.bz2)
--- у кого уже есть эта программа может скачать просто схему splan (http://itmages.ru/files/Telefon.spl.tar.bz2) ОБНОВЛЕНО
А кому лень все это делать может посмотреть скриншоты =))
http://itmages.ru/files/images/mini/Ph14.png
Полная картинка ОБНОВЛЕНО (http://itmages.ru/files/images/Photo-0085.png)
шина на дисплей на схеме пронумерована, подключать соответственно
не исключено что в востановленной мною схеме есть ошибки, но вроде правильно делал, но чуть не помер(сложно рисовать схемы "наоборот")
Что касается дисплея, значит, это BC2004GPLCH фирмы Bolymin QC OC 060711
МЭЛТ мне не нравятся тем, что у них "застекольный слой" слишком зеленый. Даташит на дисплей выше в статье.
П.С. мне говорили что у меня неправильное включение транзисторов и на высокой частоте открыть/закрыть контроллер может виснуть, но уже поздно что то менять =)