Arduino Due: Стирание программы во время выполнения

Alex2814
Offline
Зарегистрирован: 17.12.2020

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

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Alex2814 пишет:
Подскажите, как программно в Arduino IDE подтянуть ногу PORTC.0 к единице?

А чем Вас не устраивает то, как Вы уже делали?

Alex2814 пишет:
Накорябал небольшой скетч, где командой по COM порту на этом пине устанавливалась логическая единица

ну, попробуйте pinMode(53, INPUT_PULLUP);

Alex2814
Offline
Зарегистрирован: 17.12.2020

ЕвгенийП пишет:

А чем Вас не устраивает то, как Вы уже делали?

Не хотелось портить эстетику платы подпаянными проводами

 

ЕвгенийП пишет:

ну, попробуйте pinMode(53, INPUT_PULLUP);

В том-то и дело, что ножка 130 МК (PORTC.0) не выведена на какой-либо пин.
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ой, сорри, я с прямым углом перепутал :-(