Comments 17
Спасибо за статью!
На вин8 не было проблем с портом? Я никак не могу прошить arduino pro mini вкупе с usb-serial адаптером PL-23023HX. Драйвера вроде встали, но порт постоянно «занят» и никто из прошивальщиков не может получить к порту доступ. Может сталкивались с такой проблемой?
На вин8 не было проблем с портом? Я никак не могу прошить arduino pro mini вкупе с usb-serial адаптером PL-23023HX. Драйвера вроде встали, но порт постоянно «занят» и никто из прошивальщиков не может получить к порту доступ. Может сталкивались с такой проблемой?
0
Попробуйте более старый драйвер, возможно у вас проблема с китайским PL-2303.
0
Я пользуюсь фирменным Atmel программатором. По этому все работает как часы. Если будет время, куплю какой нибудь другой программатор, поиграюсь с ним и отпишусь.
0
Спешу отписаться, что я таки осилил эту проблему )
драйвер для USB-Serial адаптера PL-23023HX, там же в архиве дока по установке, потому что сам он не становится. Ну и плюс ошибка новичка — не знал что кнопку Reset на ардуине нужно именно держать.
драйвер для USB-Serial адаптера PL-23023HX, там же в архиве дока по установке, потому что сам он не становится. Ну и плюс ошибка новичка — не знал что кнопку Reset на ардуине нужно именно держать.
0
Зачем калечить ардуину? Только из за экономии кода? Вы этим самым лишаетесь всех ардуиновских «плюшек».
Хотите чистого С на AVR — можно плату под 328ю мегу сделать за час… и кодить ее.
В дополнение статьи описали бы как потом наигравшись восстановить все обратно. Ну я про залить бутлоадер и выставить фьюзы под ардуину.
Хотите чистого С на AVR — можно плату под 328ю мегу сделать за час… и кодить ее.
В дополнение статьи описали бы как потом наигравшись восстановить все обратно. Ну я про залить бутлоадер и выставить фьюзы под ардуину.
0
На ардуинах обычно есть резистор и светодиод для мигания.
+1
Кстати, да. На 13-м пине ардуины (19 пин атмеги), PB5. Только на схеме я его почему-то не нахожу. Легендарный скетч Blink как раз его задействует.
0
Все верно. У Arduino есть светодиод. Для работы с ним нужно использовать регистр PORTB. Ниже пример.
В статье я использовал внешний светодиод для наглядности. Хотел сделать фото подключения программатора и горящего светодиода. Но фотоаппарат не вовремя разрядился.
#include <avr/io.h>
#define F_CPU 16000000UL //16MHz
#include <util/delay.h>
int main(void) {
DDRB |= 1<<5;
PORTB &= ~1<<5;
while(1) {
PORTB |= 1<<5;
_delay_ms(100);
PORTB &= ~1<<5;
_delay_ms(100);
}
}
В статье я использовал внешний светодиод для наглядности. Хотел сделать фото подключения программатора и горящего светодиода. Но фотоаппарат не вовремя разрядился.
0
Можно поинтересоваться? А какова выгода? Сколько экономии по памяти, сколько по процессорному времени?
-1
Память экономится довольно существенно. Я уже не помню сколько занимает программа, получаемая из Arduino IDE. В моем случае, на чистом C — Hello World уместился в 186 байт. На ASM можно добиться более хороших показателей.
По скорости точно сказать не могу. Думаю если вы будете использовать Visual Micro и чистый C (тут статья), без всяких программаторов, то результат будет тот же, но памяти будет занято чуть больше из за загрузчика Arduino.
Мой коллега в качестве эксперимента мигал светодиодом с помощью Intel Galileo на частоте 400Гц это на библиотеках Arduino, а после переписки на C получилось около 2МГц.
По скорости точно сказать не могу. Думаю если вы будете использовать Visual Micro и чистый C (тут статья), без всяких программаторов, то результат будет тот же, но памяти будет занято чуть больше из за загрузчика Arduino.
Мой коллега в качестве эксперимента мигал светодиодом с помощью Intel Galileo на частоте 400Гц это на библиотеках Arduino, а после переписки на C получилось около 2МГц.
0
Hello world можно в два-четыре байта уместить же!
0
По памяти: Flash memory: 32 KB (ATmega328) of which 0.5 KB used by bootloader
По времени: небольшой таймаут при старте (не знаю, сколько).
Плюс уверенность, что на контроллере выполняются только те инструкции, которые написал, а не какой-то бутлоадер, например, после перезагрузки.
Плюс возможность использовать watchdog (не обязательно выпиливать загрузчик совсем, но заменить иногда нужно).
Пользуясь случаем: кто порекомендует avrdude-совместимый загрузчик для atmega328+ft232rl / arduino nano?
По времени: небольшой таймаут при старте (не знаю, сколько).
Плюс уверенность, что на контроллере выполняются только те инструкции, которые написал, а не какой-то бутлоадер, например, после перезагрузки.
Плюс возможность использовать watchdog (не обязательно выпиливать загрузчик совсем, но заменить иногда нужно).
Пользуясь случаем: кто порекомендует avrdude-совместимый загрузчик для atmega328+ft232rl / arduino nano?
0
devicter.ru/goods/USBtinyISP-Arduino-bootloader-programmer — пользую такой, все работает… но иногда не хватает выбора рабочего напряжения (5 или 3.3В). У этого программатора выбора нет — только 5В.
0
Прежде, чем затирать загрузчик, было бы полезно сохранить его (и фьюз-биты), чтобы можно было вернуть всё как было. Мне, например, не удалось заставить работать китайский клон с официальным загрузчиком.
0
Sign up to leave a comment.
Программирование Arduino с помощью ISP программатора