Добрый день не подскажите новичку по скетчу и библиотеки для датчиков dht22 а именно у меня ни как не отображается отрицательная температура в мониторе порта выдает относительно нормальные значение влажности а вот температуры пишет 408 градусов хотя на улице около -8,судя по даташиту датчика он может отображать до -40 в чем может быть проблема?
Глубокоуважаемые радиокоты, всем Мяуу! Наконец-то добрались лапы до ардуино. Пробую использовать ардуино нано в роли ISP-программатора для того, чтобы запрограммировать им AVR-микроконтроллер Атмега 8. Пробую по вот этой статье: Спойлерhttp://andreyandreich.ru/atmega8-microcontroller/ Суть мне ясна: 1) Из "примеров" (в меню файл) записываем прошивку "Arduino ISP" 2) В меню инструменты выбираем программатор - "Arduino as ISP" 3) Вставляем в главное окно среды IDE программный код. 4) После добавления ядра для Атмега 8 (в среду IDE) записываем программный код в нашу Атмега 8 нажав в меню "скетч" - "загрузить при помощи программатора". После установки электролитического конденсатора на 10 мкФ между Reset и GND выводами платы ардуино, все прекрасно записалось в Атмега 8, но вот почему-то мигалка не мигает. В чем может быть дело? И второй вопрос: можно ли как-то считать с помощью этого импровизированного программатора (на базе ардуино нано) то, что записано на целевой МК Атмега 8?
... можно ли как-то считать с помощью этого импровизированного программатора (на базе ардуино нано) то, что записано на целевой МК Атмега 8?
Загрузите из примера ArduinoISP в Arduino. Запустите программу avrdudess_portable, выберите из меню Programmer: Arduino. Теперь есть программатор, который может писать и читать AVR. Ниже: пример для ATtiny13A.
Последний раз редактировалось veso74 Ср ноя 29, 2023 01:16:20, всего редактировалось 1 раз.
veso74, , а AVRDUDE PROG33 подойдет? Там вроде как то можно добавлять программаторы, но не пойму, как правильно... Что-то вроде в текстовом редакторе дописать. Но как правильно это сделать никак не найду.
veso74, установил AVRDUDESS, действительно поинтереснее. Но все равно не получается. Загрузил из примера ArduinoISP в Arduino. Закрыл IDE, чтобы не мешалась. Дальше открываю AVRDUDESS. Выбирал свой порт. Выбрал из меню Programmer: Arduino. Жму detect Вот такой лог: Спойлер>>>: avrdude >>>: avrdude -c arduino -P COM2 -p m8 WARNING: Unable to detect MCU
avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 1 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 2 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 3 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 4 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 5 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 6 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 7 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 8 of 10: not in sync: resp=0x68 avrdude.exe: stk500_recv(): programmer is not responding avrdude.exe: stk500_getsync() attempt 9 of 10: not in sync: resp=0x68 avrdude.exe: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe0 avrdude.exe: opening programmer "arduino" on port "COM2" failed
Варианты могут быть безграничны. Скриншот, фотография пробной установки могут дать подсказки. Провода, порт, другие МК, блок питания, напрежения, фильтр. конденсаторы и т.д. подразумевается, что должны были быть неоднократно проверены. Ищите причину.
Олегыч1 Я так понимаю Вы сделали из ардуино-нано (уно) платки ардуиноISP программатор для работы с самодельной платкой на основе атмега8? В принципе в дальнейшем ардуино ISP потреуется только для прошивки в атмегу8 бутлоадера и набора фуз-бит для указанной во вкладках настроек платформы конфигурации Это выполняеся после установки конфгурации и нажатия инструменты > записать загрузчик Эту процедуру необходимо выполнить однократно для каждого вновь используемого МК в самодельной платке (у готовых покупных нанок и прочих данная процедура выполнена при изготовлении, а покупной МК обычно идет с набором фуз от производителя МК "по умолчанию) даже в том случае, если в настройках платформы бутлоадер не используется. Ибо в любом варианте должен быть загружен набор соответствующих фуз-бит ля правильной работы МК в выбранной платформе. А уже далее работаем с прикладным скотчем или через бутлоадер или через ардуиноISP (в зависимости от того - загрузили мы бутлоадер или нет). Насчет дополнительных платформ с широким выбором настроек - я бы начинать с такого не советовал. Или уж в начале работы выбираем стандартные параметры для атмеги8. Кстати... Данная платформа представлена и в платформах ардуино "по умолчанию" - это arduino avr boards -> arduino NG or older Другое дело, ежли у Вас атмега8А, а не просто атмега8 - это таки "чуток разные" МК для настроек ардуиноIDE. Пы.Сы. АрдуиноIDE не выполняет чтение кода из устройства, но может проверить код после загрузки файл -> настройки -> проверять код после загрузки (ставим там птичку и перезагружаем IDE)
BOB51, Что -то вроде проясняется, но не совсем понятно. Понял только то, что: 1) В среде IDE прочитать целевой МК не получится. 2) Да, я сделал из ардуино нано платку в роли программатора ISP для прошивки разных AVR-микроконтроллеров. Решил потренироваться вот на Атмега 8, и как оказалось она называется не 8, а Атмега 8А. 3) Другие платы ардуино мне прошивать пока не требуется, тем более, что они сами себя могут прошивать в среде IDE, и загрузчик так же. Если я все верно понимаю 4) Чтобы шить атмега 8 - можно использовать ту же среду IDE. Для этого нужно выбрать в меню arduino avr boards -> arduino NG or older 5)
Цитата:
АрдуиноIDE не выполняет чтение кода из устройства, но может проверить код после загрузки файл -> настройки -> проверять код после загрузки (ставим там птичку и перезагружаем IDE)
Это что-то типа верификации получается. 6) У меня как раз-таки Атмега 8А, поэтому, как я понимаю, среда IDE мне не подойдет для записис в Атмега 8 прошивки. Все верно?
На счет AVRDUDESS, я не уверен, что считываю свой целевой микроконтроллер (Атмега 8А). В настройках установил "Ардуино нано", и MCU - выбрал тот, который в ардуинке Мега328Р:
Что-то вроде пошло читаться. Настройки правильные? Это читается Атмега 8А? А теперь как мне сюда записать мигалку? В среде IDE не получится скомпилировать бинарник под атмега 8А, верно? Пока голова немного кругом идет от такого кол-ва инфы. Думал все будет проще... Спасибо что помогаете
Вы хотите имитировать (самостоятельно собрать) платформу ардуино на базе атмега8/8а и в дальнейшем работать с той самоделкой в ардуино IDE или таки просто найти программатор ISP для собственных конструкций на основе АВРок вне рамок ардуино IDE? В принципе оба варианта возможны... Ежли таки под ардуиноIDE и на самодельной платке с атмега8А... Тогда надо подгрузить платформы от
и работать внутри этой платформы. Причем раскладку выводов также брать у автора платформы на гитхабе. Заодно и схемку своего реального варианта выкладывать, чтобы можно было консультировать по конкретной конструкции. Только вот начинать таки лучше с платок ардуино-нано, а в готовых самоделках ставить ардуино про-мини. Это и удобнее и в сумме дешевле получается. Разве что альтернатива в виде наличия иных МК годных для поделок разумна... При наличии конкретной схемки и задачки вопросы можете сюда "в хвост темы" послать: https://www.radiokot.ru/forum/viewtopic ... 2&t=156720
или таки просто найти программатор ISP для собственных конструкций на основе АВРок вне рамок ардуино IDE?
Да, именно. У меня тут поднакопилось несколько АВР-ок, и я хотел бы их воткнуть в свои проекты. Дело в том, что когда-то давненько (лет 5 назад) пытался написать конкретный код под свою задачу в среде Атмел студио6. И пробовал прошивать свою любимую (потому что с нее начинал) Атмегу 8А. Прошивал через самодельный "программатор Громова", работающий от СОМ-порта. И все с первого раза получилось. Но тогда показалось сложновато реализовывать свои проекты в среде Атмел студио, потому что готовых кодов (как скетчей для ардуино) не так было много тогда. А недавно увлекся ардуино, сперва показалось, что все гораздо проще. Программатор Громова почему-то не работает сейчас. Разобраться так и не смог почему не работает. Есть куча еще других программматоров для АВР. Но вот RT809H отказался нормально с ними работать, увы... Он немного для другого заточен, а может не переваривает атмегу 8А, ХЗ в общем. Postal AVR3 тоже не прокатывает после неудачной прошивки (а может и моих кривых лап). Есть еще USBASP, специально приобрел от безысходности, но он как-то на очень медленной скорости считывает... Хотел обновить ему прошивку, и нечем блин... Хотел именно считать с него старую, сравнить с новой. И решил вот импровизированный ISP-программатор собрать на базе ардуино. Заодно поиграться с моими микроконтроллерами (для будущих проектов) И все никак не прокатывает... Хотел работать с атмега 8А в среде IDE, но выходит что с этой микросхемой среда IDEочему-то не дружит. Хотя почему? Неужели не существует библиотек для 8А? ---------- Но есть, кстати и простые атмега8 в общей куче. Попробую пока с ними мигалку осуществить.
Огонь! Пошла жара! Безо всяких конденсаторов. Все записалось. Мигалка работает. Записал через среду IDE, только в "атмегу 8", а не "8А". Теперь я понял. Мы из одного микроконтроллера как бы делаем маленькую простенькую ардуинку со своим загрузчиком и кодом, сделанным в среде IDE. Я правильно понимаю, с помощью загрузчика выставляются нужные фьюзы автоматически?
Добавлено after 4 minutes 30 seconds: Alex_641, так на них же сейчас все и держится. Это начало робототехники и прочей современной движухи. Попробуйте с нуля написать самостоятельно код... Это очень не просто. Мыслей разных и идей дофигища, которые можно реализовывать с этим самым ардуино.
... можно ли как-то считать с помощью этого импровизированного программатора (на базе ардуино нано) то, что записано на целевой МК Атмега 8?
Загрузите из примера ArduinoISP в Arduino. Запустите программу avrdudess_portable, выберите из меню Programmer: Arduino. Теперь есть программатор, который может писать и читать AVR. Ниже: пример для ATtiny13A.
Вот моя цель: На макетке слева - мой целевой МК (Атмега8), а справа ардуино нано в роли программатора ISP.
Что выбирать в AVRDUDESS? В красном кружке мой целевой МК выбирать, или МК, на котором основана ардуино нано? В зеленом кружке что тогда в этом случае выбирать? Ардуино, или Ардуино as ISP? Или еще что-то? Бодрэйт какой ставить? Ну все уже перепробовал не определяется никак. Единственное если в красном кружке выбрать МК, который внутри ардуины нано стоит (мега 328Р), а в зеленом выбрать ардуино, то тогда начинается чтение. Но это чтение с ардуинки идет, а не с моего целевого МК.
...Мы из одного микроконтроллера как бы делаем маленькую простенькую ард уинку со своим загрузчиком и кодом, сделанным в среде IDE. Я правильно понимаю, с помощью загрузчика выставляются нужные фьюзы автоматически?...
Неправильно. Комплект фуз выставляется из ардуиноIDE через ардуиноISP программатор по запуску
Код:
инструменты -> записать загрузчик
и будет установлен в соответствии с заданными опциями выбранной платформы даже в случае, если выбрана работа без бутлоадера. Загрузчик только подгружает код в МК из ПК. Фузы не трогает. Собственно делается самодельная ардуинка в конфигурации той "платформы", что была выбрана. Далее ее прошивка (при наличии бутлоадера) выполняется из IDE уже непосредственно (через соответствующий СОМ порт/USB-COM адаптер). Собственно выбор АВРок для самостоятельно изготавливаемых платок достаточно широк- от аттини до различных вариантов атмега. Это уже на любителя. Кстати.. У Вас же уже есть программатор для прошивки по ISP АВРок и софтинка к нему. Зачем еще изврат делать то??? Другое дело, что для прошивки из-под "стороннего железа и софт-оболочек" надо в самой IDE сгенерировать файл для прошивки
Код:
скетч -> экспорт бинарного файла
и в папке проекта ловим два файла - один с бутлоадером, а второй без оного.
Alex_641 АрдуиноIDE всего лишь один из возможных инструментов в работе с различными семействами МК под Си/С++ при упрощённой настройке проекта (скрытые от пользователя настройки компиляторов, применяемых в проектах). Причем свободно-бесплатный (основа GCC/GNU). Там и АРМы имеются и ESP (и много чего еще) помимо АВРок. А вот ПИКи к сожалению не представлены. Для работ с платформами на основе АВР вполне достаточно самой IDE (1.8.9 для ХР х32 или 1.8.19 для 7ки/10ки х64), собранного на основе встроенного примера из ардуино-нано ардуиноISP программатора и дополнительного программатора на основе версии SiProg и софт-оболочек (avrdudeshell и/или AVRDUDEPROG). Дополнительно можно симулятор UnoArduSim версии 2.9.2 поставить.
Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения