Официальный сайт компании Arduino по адресу arduino.cc
Arduino Due: Стирание программы во время выполнения
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Добрый вечер форумчане. Не преследую никакой злобной цели, а забавы ради пришла дурная мысль в голову. Как-то выходной сегодня выдался и в холодосе завалялась бутылочка коньячку с сырочком и лимоном. Врубил я, значит, комп и в углу стола, под кучей бумаг, заметил давно запылившуюся ардуинину. Решил побаловаться, достал из шкафа всякое барахло в виде экранов, кнопок, джойстиков и другой алиэкспресовской лабуды, а-ля ардуиношилды. Залип с 3,97 дюймовым тык-экраном на OTM8009A. Не захотел он сразу запускаться. Решил проверить правильность подключения. Залез в его библиотеку, затем в свои старые скетчи и попался мне файл со схемой Arduino Due. И есть там такая интересная деталь в виде кнопки "ERASE", подключенной к PC0. Исходя из схемы понятно, что нога PC0 является входом с подтяжкой к нулю. Вот тут-то, на 5й стопочке и пришла мне в голову мысль. А что если во время выполнения программы она по команде из вне будет стирать саму себя. Первое, что попробовал (не считая физического нажатия на кнопку), тупо подать 3,3 вольта на ногу 130 МК. Получилось. Прога из памяти стерлась. Затем подпаял к ноге кнопки, которая идет на 130 контакт МК проводок и закинул его на один из многочисленных пинов. Накорябал небольшой скетч, где командой по COM порту на этом пине устанавливалась логическая единица и прога так же удалялась. Все здорово. И вот в чем, собственно, затык. Или коньяк мешает пониманию даташита или я не достаточно грамотен. Подскажите, как программно в Arduino IDE подтянуть ногу PORTC.0 к единице?
А чем Вас не устраивает то, как Вы уже делали?
ну, попробуйте pinMode(53, INPUT_PULLUP);
А чем Вас не устраивает то, как Вы уже делали?
Не хотелось портить эстетику платы подпаянными проводами
ну, попробуйте pinMode(53, INPUT_PULLUP);
Ой, сорри, я с прямым углом перепутал :-(