Одинаково ли настраивается прерывание int0 на нано328 и promini 168?
- Войдите на сайт для отправки комментариев
Сб, 22/04/2017 - 00:30
Скетч измерения частоты почемуто работает на нано328, но НЕ работает на про мини 168.
Конкретно не вызываются прерывания.
Есть отличия у этих плат в плане внешнего прерывания?
int Freq;
bool flag=1;
volatile unsigned long t1;
volatile unsigned long t2;
void tic (){
if (flag) {t1=micros(); flag=0;}
else {t2=micros(); flag=1;}
}
void setup()
{
attachInterrupt (0, tic, FALLING);
pinMode (2,INPUT);
digitalWrite (2,HIGH);
}
void loop()
{
if (flag) Freq=1008000/(t2-t1);
}
ну ктонить помогите, плиз настроить int0 на атмеге 168.
Че не делал - не работает int 0 (на 2 пин ардуино) на атмеге 168. попробовал прерывание int1 на 3 пин ардуино - заработало.
Одинаково ли настраивается прерывание int0 на нано328 и promini 168?
Одинаково. Разница между Атмега168 и Атмега328 в количестве флеш памяти.
Че не делал - не работает int 0 (на 2 пин ардуино) на атмеге 168. попробовал прерывание int1 на 3 пин ардуино - заработало.
Пин 2 вообще рабочий? На вход/выход работает?
P.S. Переменную flag тоже надо бы объявить с квалификатором volatile, т.к. изменяется в обработчике прерывания.
Пин 2 вообще рабочий? На вход/выход работает?
да короче хз, может действительно непропай китайский, не проверял по-моему. Вообщем на int1 устройство собрал, работает уже.
P.S. Переменную flag тоже надо бы объявить с квалификатором volatile, т.к. изменяется в обработчике прерывания.
точно, поправлю.