Цифровой термометр на базе ATtiny2313 и трёх-символьном цифровом индикаторе |
Автор Hardwarest | |||||||
10.04.2007 г. | |||||||
Многие из компьютерных энтузиастов предпочитают автономно контролировать температуру ответственных зон, таких как процессор, чипсет и.т.д. Но, к сожалению таких термометров, не напасёшься, а встроенный мониторинг оставляет желать лучшего. Если вас не устраивает встроенный мониторинг, а готовые имеют высокую погрешность и их тяжело достать - тогда почему б не сделать автономный термометр самому. Термометр построен на базе микроконтроллера ATtiny2313, его преимущество в том, что он не требует кварца и цена 2$ за штуку. Данные выводятся на трёх-сегментный светодиодный индикатор с общим катодом. В качестве термометра выступает микросхема DS1820. Детали необходимые для автономного термометра: · Микроконтроллер – Attiny2313 в (SOIC или DIP корпусе) · Резистор 4,7кОм (SMD или обычный) · 3-х символьный семи сегментный индикатор с общим катодом (например, Kingbright BA56-12EWA или GNT-5631AS-21) · Термометр DS18B20 Программная часть термометра: И так схема:
Тут всё просто. Для прошивки микроконтроллера нужен программатор. Программатор подключается к LPT порту, и собран на базе 74HC244. Список деталей необходимый для сборки программатора: · Микросхема 74HC244 · Красный светодиод · Зелёный светодиод · Два резистора 470Ом · Резистор 4,7кОм · Конденсатор 0,1мкФ · Диод 1N4148 И так схема:
Она не слишком сложная. Собрать его можно на монтажной плате, если вы, конечно, не занимаетесь прошивкой в промышленных масштабах. Вот вариант моего программатора:
Если вам лень собирать программатор, и вы ищете вариант попроще, то можно контролер подключить напрямую к LPT порту. Подключение. 19 вывод контроллера (SCK) подключаем к 6 выводу LPT порта. 18 вывод контроллера (MISO) подключаем к 10 выводу LPT порта. 17 вывод контроллера (MOSI) подключаем к 7 выводу LPT порта. 1 вывод контроллера (RESET) подключаем к 9 выводу LPT порта. 25 вывод LPT порта подключаем на массу Соединить 2 и 12 вывод Подключить питание к контроллеру, в данном случае 20 на VCC и 10 на GND Такой программатор использовать, категорически не советую. Схема не имеет промежуточного буфера и не имеет гальванической развязки по отношению к параллельному порту, поэтому во избежание вывода из строя параллельного порта подключать и отключать кабель следует при выключенном питании на плате, где установлен контроллер. Кроме того, когда программатор подключен к параллельному порту, следует избегать короткого замыкания его выводов. Из практики стоит отметить чрезмерный выход из строя самих контроллеров. Они просто перестают определяться и функционировать. Теперь прошивка. Прошивку лучше всего заливать программой PonyProg2000 версии 2.06f Программу можно взять тут ponyprogV206f Перейдём к настройке программы. 1. Нужно выбрать программатор. Вкладка Setup –> Interface Setup, нужно выбрать Parallel port и выбираем пункт AVR ISP I/O
2. Загрузить файл прошивки. Прошивку можно взять тут, её автор NAPman, за это ему большое спасибо. 3. Считываем с контроллера конфигурационные биты (кнопочка в виде замочка). Устанавливаем галочки на CKSEL3, CKSEL 2, CKSEL 0 и SUT0
4. И приступаем к прошивке. Вкладка Command -> Write All (или Ctrl+W) Приступаем к сборке. Сначала термометр собирался на монтажке, но лучше всего собирать на плату.
Далее термометр был собран на плату проекта Very Big Tower Вывод Мы с вами видим, что при помощи контроллера ATtiny2313 и парочки прямых рук можно собрать неплохой термометр, у которого погрешность 0.1 градус. |
« Пред. |
---|