Page 1 of 4

часы в машину на atmega 8

Posted: 25 May 2015 18:42
by sergioflash
Есть часы из ланоса, в 12 часовом формате, нашел на просторах интернета интересную схемку переделки, точнее новых внутренностей часов с 2 термометрами и вольтметром
Вот описание

В прошлом году я переделал себе подсветку в машине – приборная панель и все кнопочки белые, стрелки красные. Часы выбивались из общего фона.
Часы у меня трехкнопочные с индикатором типа ИВЛ, зеленого свечения. К тому же, формат времени 12 часовой. Для меня привычнее – 24 часа.
Поэтому было принято решение сделать себе часики на основе светодиодных семисегментных индикаторах. Хотел белого свечения – не нашел, хотя особо не искал. Купил красный - BQ-M326RD – ультраяркий, общий анод, высота сегмента 9,2 мм. Стоимость – 14 грн. Микроконтроллер применил – AТmega8 (10 грн). Снял часы с машины, разобрал, изготовил две платы в тех же габаритах. Внизу на фото часы уже в машине - 1) время, 2) температура 3) в режиме настроек, изменение минут.

ImageImage ImageImage ImageImage




Часы работают в 24-х часовом режиме. Кроме того, измеряют и индицируют температуру воздуха от двух датчиков (наружный и салон), напряжение на АКБ. Делать таймер, календарь, будильник не стал – в машине мне это не нужно. Режимы индикации переключаются кнопкой “S” по кругу – ВРЕМЯ, ТЕМПЕРАТУРА №1, ТЕМПЕРАТУРА №2, НАПРЯЖЕНИЕ.
В часах есть режим настроек. Вход/выход в него нажать и удерживать кнопку “S” больше 2,5 сек. В настройках шесть подпунктов, которые переключаются кратким нажатием “S”.
1 – установка часов (0-23);
2 – установка минут (0-59);
3 – установка яркости свечения индикаторов в режиме «день» (1-31);
4 – установка яркости свечения индикаторов в режиме «ночь» (1-31);
5 – корректировка хода часов (-59 сек – 59 сек);
6 – поправочный коэффициент по измерению напряжения (0 – 100). При значении равном 50 – коэффициент не вносит поправку.
Изменять значения можно с помощью кнопок «Н» (в сторону увеличения) и «М» (уменьшение).
Индикация температур и напряжения выполняется с точностью 0,1.
Со старых часов я выпаял шестипиновый разъем, кнопки, кварцевый резонатор и конденсаторы, которые с ним были установлены.
Стоимость всех деталей мне обошлась около 70 грн с изготовлением платок.

Схема часов.

ImageImage ImageImage


Печатные платы сделаны с помощь программы Sprint-Layout 5.0. Платы делал односторонними, пришлось ставить насколько перемычек.
Прикрепленный файл Платы.zip 26,21К Количество загрузок: 90
Прошивочка прилагается
Прикрепленный файл Прошивка.zip 4,13К Количество загрузок: 57
[*][/i]

связался с автором, он поделился исходником
Фьюзы перед первым использованием сначала прочитать. Там должны быть заводские установки. Нас интересуют только CKSEL3..0. По умолчанию они 0001 - это работа от встроенного RC-генератора. Нам нужно запустится от кварца. Меняем только 3 фьюза CKSEL3..1 на 111. Итого по CKSEL3..0 получим 1111.

баги выявленные автором но не исправленные:
неправильно показывает термометр минусовую температуру.

Может кто может поправить исходник, и также добавить индикацию значка градуса при измерении температуры, и значка напряжения, при измерении бортовой сети.

Re: часы в машину на atmega 8

Posted: 26 May 2015 14:56
by IYra
sergioflash wrote:Может кто может поправить исходник, и также добавить индикацию значка градуса при измерении температуры, и значка напряжения, при измерении бортовой сети.
Исходники похоже для WinAVR. У меня его нет. По кодам посмотрел. Действительно
температура только положительная. Могу подсказать где и что поменять.
А значок градуса выводить при 4 знаках индикатора и -20.0 - не влезет.
Проще округлить температуру до градуса и будет сразу видно где T а где V

Re: часы в машину на atmega 8

Posted: 26 May 2015 18:01
by sergioflash
IYra wrote: По кодам посмотрел. Действительно
температура только положительная. Могу подсказать где и что поменять.
буду признателен
IYra wrote:А значок градуса выводить при 4 знаках индикатора и -20.0 - не влезет.
Проще округлить температуру до градуса и будет сразу видно где T а где V
при температуре ниже -9,9 градусов, значек можно и не выводить, или же при - 10 и ниже округлять значения но со значком, такое реально?

Re: часы в машину на atmega 8

Posted: 26 May 2015 22:57
by IYra
Попробовал AVR Studio 4 открыть - но там только отладка
Попробовал создать новый проект и перетащить туда chasy.c и ds18b20.c
при компиляции выдает ошибки.
Какая там среда программирования ?

Re: часы в машину на atmega 8

Posted: 26 May 2015 23:34
by sergioflash
winavr, номально открывается и нормально компилируется проект

Re: часы в машину на atmega 8

Posted: 28 May 2015 22:09
by IYra
sergioflash wrote:winavr, номально открывается и нормально компилируется проект
Это да. А вот модель в Протеусе не хочет работать с 1-wire
Прикрепил модель и два хекса.
otlad.hex - там жестко прописаны две температуры просто для Протеуса
chasy.hex - в Протеусе выдает температуру 99.9 (ошибка CRC)
а что будет в железе ? Вывод напряжения может изменится. Резал по живому

Re: часы в машину на atmega 8

Posted: 28 May 2015 23:42
by sergioflash
залил прошивку для часов
первый термометр
IMG_20150528_233229.jpg
второй термометр, датчик отсутствует
IMG_20150528_233236.jpg
напряжение изменилось, в настройках выставил коэффициент 99, напряжение измеренное тестером 14,4 В
IMG_20150528_233303.jpg
при уменьшении коэффициента показания индикатора лезут вверх

Re: часы в машину на atmega 8

Posted: 29 May 2015 10:49
by IYra
sergioflash wrote:залил прошивку для часов
первый термометр
надо было еще в холодильнике проверить на -
sergioflash wrote: второй термометр, датчик отсутствует
Так и должно быть
sergioflash wrote: напряжение изменилось, в настройках выставил коэффициент 99, напряжение измеренное тестером 14,4 В
при уменьшении коэффициента показания индикатора лезут вверх
Это я поправил.

Re: часы в машину на atmega 8

Posted: 30 May 2015 02:08
by sergioflash
напряжение пришло в норму,
минусовую температуру, так и не меряет

Re: часы в машину на atmega 8

Posted: 30 May 2015 11:57
by IYra
sergioflash wrote:минусовую температуру, так и не меряет
А что показывает индикатор. Я запустил в Протеусе старый хекс. При
переходе в "-" температура становится 50 гр
Прикладываю новый хекс. Там должно все быть как просил.

Re: часы в машину на atmega 8

Posted: 30 May 2015 16:29
by sergioflash
супер, температуру показывает нормально
IMG_7901.JPG
IMG_7902.JPG
а вольтметр живет своей жизнью
ImageImage

ImageImage

Re: часы в машину на atmega 8

Posted: 30 May 2015 17:58
by IYra
sergioflash wrote: а вольтметр живет своей жизнью
а на том хексе (старом) что ты выложил вольтметр нормально показывает ?
мне напряжение на модели не проверить - нет вывода ADC6

Re: часы в машину на atmega 8

Posted: 30 May 2015 20:07
by sergioflash
да там нормально, также в chasy1.rar выложенном тобой, тоже норм работает

Re: часы в машину на atmega 8

Posted: 30 May 2015 21:39
by IYra
IYra wrote:
sergioflash wrote: а вольтметр живет своей жизнью
а на том хексе (старом) что ты выложил вольтметр нормально показывает ?
мне напряжение на модели не проверить - нет вывода ADC6
Нашел модель с ADC6 - действительно показывает фигню очень похожую на фотки
Поправил.

Re: часы в машину на atmega 8

Posted: 30 May 2015 21:55
by sergioflash
да изменилось, напряжение показывает, но не правильно, ситуация такая как я описывал раньше
sergioflash wrote:напряжение изменилось, в настройках выставил коэффициент 99, напряжение измеренное тестером 14,4 В
IMG_20150528_233303.jpg

при уменьшении коэффициента показания индикатора лезут вверх

Re: часы в машину на atmega 8

Posted: 31 May 2015 10:18
by IYra
sergioflash wrote: при уменьшении коэффициента показания индикатора лезут вверх
Дак это и на старой прошивке так. Судя по коду значение делится на коэффициент.
Можно просто делитель увеличить. Поставить 3 кОм вместо 3.9

Re: часы в машину на atmega 8

Posted: 31 May 2015 11:35
by sergioflash
IYra wrote:Дак это и на старой прошивке так. Судя по коду значение делится на коэффициент.
на старой не так, там номинальное напряжение показывало при коэффициенте 51, и при увеличении его, показания повышались.
IYra wrote:Можно просто делитель увеличить. Поставить 3 кОм вместо 3.9
можно, и так, но хочется аппаратную часть оставить без изменений, возможно не я один их повторил.

Re: часы в машину на atmega 8

Posted: 31 May 2015 12:06
by IYra
sergioflash wrote: на старой не так, там номинальное напряжение показывало при коэффициенте 51, и при увеличении его, показания повышались.
Я еше поправил. Тоже номинальное напряжение показывает при коэффициенте 51. Но при увеличение коэфф.
напряжение уменьшается. И на старом хексе также было в модели.
Ну да ладно. Вот окончательный вариант. Аппаратная часть - без изменений

Re: часы в машину на atmega 8

Posted: 31 May 2015 12:37
by sergioflash
IYra wrote:Я еше поправил. Тоже номинальное напряжение показывает при коэффициенте 51. Но при увеличение коэфф.
напряжение уменьшается. И на старом хексе также было в модели.
все верно, я очень не внимательный
Прошивочка супер, очень благодарен, все как я и хотел
правленый исходник выложите?

Re: часы в машину на atmega 8

Posted: 31 May 2015 18:05
by IYra
sergioflash wrote: правленый исходник выложите?
Выкладываю. Там еще библиотека для Mega8 в корпусе TQFP32A
если кто захочет поиграться в Протеусе

Re: часы в машину на atmega 8

Posted: 23 Jun 2015 23:30
by sergioflash
покатались часы в машине, и вылезли баги,
непонятка с термометром, первый раз при установке, температура показывала норм, через неделю примерно, перестала отображать нормально, показывает постоянно 0,0, снял, подключил дома, тоже 0,0
перезачистил провода, перепаял датчик, показывает норм, поставил назад в машину, через неделю опять 0,0, где копать?
аппаратная проблема и программная?

Re: часы в машину на atmega 8

Posted: 24 Jun 2015 10:07
by IYra
sergioflash wrote: первый раз при установке, температура показывала норм, через неделю примерно, перестала отображать нормально, показывает постоянно 0,0, снял, подключил дома, тоже 0,0
перезачистил провода, перепаял датчик, показывает норм, поставил назад в машину, через неделю опять 0,0, где копать?
аппаратная проблема и программная?
И что 0.0 на обоих датчиках ? Похоже что датчик отваливается.

Re: часы в машину на atmega 8

Posted: 24 Jun 2015 20:11
by sergioflash
IYra wrote:
sergioflash wrote: первый раз при установке, температура показывала норм, через неделю примерно, перестала отображать нормально, показывает постоянно 0,0, снял, подключил дома, тоже 0,0
перезачистил провода, перепаял датчик, показывает норм, поставил назад в машину, через неделю опять 0,0, где копать?
аппаратная проблема и программная?
И что 0.0 на обоих датчиках ? Похоже что датчик отваливается.
второй пока не подключен, та всегда 99,9

Re: часы в машину на atmega 8

Posted: 24 Jun 2015 22:32
by IYra
sergioflash wrote: второй пока не подключен, та всегда 99,9
Ну как вариант для начала подключить второй датчик. Первый где стоит ?
И посмотреть как они себя поведут.

Re: часы в машину на atmega 8

Posted: 01 Jul 2015 21:05
by sergioflash
добрался до машины :-) , разобрал панель чтоб снять часы, обесточил часы, и опять подключил, термометр норм стал показывать(сначала проскочили 99,9, а потом нормальные градусы)