Ви не увійшли.
Контроллер новый, фьюзы не трогал, да и не знаю как. Кстати, где-то встречал информацию, что в новых фьюзы настроены на 1мГц.
Программатор микроконтроллер видит наверно, так как при первой попытке я не выставил контроллер в настройках, получил что-то типа "контроллер не соответствует указанному"
В файл board в Arduino IDE внес изменения:
anio32.bootloader.file=chip45boot2_atmega32_uart0_v2.9C.hex
Нужно прописать сигнатуру добавляемого контроллера.
Про фьюзы слышал, про сигнатуры даже сейчас ничего толком не смого найти.
Попробовал запрограммировать ATmega32 (не путать с ATmega328) с помощью Arduino.
Последовательность действий такая:
К ATmega32 подпаиваю кварц с двумя конденсаторами и 6 проводов (2 питание, miso, mosi, clk, RESET).
Запускаю Arduino IDE
Добавляем поддержку не родных м/к в среду Arduino IDE (есть статья с таким названием, ссылку не даю, не работает чё-то). Кстати данная функция заработала только с Arduino IDE 1.0.5, не получилось с Arduino IDE 1.6.7 и 1.6.0 (два часа потерянного времени, никак не мог понять, что я не так делаю)
Arduino Uno подключил к компьютеру и загрузил скетч ArduinoISP из стандартных примеров.
Отсоединил от компа, подсоединил ATmega32 к Arduino согласно стандартной схемы. Смотреть, например https://geektimes.ru/post/255342/
Подсоединяю к компу. Выбираю "Инструменты"- "Программатор"- "ArduinoISP". Выбираю "Инструменты"- "Плата"- "ATmega32" (появился такой пункт после вышеописанных процедур). Заливаю простой скетч с помощью пункта меню "Файл"- "Загрузить через программатор"
Получаю ошибку:
avrdude: Expected signature for ATMEGA32 is 1E 95 02
Double check chip, or use -F to override this check.
Что я делаю не так?
Буду рад пошаговому описанию программирования ATmega32 с помощью Arduino, или ссылке на такое. Долгие поиски в гугле привели меня к вышеописанным действиям.
А может высокий, уже не помню, но не меняется.
На обеих платах ATmega328, схема подключения пинов TXD и RXD абсолютно идентичная (светодиод с резистором к плюсу питания, резистор на юсб-преобразователь CH340G). При загрузке скетча с digitalWrite обе платы работают одинаково (мигают). А вот с приложенным скетчем на этих выходах постоянно низкий уровень.
Ещё проверил- с arduino uno скетч работает по всем выходам, а с Nano- как выше описал.
Забыл написать, у меня ардуино нано (клон), кроме того, почему эти RN4B и RN4A не влияют при использовании digitalWrite?
Недавно начал изучать ардуино.
Часто использую светодиоды , распаянные на плате, для экспериментов.
Попробовал запись в порт (скорость гораздо выше, чем digitalWrite).
Скетч- обычная мигалка, сначала пробовал на 13 вывод- без проблем. Затем попробовал помигать ещё двумя, и почему-то не получилось (с помощью digitalWrite запросто). Согласно скетча должен изменяться уровень на всех выходах с D0 до D7 с частотой 1гц. Что интересно, на шести свободных выводах D2...D7 потенциал изменяется без проблем, а на D0 и D1,они же TXD и RXD (именно к ним распаяны ещё два светодиода) - не изменяется.
Что я делаю не так?
#include <avr/io.h>
#include <util/delay.h>
int main( void )
{
DDRD = B11111111; // выводы PD как выходы
while (1) { // вечный цикл
PORTD = B00000000; // низкий уровень на выводах
_delay_ms(500); // задержка 500 миллисекунд
PORTD = B11111111; // высокий уровень на выводах
_delay_ms(500);
}
return 0;
}