#arduino #atmega #forth
#arduino #atmega #далее
Вопрос:
У меня есть слово, которое я хочу активировать при смене pin-кода:
: example
." Hello, world! "
;i
Я использую External Interrupt Request 1
, который является вектором прерывания no. 3
в соответствии со страницей 65 таблицы данных и этой схемой, которую я использую.
' example 3 int!
ei
Когда я пытаюсь изменить значение pin-кода (в данном случае pin 3), ничего не происходит.
Я делаю что-то не так?
Ответ №1:
В коде, который я опубликовал выше, есть несколько ошибок, но я заставил его работать, просмотрев другие примеры и прочитав таблицу данных:
Pin Change Interrupt 0
4 constant pcint0
Pin Change Mask Register 0
$6b constant pcmsk0
Pin Change Interrupt Control Register
$68 constant pcicr
ram variable example
: example 1
1 example !
;i
: int-enable
['] example 1 pcint0 int!
ei
;
int-enable
000001 pcmsk0 mset
000111 $68 mset
Shorting pin 8 will now increment `example` variable.