Термометр PIC16F683+TIC3321
|
|
anatol |
Дата: Пн, 31.05.2010, 14:23 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
Купил себе по акции PICrit2 программатор ну и началось... Захотелось несколько дешевых ПИКов и ЖКИ чтобы знаки покрупнее и соединений поменьше. Термометр как первый проект был выбран по необходимости на работе, важна была экономичность. Результат 1 резистор, 1 ПИК, 1 индикатор, 1 датчик плюс питание (устойчивая работа от 2,5 В до 5 В ). В прикрепленном файле исходник, прошивка и "модель" моей первой разработки. В последующем планируется перевод в режим программирования термостата и работа с АЦП и ШИМ (паяльник с термопарой). Клавиатура на резистивном делителе использующая один вход. Если у кого есть наработки ( на бейсике ) просьба поделиться. К сожалению возраст (немного за 50 ) и стойкое нежелание мозга освоить английский затрудняют работу. Proteus 7.6 sp4 и Proton 2.0.05. Схема потребляет 1.5 мА при частоте 4 мГц и 0,6 мА при 32 кГц (устанавливается конфигурацией). Индикатор TIC3321 работает при -10 градусах. Проверил в морозильной камере.
Сообщение отредактировал
anatol - Пн, 31.05.2010, 15:43
|
|
|
|
Dmitry |
Дата: Пн, 31.05.2010, 23:18 | Сообщение # 2 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Прикольная штучка. Минимальная цена и сложность - сам такое люблю. Жрет правда все равно много - на автономное питание не повесишь, быстро высосет батарейку. Надо так: дал команду DS-ке, заснул, через секунду проснулся, считал DS-ку, вывел, заснул опять на секунду. Получится обновление с частотой 0,5 Гц и потребление в разы меньше. А, еще от 0 до -10 градусов тоже надо бы с десятичной дробью выводить, разрядов же хватает.
|
|
|
|
anatol |
Дата: Пн, 31.05.2010, 23:41 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
Dmitry. Я решал в основном проблему освоения программирования ПИКов. И в основном создания "модели" TIC3321 для проверки следующих разработок. Режим сна можно ввести, а также запитать датчик от порта - но это не изделие (пусть работоспособное), а ЗАГОТОВОЧКА. К сожалению создать полноценную модель для протеуса не в силах (да и желания особого нет). А PIC12F683 заинтересовал своей наполненностью (покруче будет PIC16F84A или PIC16F628A) при своей маленькой цене.
|
|
|
|
Wictorych |
Дата: Сб, 24.07.2010, 11:47 | Сообщение # 4 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
53
Замечания:
±
На сайте с 11.07.2010
Статус:
Offline
|
Дабы не плодить тем (уже одну не там создал) спрошу здесь... Будем считать продолжением http://www.picbasic.ru/forum/8-452-1 Значит вооот: После инвертирования данные показометра изменились с 890 на 64635, ну не суть... Это гдето комнатная температура, ну пусть 25 градусов. Теперь при повышении температуры показометр увеличивает значение, и соотв-но наоборот... супер ! Но поскольку зависимость сопротивления от температуры нелинейная, то как организовать преобразование данных ? Например: 64630 - 64635 это 25 64625 - 64630 это 24,9 ... а дальше значительное расширение диапазона 64500 - 64600 это 22 64300 - 64500 это 22,5 Надеюсь понятны выразил мысли... Массив какой создавать чтоли, или IF'ами описывать ?!
|
|
|
|
brown |
Дата: Сб, 24.07.2010, 20:54 | Сообщение # 5 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
333
Замечания:
±
На сайте с 18.09.2007
Статус:
Offline
|
Quote Зависимость сопротивления тер- мистора R2 от температуры в общем случае носит нелинейный характер, поэтому используется табличный метод с заранее подобранными коэффициентами. Таблица преобразования напряжения АЦП в температуру предварительно заносится в ПЗУ МК; В этом у меня опыта нет.
Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
|
|
|
|
Dmitry |
Дата: Сб, 24.07.2010, 21:31 | Сообщение # 6 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Quote (Wictorych) Массив какой создавать чтоли, или IF'ами описывать ?! Если зависимость в интересующем диапазоне действительно нелинейная, то да, городить таблицу в памяти. Оператор LOOKUPL тут очень пригодится. Я на нем даже психрометрическую таблицу в ПИК засунул
|
|
|
|
Wictorych |
Дата: Вт, 27.07.2010, 18:04 | Сообщение # 7 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
53
Замечания:
±
На сайте с 11.07.2010
Статус:
Offline
|
Dmitry, возможно ли подсмотреть примеры "общения" с внутренним ПЗУ МК. Каким образом заполняется память, и как соответственно потом это все считывается... ? Интересен также вариант корректировки данных. Т.е. когда МК уже прошит и работает в схеме, данные в "таблицу ПЗУ" заносятся с клавиатуры..
Сообщение отредактировал
Wictorych - Вт, 27.07.2010, 18:07
|
|
|
|
Dmitry |
Дата: Чт, 29.07.2010, 23:26 | Сообщение # 8 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Та я пытался ответить, форум писал "недостаточно прав"... Смотря что понимать под "внутренним ПЗУ". У пиков их два - память программ и память данных. Первая больше по размеру, но не все пики могут сами в нее писать, и ресурс у нее поменьше. Вторая (память данных) - она поменьше, сотни байт, но писать туда могут все пики и ресурс у нее на порядок выше. Запись в нее - команда: EWRITE адрес, значение,значение,значение,... считывание - команда: переменная = EREAD адрес При записи/чтении следите за размером переменных, т.е. если пишете число большее 255 (и меньше 65536), то это уже WORD, считывайте в такую же переменную, и адрес при следующем записи/чтении увеличивайте на 2, а не на 1-цу. Поскольку планируется изменять таблицу в процессе работы, то команда LOOKUPL вам не подойдет, в ней значения в таблице задаются в тексте программы.
|
|
|
|
Wictorych |
Дата: Пт, 30.07.2010, 00:27 | Сообщение # 9 |
Группа:
Пользователи
Ранг:
Пытаюсь разобраться
Сообщений:
53
Замечания:
±
На сайте с 11.07.2010
Статус:
Offline
|
Dmitry, Я некорректно выразился, имелся в виду EEPROM конечно... Спасибо за упомянутые выше команды, все = пригодятся ! Мдааа, вот я себе придумал ! Ну его этот ММТ-4, надо прикупить DS18B20 !
|
|
|
|
Dmitry |
Дата: Пт, 30.07.2010, 23:34 | Сообщение # 10 |
Группа:
Пользователи
Ранг:
Могу и подсказать
Сообщений:
157
Замечания:
±
На сайте с 12.05.2009
Статус:
Offline
|
Quote (Wictorych) Ну его этот ММТ-4, надо прикупить DS18B20 ! Это правильно, если диапазон устраивает. Правда там тоже не дважды два, сначала репу чуток почухать надо, зато потом красота-а
|
|
|
|