Рестарт устройства при создании нового подключения

Monster
Offline
Зарегистрирован: 18.06.2012

Простейший код, мигающий диодом и посылающий в СОМ символ раз в секунду:

int bytesSent;

void setup()
{
  Serial.begin(9600);
  pinMode(13,OUTPUT);
}

void loop()
{
  digitalWrite(13,1);
 
  ++bytesSent;
  Serial.println(bytesSent);
 
  delay(500);
  digitalWrite(13,0);
  delay(500);
}

Все чудесно до тех пор, пока не отключаюсь от монитора порта, а при повторном подключении счетчик обнуляется из-за рестарта устройства.

Я так понимаю это специфика работы загрузчика?  Каким образом решить эту задачу если необходимость в загрузчике пока что есть.

Monster
Offline
Зарегистрирован: 18.06.2012

Код без тега из-за того, что форум отрыгивает ошибку в ИЕ при попытке завернуть пост как следует...

leshak
Offline
Зарегистрирован: 29.09.2011

Ну тогда может быть стоит другой браузер попробовать? Например chrome, иначе все время оправдыватся прийдется.

А по теме - Arduino Playground - DisablingAutoResetOnSerialConnection

Или просто в гугл "arduino disable auto reset"

Или использовать другой Serial  (Но естествено потрбеутеся дополнительны USB->UART конвертер).

leshak
Offline
Зарегистрирован: 29.09.2011

Можно еще поискать другую терминальную программу, а не встроенный Serial монитор. Вроде существуют которым можно указать не дергать DTR-линию (что и вызывает  ресет) при открытии порта.

Monster
Offline
Зарегистрирован: 18.06.2012

Встроенный гипертерминал тоже дергает эту линию...

leshak
Offline
Зарегистрирован: 29.09.2011

Ну я же не говорил "встроенный", я говорил "поищите".

Например вот это умеет http://www.blueleafsoftware.com/Resources/EmbeddedSand/Category:MegunoLink

Раз он умеет, значит софтварное решение - возможно. 99% что существуют и другие терминалы которые умеет. Нужно только потратить время поискать и потестить.

Или этим MegunoLink и пользоватся. В нем еще пара вкусняшек именно для ардуины есть.

Monster
Offline
Зарегистрирован: 18.06.2012

Мегуно как-то излишне отягощен.

Термит 3.0 - то, что надо.

Но все равно хотелось бы как-то в реестре или еще как подправить это недоразумение с ДТР и забыть о проблеме.