Да, точно 11-й без SPI интерфейса. Я думал, что у всех есть... ;-(
Меняй на 12-й или какой другой более старший с SPI. Только более старшие могут быть с СОЗУ, там надо будет в программу добавить команды инициализации стека и поправить таблицу прерываний (если будут расхождения).
В программе есть переменная PulseFlag в строке 'ldi PulseFlag, 4' (4 - это два импульса) начальная инициализация по смене состояния на "входной" ноге. Где стоит комментарий 'here's approx 1sec delay' - там он и означает, что задержка примерно 1 сек, то есть код ниже этого коммента запускается примерно через 1 сек. Регулируется переменной Counter, ldi Counter, 4 - это примерно 1 секунда, если написать ldi Counter, 2 - то будет 0,5 сек, далее по аналогии. То есть по смене состояния на ноге INT0 на ноге PB0 возникает два импульса длительностью 1 сек с паузами между ними в 1 сек.
Можно переделать прогу, чтобы можно было настраивать отдельно паузы и длину.
|