Проблема с использованием обработчика IRQ Arduino в nRF51822
Может ли кто-нибудь помочь мне, так как в настоящее время я использую библиотеку nRF51822-Arduino с чипом nRF51822 и не могу позвонить функция прерывания, wakeUp()
.
В настоящее время я подключаю вывод внешнего прерывания к выводу nRF51822: P0_1 или выводу arduino: A0 после преобразования вывода в библиотеке nRF51822-Arduino. Может быть, я знаю, какое значение я должен указать для переменной pin
для функции ниже:
attachInterrupt(pin, wakeUp, CHANGE);
чтобы при изменении прерывания вызывалась функция wakeUp()
?
@adrian.wong, 👍-1
Обсуждение1 ответ
Чтение исходного кода для attachInterrupt() показывает, что вы должны использовать номер вывода Arduino: https:// github.com/RedBearLab/nRF51822-Arduino/blob/S130/arduino-1.6.x/hardware/RBL/RBL_nRF51822/cores/RBL_nRF51822/wiring_interrupter.cpp#L70
Номер вывода Arduino для A0 равен 19 в соответствии с преобразованием вывода: https:// github.com/RedBearLab/nRF51822-Arduino/blob/S130/arduino-1.6.x/hardware/RBL/RBL_nRF51822/cores/RBL_nRF51822/pin_transform.cpp#L64
Ура!
Привет, Микаэль, что ты пытаешься сказать, это установить значение 19 для переменной контакта? Я пробовал, но он тоже не работает., @adrian.wong
Я могу настроить прерывание и триггер, чтобы проверить, исходит ли какое-либо прерывание от чипа Adxl345. Он меняется от 1 до 0, но не может вызвать обработчик прерывания., @adrian.wong
Насколько я понимаю в Arduino, например, цифровые контакты 2 и 3 Arduino Uno предназначены для прерывания, а переменная «pin» должна быть установлена на 0 при использовании D2 и 1 при использовании D3., @adrian.wong
- Использование millis() и micros() внутри процедуры прерывания
- Подсчет импульсов с прерыванием
- Устранение дребезга кнопки с помощью прерывания
- Программа arduino выдаёт ошибку expected //primary-expression before ')' token error: //expected ';' before '}' token E
- Почему необходимо использовать ключевое слово volatile для глобальных переменных при обработке прерываний в ардуино?
- Как сгенерировать аппаратное прерывание в mpu6050 для пробуждения Arduino из режима SLEEP_MODE_PWR_DOWN?
- Использование поворотных энкодеров с прерываниями смены контактов
- Arduino непрерывно считывает значение АЦП с помощью прерывания
Удалось получить пример, [External_Interrupter.ino](https://github.com/RedBearLab/nRF51822-Arduino/blob/S130/arduino-1.6.x/hardware/RBL/RBL_nRF51822/libraries/nRF_Examples/examples/ External_Interrupter/External_Interrupter.ino), работает правильно?, @Greenonline