как правильно отловить момент действия прерывания ?

Maverik
Offline
Зарегистрирован: 12.09.2012

привет.

имеется схема ардуинки с подключенными датчиками - два на цифровых пинах, один на аналоговом. 

датчики опрашиваются периодически через прерывания и данные обрабатываются и передаются gsm-шилдом.

проблема следующая- при включении gsm-шилда напряжение немного просаживается, и датчики привирают.  можно, конечно, проблему решать аппаратно, изолируя схемы питания, но видится простое программное решение-  не опрашивать датчики в то время, пока активен gsm-шилд. 

как это правильнее сделать ? первая мысль - запоминать в переменные типа volatile ungsigned long момент активации gsm-шилда и моменты опроса датчиков, а затем их сравнивать.  но как-то это немного муторно. может есть проще варианты ? 

inspiritus
Offline
Зарегистрирован: 17.12.2012

Какая арда ? Что именно инициирует прерывания ?  Ожидаемые тайминги событий? 

В общем случае есть команды, cli и sei для управления прерываниями.

Когда шилд начинает работать выставляется флаг, если при опросе датчика имеется выставленный флаг , датчик не обрабатывается.

Правильнее всего разобраться с питанием- два стабилизатора на lm-ках от общего 12в.

 

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

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

Maverik
Offline
Зарегистрирован: 12.09.2012

Какая арда ? Что именно инициирует прерывания ?  Ожидаемые тайминги событий? 

Мини про 5в.  датчики погодные, опрашиваются примерно каждые 5 сек,  раз в две минуты активируется gsm шилд.

В общем случае есть команды, cli и sei для управления прерываниями.

ассемблер нихт знать.

Правильнее всего разобраться с питанием- два стабилизатора на lm-ках от общего 12в.

есть 9вольт.  а можно схемку ?

 

 

 

inspiritus
Offline
Зарегистрирован: 17.12.2012

Описание, на 22 стр. Типовая схема включения.  

http://pdf.datasheet.su/fairchild%20semiconductor/lm7805ct.pdf

Вам нужно 2 стабилизатора. Объедините входы и на 9 в, выходы каждый на свой модуль . 

Земля общая для всех стабов и модулей.