На этот раз автор научит вас делать цифровой термометр с применением дисплея от телефона Nokia 3310
Цифровой термометр возвращается
Автор проекта: M@TR!XДанная статья - логическое продолжение первой. В этом материале будет подробно описан процесс изготовления самодельного цифрового термометра на микроконтроллере ATMEGA8.
Кратко о возможностях:
Схему термометра можно увидеть на следующем рисунке:
Для облегчения процесса сборки устройства была нарисована печатная плата:
Разводку для фанатов Sprint` в формате .lay можно взять здесь.
Плату изготавливал так называемым методом лазерного утюга. Дорожки нарисованы широкие, а контакты большие, так что с изготовление проблем быть не должно.
Для того чтобы собрать термометр, нам понадобится:
1) 2 резистора номиналом 5,6 кОм;Б
2) конденсатор на 4,7 мкФ;
3) 2 конденсатора номиналом 0,1 микрофарада (маркировка на корпуса 104);
4) две кнопки;
5) дисплей от мобильного телефона Nokia 3310 (возможно так же от 3210, 6210, 6310, но я не проверял их работу).
Нам необходимо запрограммировать наш микроконтроллер ATMEGA8. Для программирования нам надо собрать несложный внутрисхемный программатор, основой которого является микросхема 74HC244 (схема показана на рисунке).
Выложен также и авторский вариант разводки программатора.
Авторскую разводку для smd миниатюрной платы можно обнаружить здесь.
Для программатора нам понадобятся следующие компоненты:
1) 2 любых светодиода;
2) 2 резистора номиналом 470 Ом;
3) 1 резистор номиналом 4,7 кОм или он же 4к7;
4) 1 диод 1N4148;
5) 1 многослойный конденсатор 0,1 микрофарада (надпись на корпусе 104);
6) микросхема 74HC244.
Фотографий нет, так как программатор делал давно. Схема проверенная и рабочая.
На схеме 4,6,8,10 объединены, на это не следует обращать внимания, так как для программирования нам понадобятся только 5 из них (не считая землю).
1) MOSI нужно припаять к 17 выводу микроконтроллера;
2) +UP это питание. Нужно подать к 7 и 20 выводу микроконтроллера;
3) RESET нужно припаять к 1 выводу микроконтроллера;
4) SCK нужно припаять к 19 выводу микроконтроллера;
5) MISO нужно припаять к 18 выводу микроконтроллера;
6) GND нужно припаять к 8 и 22 выводу микроконтроллера.
На схеме есть две перемычки между 3 и 11, а так же 2 и 12 контактами вилки LPT. Они позволяют управляющей программе "опознать" программатор. Светодиод HL1 служит для сигнализации о режиме работы устройства, но делает это, если управляющая программа вырабатывает соответствующий сигнал. Напряжение +3-+5 вольт подают от внешнего стабилизированного источника питания.
Программатор спокойно работает при напряжении +3 вольта, поэтому если вы программируете уже с припаянным дисплеем, следите за напряжением. Дисплеи очень чувствительны к завышенному напряжению, и больше +3,8 вольта на них подавать категорически не советую.
Для программирования нам понадобится программа PonyProg. В программе нужно загрузить прошивку, выбрать тип микроконтроллера и программатор. Для того чтобы микроконтроллер работал на нужной частоте, в настройке нужно указать следующие данные.
После прошивания микроконтроллера можно отключать программатор от компьютера и питания.
В прошивке реализован алгоритм подстройки контраста дисплея. Для того чтобы увидеть изображение (при условии, что все собрано правильно), после программирования микроконтроллера необходимо зажать одну из кнопок, не важно какую, после этого подать питание и отпустить кнопку. Через несколько секунд вы увидите, что начинает проявляться изображение. Когда вы дойдете до оптимального контраста, просто нажмите на одну из кнопок. Значение, которое вы выбрали, будет записано в EEPROM кристалла.
Итак, последовательность действий:
1) зажать кнопку;
2) подать питание;
3) отпустить кнопку и ждать;
4) нажать на кнопку, когда будет достаточный контраст.
Вот собственно и весь не сложный процесс изготовления "продвинутого" самодельного термометра.
Автор прошивки ZAK (администратор проекта www.md4u.ru).
Обсуждение статьи идет тут.