Системный параметр RestartReason
Алгоритм (BYTE b_tmp; b_tmp=SystemInfo.RestartReason; DiscretWrite(1,b_tmp); ) после рестарта контроллера А9 с помощью кнопки RESET выдаёт 0 , хотя по описанию в файле power.h должен выдать 2. В результате нельзя отличить причину рестарта при пропадании питания (которая должна выдать 0) , от рестарта после нажатия кнопки! Может не правильно считываю причину рестарта ? Если всё правильно , то каким способом можно отличить причину рестарта контроллера ?
-
- Администратор
- Сообщения: 118
- Зарегистрирован: 29 май 2009, 13:45
- Откуда: Компания ДЭП
- Контактная информация:
Выдержка из справки по системным параметрам
Так что, да, для A9 пропадание питания и нажатие кнопки этим параметром не различаются.
516 Причина перестарта. Код последней причины перезапуска контроллера:
0 - пропадание питания и для контроллера Decont-A9 кнопка сброс;
2 - по кнопке сброса контроллера (только для контроллера Decont-182);
3 - сработал охранный таймер (WatchDogTimer);
4 - закончилась процедура переливки или копрессии РПЗУ;
5 - ошибка ядра;
16 - нормальный запрос от программного обеспечения;
17 - запрос от программного обеспечения при ошибках.
Так что, да, для A9 пропадание питания и нажатие кнопки этим параметром не различаются.