Mega Termo

Конкурсная конструкция термометра выложенная на «Радиокоте».



Сделал к ней плату….хотелось сделать все минимальных размеров с питанием от CR2032))) Добавлена подсветка дисплея.
Применен односторонний фольгированный стеклотекстолит толщиной 0,5-0,8мм. По монтажу компонентов на плате после просмотра фото думаю вопросов не будет. На плате присутствуют подписанные пятачки для ISP программирования, фьюзы не трогать! Прошивать только флэш. 
Файл печатки в формате Дип Тресси и в PDF(готовая для ЛУТа).
ЗЫ: на фото плата с небольшой ошибкой, кнопки местами перепутаны. Все исправлено!
Скачать

Gordon_shumway 

Обновление схемы и прошивки — теперь питание на датчики подается только на время измерения, измерение производится раз в 67 секунд.   -скачвть

30 комментариев

  1. Доброго времени суток !

    Приятно видеть, что моя конструкция пошла по дружественным сайтам ! biggrin

    Я при разработке сначала тоже думал запитаться от такой батареи, но на ней девайс прожил очень недолго. Есть идеи — увеличить шаг времени измерения с 15 секунд до 1 минуты, и запитывать датчики DS18b20 только на время снятия информации с них, благо свободных ног микроконтроллера хватает. Это дольше сохранит батарею.
    Моя батарея CR123 проработала с конца августа до конца октября, но я брал дешевую батарею.
    И вопрос с корпусом пока остался открытым.

  2. да опросс датчиков часто не надо! раз в 10 минут достаточно!
    а то что без корпуса это нормально, не плохо юы было еще и давления с влажностью измерять))

  3. Ну раз в 10 минут наверное маловато, проще всего сделать раз в минуту. Сделаю, когда выйду из отпуска.

  4. Приятно видеть тут авторов своих конструкций)))
    Согласен, нужны доработки для уменьшения потребления схемы. У меня вопрос, такое ощющение что девайс завышает показ температуры. Не может же быть температура +27С в квартире? У меня это не первая конструкция на DS18B20…у всех идет такое завышение температуры, в чем может быть проблема?
    зы: все же нужно переходить на другие дисплеи к примеру от Нокия 1110, и подключать к схеме легче и подсветка встроенная и по цене и возможности купить на Ебей легче!

  5. Кстати, неплохо еще ввести режим инверсии дисплея

  6. Доброго времени суток !
    Про завышение температуры — не сталкивался. Проверял свои девайсы по промышленным термометрам — вроде все совпадает.
    Про дисплей — от Нокий 3310 у нас на рынке (Москва, Митинский радиорынок) купил по 50 рублей сразу десяток (там комплект из дисплея, подложки клавиатуры и динамика).
    Про 1110 — надо посмотреть, я пока с ними не работал.
    Про инверсию — а зачем ? Мне показалось, что будет не очень красиво.

  7. У меня нету поблизости радиорынков…все беру через инет, там либо оптом брать либо намного дороже 100руб.
    1110 заказал через Ебей, получилось менее 100руб за штуку. Разрешение у дисплея такое же 48х84 в дисплее есть шлейф на выводы плюс встроенная подсветка

  8. Доброго времени суток !

    Обновление схемы и прошивки — теперь питание на датчики подается только на время измерения, измерение производится раз в 67 секунд.
    Качать тут…

  9. респект!

  10. привет. собрал работает. но картинка на дисплее разбежалась. есть версия прошивки под другой дисплей? или исходники можно засветить?

  11. Доброго времени суток !

    Файлов проекта сейчас под рукой нет, они есть на первоисточнике.

    Я тоже брал дисплее на митьке, в Профи на первом этаже. Там в комплекте с динамиком и толкателями для кнопок.

  12. ну да и я там же…. ток у меня на железке там где на картинке nokia написано у меня там скобка вторая

  13. Завтра сфоткаю свой дисплей и покажу.

  14. а как сюда картинку вставить…

  15. загузи ее на радикал http://www.radikal.ru/ а потом вставь ссылку

  16. http://s018.radikal.ru/i515/1202/3c/dc40d159261c.jpg вот такую картинку я наблюдаю…

  17. У тебя дисплей НЕ оригинальный, тут надо прошивку править под китайский клон.

  18. Я делал с китайским дисплеем с двумя скобками. Такая же наклейка с буквами ST.

  19. Picavit я то же так подумал изначально… но как пишет в 18 посте автор- дисплей у меня такойже…

    Gordon_shumway хм странно покупали в одном месте, дисплеи одинаковые а результат разный….. перепрошивка не помогла…

  20. Да, странно… Может какая бяка в печатке ? Или дисплей такой оказался — с глюком. Или в Профи сменили поставщика, я брал весной и сразу десяток.

  21. да печатку по твоему рисунку утюгом делал… коротыши и обрывы прозвонил … дисплея 2 брал одинаковая фигня… контролер без ошибок шъется…. у тебя исходники на бейсике написаны…. в этом разделе есть схема дозиметра сталкера. там как раз версия прошивки под разные китайские дисплеи с дугой и без. добавляется одна строка в которой смещается адресное пространство…. как это в твоих исходниках сделать я чот не доганаяю))) sad
    lcd_send (0×21, lcd_cmd);

    lcd_send (0×40+5, lcd_cmd);//только для китайских экранов без дуги слева

    lcd_send (0xC5, lcd_cmd);
    lcd_send (0×06, lcd_cmd);
    lcd_send (0×14, lcd_cmd);//13
    lcd_send (0×20, lcd_cmd);
    lcd_send (0x0C, lcd_cmd);

    да и так то он работает… температуру то мерит… проверил печатку впаял другой контролер эфект тот же. значит разница именно в дисплеях

  22. На радиокоте в конце стьатьи про мегатермо есть архив с оригинальной библиотекой для этого дислея под баском с примером. Попробуйте пример с вашим дисплеем.
    Я тоже поиграюсь, но позже, сейчас немного не до дисплеев…

  23. #ifdef CHINA_LCD // Алгоритм для китайского ЖК из нестандартным контроллером

    byte x,y;

    // 102 x 64 — таково предполагаемое разрешение буфера китайского ЖК, при чем
    // память буфера отображается на дисплей со сдвигом вверх на 3 пикселя.
    // Поэтому выводим картинку ниже — начиная с второй строки y+1, а потом
    // сдвинем вверх (опять таки фича китайца, полезная в данном случае)

    x = LoWaterMark % LCD_X_RES; // Устанавливаем начальный адрес x
    LcdSend( 0×80 | x, LCD_CMD ); // относительно нижней границы LoWaterMark

    y = LoWaterMark / LCD_X_RES + 1; // Устанавливаем начальный адрес y+1
    LcdSend( 0×40 | y, LCD_CMD ); // относительно нижней границы LoWaterMark

    for ( i = LoWaterMark; i <= HiWaterMark; i++ )
    {
    // передаем данные в буфер дисплея
    LcdSend( LcdCache[i], LCD_DATA );

    x++; // заодно подсчитываем координату x, чтобы вовремя перейти на новую строку
    if (x >= LCD_X_RES) // если вышли за предел, то переходим на следующую строку (x=0; y++)
    {
    // проще говоря, чтобы верно заполнить нужную часть нестандартного буфера,
    // придется явно указывать требуемый адрес, иначе все поплывет smile
    x=0;
    LcdSend( 0×80, LCD_CMD );
    y++;
    LcdSend( 0×40 | y, LCD_CMD );
    }
    }

    LcdSend( 0×21, LCD_CMD ); // Включаем расширенный набор команд
    LcdSend( 0×45, LCD_CMD ); // Сдвигаем картинку на 5 пикселей вверх
    //(нестандартная команда китайца, оригинал её игнорирует)
    LcdSend( 0×20, LCD_CMD ); // Включаем стандартный набор команд и горизонтальную адресацию

    #else // Алгоритм для оригинального дисплея

    // Устанавливаем начальный адрес в соответствии к LoWaterMark
    LcdSend( 0×80 | ( LoWaterMark % LCD_X_RES ), LCD_CMD );
    LcdSend( 0×40 | ( LoWaterMark / LCD_X_RES ), LCD_CMD );

    // Обновляем необходимую часть буфера дисплея
    for ( i = LoWaterMark; i <= HiWaterMark; i++ )
    {
    // Для оригинального дисплея не нужно следить за адресом в буфере,
    // можно просто последовательно выводить данные
    LcdSend( LcdCache[i], LCD_DATA );
    }

    #endif

    // Сброс указателей границ в пустоту
    LoWaterMark = LCD_CACHE_SIZE — 1;
    HiWaterMark = 0;

    // Сброс флага изменений кэша
    UpdateLcd = FALSE;
    }

  24. вот она разница. вот только как это преложить на баском незнаю..

  25. вопрос на засыпку. а чем отличается начальный hex файл от того который якобы изменен в 8 посте? я разницы незаметил…

  26. Обращение к датчикам произходит реже — каждые 67 секунд (было каждые 15 секунд). Сделано для экономии батарейки.

  27. текст я прочел. но если вы попробуете еще ее прошить… то разницы не заметите. + сравните время и дату создания первой и второй прошивки, в чем разница? коды тоже абсолютно идентичны) я так подозреваю что вы перепутали прошивки когда архив создавали)

  28. вячеслав каталимов Ответить 30.11.-0001 около 00:00

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

  29. Здраствуйте.Скинте,пожалуйста,готовую прошивку под китайский дисплей.

  30. Здраствуйте.не могу найти десплей 3310 не где.Вы не могли переделать под десплей 1110 или 1202?