Вопрос стандартный - что я делаю не так? Блин, с этими СТМ32 совсем забыл АВР-ки...
Внешнее прерывание INT0
Коллеги, напомните, плз, какие особенности у внешних прерываний AVR. Конкретно - ATmega328P. Я настроил INT0 на срабатывание по фронту (биты ISC01 и ISC00 регистра EICRA ставил и 10, и 11 - и по заднему и по переднему фронту), взвел бит 0 (INT0) регистра EIMSK и подал на вход INT0 (PORTD бит 2) меандр 1 Гц. По идее, все, прерывание должно срабатывать раз в секунду. Однако, изба фигвам, срабатывает один раз, и тишина. Как будто надо куда-то послать сигнал подтверждения. Но ведь ничего такого не требуется? Ставил контрольную выдачу прямо в ISR(INT0_vect) - по фиг, после сброса 1 раз сработает, и тишина.
Вопрос стандартный - что я делаю не так? Блин, с этими СТМ32 совсем забыл АВР-ки...
Вопрос стандартный - что я делаю не так? Блин, с этими СТМ32 совсем забыл АВР-ки...
Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)
- Реклама
Да никаких особенностей.
Может, контрольная выдача - запись в PORT настроенного на вход канала?
The I-bit is cleared by hardware after an interrupt has occurred, and is set by the RETI instruction to enable subsequent interrupts.
Может, через RET, а не через RETI выходите из обработчика?
Может, контрольная выдача - запись в PORT настроенного на вход канала?
The I-bit is cleared by hardware after an interrupt has occurred, and is set by the RETI instruction to enable subsequent interrupts.
Может, через RET, а не через RETI выходите из обработчика?
[uquote="afz",url="/forum/viewtopic.php?p=4103941#p4103941"]Конкретно - ATmega328P.[/uquote]
Для проверить МК… светик подключить к выводу РВ5. Если шильд ардуины, то светик уже есть на борту.
Для проверить МК… светик подключить к выводу РВ5. Если шильд ардуины, то светик уже есть на борту.
Вопрос снят. Удалил.
Последний раз редактировалось akl Пн окт 11, 2021 10:51:20, всего редактировалось 2 раза.
Разобрался. Все оказалось гораздо проще. Поганая Ардуино Нано. Мелкая, земляных ноги всего две, да я еще и гребёнку к ней припаял ногами в сторону деталей, видимость никакая... В общем, земляной провод к индикатору я нечаянно, вместо ноги GND, напялил на ногу D2 (PD2, она же INT0), а провод с 1 Гц на ногу D3 (PD3, INT1). Земля у них все равно осталась общей, через USB, а вход INT0 оказался заземленным. Исправил, и все пошло.
Извините за беспокойство...
Извините за беспокойство...
Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)
- Реклама

