24 февраля 2022 года в 5 утра, без объявления войны, россия напала на Украину.

Они пришли "освобождать народ от нацистов и националистов".
С этого момента наша жизнь изменилась на "до" и "после".
Нас освобождают от наших домов, от наших любимых, от наших родителей и от наших детей....
Тут я не буду никого агитировать или переубеждать, разумный человек найдёт всю информацию
в интернете, а для зомби никакие доводы и факты не послужат аргументом.

Я не умею много писать, да и без мата тут сложно что-то написать.
Поэтому выражу все мои чувства одним фото.

«Спасибо дедушка путин за счастливое детство и мое освобождение». ©

Дополню словами уважаемого человека, широко известного в узких кругах:
тут путин не виноват, не он нажал на кнопку сброса,
- виноват пилот, который нажал на кнопку сброса, мог промахнуться. виноваты жена/мать/брат/друг пилота, которые не позвонили ему, и не сказали "нет войне",
- виноват тот, кто отдал приказ, и виноваты его жена/мать/брат/друг,
- виноват тот, кто цеплял бомбу, потому что он мог её обезвредить, "ну бывает, не сработала",
- виноват кладовщик, виноват водитель, который перевозил эту бомбу. виноваты жена...и т.д., потому что не позвонили и не сказали "нет войне, не вези бомбы",
- виноваты все журналисты оркостана, потому что они врут,
- виноваты недограждане, потому что не сказали журналистам "не врите",
- виноваты все... все 160 миллионов,
- а те 2, 3, 5 тысяч, которые вышли, и которых запаковали, это даже не десятая процента, это погрешность... случайно оказавшиеся в мордоре люди. ©

PS: За несколько часов до вторжения был атакован и взломан крупный интернет хостинг в Киеве, где и размещался мой сайт. Только 16 марта отважным админам удалось частично восстановить работу хостинга. Далеко не все сайты выжили, т.к. были повреждены даже бэкапы.
Нет, нет, я не жалуюсь, нет. В цифровом мире нет ничего ценного, материального...


Due to periodic DDoS attacks, the forum may not be available.

Термостат ∆T=0,1°C

Здесь только проекты на ATtiny
Post Reply
space_s
Пробегал мимо
Posts: 12
Joined: 14 Oct 2011 16:07
Location: Киев

Re: Термостат ∆T=0,1°C

Post by space_s »

Собрал устройство.
Изменил прошивку под свои нужны (добавил функцию диммирования как в тахометре).
Прошил контроллер ATTINY2313A через режим параллельного программирования используя программатор Uniprog.
Запустил устройство.
Всё заработало нормально, все функции отрабатывались как положено, единственное, пришлось подбирать номинал резистора для термодатчика.
После удачного запуска системы решил подправить прошивку на предмет изменения яркости свечения индикатора.
Прошил новую прошивку - устройство не работает (даже дисплей не светится).
Проверил питание, промыл и просмотрел плату, проверил индикатор - устройство не работает.
Купил новый контроллер залил оригинальную прошивку автора, вернул аппаратную часть в первозданный вид - устройство не работает.
После прошивки контроллера всегда сверял записанные данные и исходные - все идентично.
Фьюз биты выставлял как указано:
CKSEL0=1
CKSEL1=1
CKSEL3=1
SUT0=1
SPMEN=1
Остальные=0

Поломал голову и не могу понять в чем дело?
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

space_s, если не работает то, что работало, то либо сопли где-то , либо софт. Если софт исключили, то значит сопли. ищите.
hvurt
Пробегал мимо
Posts: 6
Joined: 06 Jul 2012 11:17
Contact:

Re: Термостат ∆T=0,1°C

Post by hvurt »

ZimA wrote:hvurt а судьи кто? С чем сравниваешь? Эталон?
сравнивал с ртутным термометром и мультиметром(не китайским Proskit 3PK – 8205С).
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Доброго времени суток.
Собирал данный термостат - все работало. Возникла необходимость собрать еще один - при включении светятся "8" и точки во всех разрядах. Разводка плат - абсолютно идентичная ибо обе платы делались из одного шаблона с помощью фоторезиста. В чем может быть дело?

P.S. датчик подключен по трехпроводной схеме.

Спасибо за внимание.
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem, ОА/ОК. Проверяйте.
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Сменил прошивку на противоположную - при включении загорается левый ноль и кратковременно точка в первом разряде. Что это означает? Не определяется датчик?
При нажатии на кнопку - во всех разрядах 4-ки.

Обнаружился еще один глюк - при нажатии на "+" значение на дисплей выводит, но изменить его нельзя в большую сторону. Кнопка "-" функционирует как положено.
Спасибо за внимание.
ZimA
Частенько бываю
Posts: 58
Joined: 13 Aug 2010 09:52
Location: Красноярск

Re: Термостат ∆T=0,1°C

Post by ZimA »

Artem- перешить
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem, не прошился eeprom. Прошить заново.
ironn
Пробегал мимо
Posts: 1
Joined: 01 Aug 2012 11:30
Location: Украина, Харьков

Re: Термостат ∆T=0,1°C

Post by ironn »

А можно ли приобрести уже собранную данную конструкцию?
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

ironn, нет.
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Спасибо, помогло. Затурканый какой-то я, до простых вещей не догадался :(.
within
Пробегал мимо
Posts: 6
Joined: 03 Jul 2012 08:11
Location: Николаев

Re: Термостат ∆T=0,1°C

Post by within »

Так вот. Откопал я на работе термометр 1959 года для отопительного котла. Приглянулся он мне уж.
И решил я туда вставить современную начинку. После не очень долгих размышлений было принято
решение использовать трёхфазный моторчик от флоппика + часть механики от старых часов. После
опять же не очень долгих опытов исполнительная часть, шкала и плата были готовы. Для проверки и
подгонки шкалы переменную Tnew увеличивал на каждом прерывании на 10. Короче говоря, механика
работает неплохо. Хоть и не идеально. Проблема холостого хода механики при изменении направления
вращения будет решена позже. Да и вопрос, что же делать, если свет откючили? Не разбирать же его
каждый раз) Но это всё потом, а пока... Самая главная проблема: а как же получить это значение
Tnew от датчика? К слову, формат типа "больше/меньше 1000" меня устраивает очень-очень) Ведь знак
мне совершенно не нужен. Расчет вращения двигателя относительно предыдущего значения. Видать
сильно я раскинул мозгами, когда всё это задумал, что на остальное не очень хватило. Так вот,
скопировал я получение Tnew из проэкта термостата. И тут началось... Начал Вижн ругаться...
Сначала ему не нравилось объявление переменных. После перемещения их из прерывания и замены типов
типа "BYTE" и "WORD" на "char" и "unsigned int" он их вроде принял. Потом всё пошло нормально, но...
Если правильно понимаю, то это и есть чтение температуры:

Code: Select all

Updating = !Updating;   //это шоб читать температуру через раз

if (Updating)           //если в этот раз читаем температуру, то 
{       
w1_init();             //инициализация шины 1-wire
w1_write(0xCC);       //выдаём в шину 1-wire код 0xCC, что значит "Skip ROM"     
w1_write(0xBE);       //выдаём в шину 1-wire код 0xBE, что значит "Read Scratchpad"
t1=w1_read();   //LSB //читаем младший байт данных
t2=w1_read();   //MSB //читаем старший байт данных     
  

  
  Ff = (t1 & 0x0F);           //из LSB выделяем дробную часть значения температуры
  t2 = t2 << 4; 
  t1 = t1 >> 4;
  T = (t2 & 0xF0) | (t1 & 0x0F);    //после объедининия смещённых частей LSB и MSB объединяем 
                                    //их и получаем целую часть значения температуры.
                                    //подробней - смотри даташит.
  
  if (T & 0b10000000) //если отрицательная температура
  { 
    Ff = ~Ff + 1;         //инвертируем значение дробной части и добавляем адын.
    Ff = Ff & 0b00001111; //убираем лишние биты
   
    if (!Ff)              //если дробная часть равна "0"
    {
      T--;                //значение температуры уменьшаем на адын
    }   
    
    Tnew = 1000 - (((~T & 0xFF) * 10) + (Ff * 10 / 16));  //вычисляем значение температуры если T < 0. 
                                                          //Формат хранения - смотри строку 58 этого файла.
  }
  else
  { 
    Tnew = 1000 + (T * 10) + ((Ff * 10) / 16);            //вычисляем значение температуры если Т > 0. 
                                                          //Формат хранения - смотри строку 58 этого файла.
  }
  
}   
        
else
{
 w1_write(0x44);          //выдаём в шину 1-wire код 0xCC, что значит "Convert T"
}      
 


Симуляция в Протэусе показала, что при первом чтении единицы градусов равны 5(Я так понимаю, это 85. Посмотреть полностью не
имею возможности, так как на индикатор вывожу только единицы для контроля положения стрелки). И все. При последующих
прерываниях на чтение ничего не меняется. Хотя температура датчика не имеет 5 в единицах.
Обьясните, пожалуйста.
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Плюньте на протеус и попробуйте в железе.
И ещё. Посмотрите даташит на датчик, там вроже между посылками должны быть паузы, которые я заменил обновлением экрана.
bilan
Пробегал мимо
Posts: 11
Joined: 13 Jul 2012 17:14
Location: Кишинев
Contact:

Re: Термостат ∆T=0,1°C

Post by bilan »

Ребята подскажите: собрал девайс, прошил, после подачи питания - дисплей молчит, PD2=1 PD3=1. В чем проблема? Кто подскажет, шил прошивкой termostat 3.2, дисплей с общим катодом GNQ-5641as-21f. Спасибо!
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

При прошивке МК этой прошивкой термостат запускается, показывает правильно температуру, но при попытке установить температуру срабатывания - работает только кнопка "-" и температура перебирается начиная с 999 градусов и по кругу до 0. Далее опять все повторяется, при этом сам порог выставить невозможно. В чем может быть дело? При симуляции в протеусе - происходит то же самое.
При прошивке старой версией (где точность установки 1 градус) все отлично работает.

Спасибо за внимание.
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem,
hardlock wrote:Artem, не прошился eeprom. Прошить заново.
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Спасибо, попробую.
bilan
Пробегал мимо
Posts: 11
Joined: 13 Jul 2012 17:14
Location: Кишинев
Contact:

Re: Термостат ∆T=0,1°C

Post by bilan »

bilan wrote:Ребята подскажите: собрал девайс, прошил, после подачи питания - дисплей молчит, PD2=1 PD3=1. В чем проблема? Кто подскажет, шил прошивкой termostat 3.2, дисплей с общим катодом GNQ-5641as-21f. Спасибо!
Кто-нибудь сталкивался, с похожей проблемой, подскажите, в каком направлении копать!
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Перепрошивка не помогла. При моделировании в протеусе такая же картинка, значит проблема не в железе получается. В чем еще может быть дело? :(
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem, ни в чём. Проблема именно в непрошитом еепроме. Посмотрите в понипроге содержимое еепром - будут все ФФ-ки
bilan, прошивка точно для катода? Хотя обе единицы говорят про то, что МК не работает, либо висит либо ещё что-то. Может с фьюзами напутали, может с прошивкой...
space_s
Пробегал мимо
Posts: 12
Joined: 14 Oct 2011 16:07
Location: Киев

Re: Термостат ∆T=0,1°C

Post by space_s »

Кто-нибудь сталкивался, с похожей проблемой, подскажите, в каком направлении копать!
Я столкнулся с такой-же проблемой но пока решить не смог.
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem, space_s, а проблема всё там же. Ну гляньте вы в еепром - там пусто. Я устал на каждой странице по 10 раз писать про это.
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

Ниже скрин считанного с МК ЕЕПРОМа. И он далеко не пустой.

Image
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Термостат ∆T=0,1°C

Post by hardlock »

Artem, а вот что должно быть по умолчанию:
t3.2.png
Ну прошейте же из Кодевижена :wall:
Artem
Частенько бываю
Posts: 49
Joined: 14 Jan 2011 22:10

Re: Термостат ∆T=0,1°C

Post by Artem »

МК зависает после пуска двигателя, полностью тухнет дисплей. Я так понимаю - помехи по питанию? Как избавиться? Подтянуть 1 ногу к плюсу? Резистор 4,7 кОм подойдет?

Спасибо за внимание.
Post Reply