Программирование кухонного блока вытяжки Krona на базе atmega328p

У автора указана только почта на странице проекта на гитхабе и то возможно не его, + это дольше и неудобнее чем спросить у шарящих в коде людей на форуме. Почему наугад, разведенная плата имеется, в железе все так же, все известно куда подключено, какое Вам оборудование нужно? Можно если оч сильно захотеть написать код с чистого листа по схеме и разведенной ПП, если разбираться в этом.


Сначала не понял как мерить при нажатии быстро меняется значение и не понятно, потом понял что надо зажать кнопку. Померял. Так и есть как вы и написали. Для света 0 В, для скоростей fan1 - 2,19 В, далее 3 В, 3.5 В. Ну а это фото изделия если кому интересно/нужно, фото нижнего слоя отзеркалил поэтому как в программе.


Не так всё уж и плохо (по крайней мере у меня) !!!

Shalnoy - теперь вам:
" я его слепила из того что было " - судя по цифрам измерений и цветовой маркировке, вы еще и с номиналами резисторов “поигрались” …

Теперь считаем числа для массива BUTTONS_VALUES
{1024/5*0, 1024/5*2.19, 1024/5*3, 1024/5*3.5}
Это при условии что на выходе кренки имеем 5 вольт.
Можно прямо так и заменить массив в скетче - компилятор пересчитает и запишет в итоговый код константы.
Меняем, компилируем, прошиваем, пробуем и (возможно) радуемся !

2 лайка

Дико извиняюсь, совсем забыл сказать об этом, мой косяк, это правда “я его слепила из того что было” :smile:, на тот момент когда делал плату, нужных резисторов не было под рукой, в магаз было идти лень, поэтому поставил какие нашел + элементы по большей части были сняты со старой платы, резисторы R3-R6 на схеме по 5.1кОм - у меня 10кОм, R10 - 1.5кОм, R12-R15 - 1кОм вместо 220 Ом, R7-R9 - 1.2 кОм.
Ну там не кренка, а стаб MC78L05, но я понял, на выходе почти 5 В, 4,98 В точнее. Хорошо попробую сегодня. А то что на 0 делим, первое значение, это ничего?

Делим всегда на 5 ! На 0 и другие вольты УМНОЖАЕМ ! Там нет скобок !

а умножение на ноль разве не даёт ноль?

Компилятор справится !

Можешь сам посчитать, если не доверяешь компьютеру… ))

У меня сходу, без вчитывания в код вопрос по схемотехнике:

  • на кой ляд вы повесили кнопки на 1 аналоговый вход?
    Так делают когда хотят сэкономить ноги - потому что всё занято. И понимая что делают
    Вы же новичок вам положено каждую кнопку как и каждый светодиод цеплять на отдельную ногу. И не просто так, а чтоб меньше морочить себе голову с резистивными делителями, аналоговыми показаниями, усреднениями, табличными значениями.
    Да и по схеме у вас 8 - восемь свободных ног.

Я бы на вашем месте перевесил кнопки - каждую на свою ногу МК. И в тестовом скетче научился их опрашивать и включать соответствующий светодиод.

А так вы код не понимаете, разработчику на вас пофигу, при сборке вы меняли некоторые детали, как могли - и теперь “Ниработаит”.

Я может и не прочь помочь, но описаный вами алгоритм и то что в коде не совпадают.
И боюсь начни я задавать вопросы по таймерам - вы не сможете ответить…

Понимаете глубину проблеммы это как слепому, по телефону объяснять как удалить аппендицит.

Мой совет снизить сложность задачи и решать её пошагово. Написать штук 3-5 тестовых скетчей и разобраться с работой всей периферии поотдельности, а потом и код станет понятней и итоговую программу написать окажется проще.

Благодарю, все работает. Вопрос снят.

ТС просто повторял чужое устройство с чужой прошивкой …

Слава богу.

Это пока две кнопки не нажал - работает ))
П2К искать следовает, пока не поздно.

уверены ?

Это, вроде, болезнь резистивных блоков кнопок - неразличимость нажатия двух и более?

То-есть как обычно придумываем себе трудности, чтоб потом их героически преодолевать и взывать к “духам” форума…

Если резистивный блок сделан по уму и кнопок не более 5-6, то все прекрасно различается.

хочу заметить что в стир. машинах выбор режимов устроен именно на резистивных переключатеях и положений там значительно больше

Для галетного переключателя “распознавание одновременного нажатия кнопок” неактуально от слова “совсем”.

2 лайка

Сомнений в подсчёте у меня нет… У меня есть сомнения в таких вычислениях, если заранее понятно что результат ноль!
Новичкам за такое прегрешение горло перегрызут некоторые… Но на Командира бочку не катят :slight_smile: