![]() |
|
Модераторы: PILOT, ManiaK, Mazzi |
![]()
|
|
| Hobo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 15.4.2004 Репутация: нет Всего: нет |
Подскажите, а то я уже совсем замучился
mega32 /* àäðåñà äëÿ äàò÷èêîâ // addr2 addr1 addr0 ìàñêà 7 6 5 4 3 2 1 0 // 0 0 1 WOG1 0x08 x x 0 0 1 x x x // 0 1 0 WOG2 0x10 x x 0 1 0 x x x // 0 1 1 WOG3 0x18 x x 0 1 1 x x x // 1 0 0 WOG4 0x20 x x 1 0 0 x x x */ SIGNAL(SIG_INTERRUPT0) { register char address; address=inp(PINC); while(bit_is_clear(PIND,2)); // Confirmation(); if (address==0x08) sbi(PORTC,7); } int main(void) { DDRC=0xC0 sei(); for(;;) { } } то есть при возникновение прерывания идет опрос адреса и при совпадение адреса выставляется потверждение. Гоняю в Симуляторе все нормально, на реальном устройстве не хочет - зараза. если детектирование адреса убрать, то потвеждение выставляется. Если кто сталкивался с подобным - поделитесь опытом. Заранее спасибо |
|||
|
||||
| ManiaK |
|
|||
![]() Homo Sapience ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Зачем же так? Неужели для SIG_INTERRUPT0 не нужно инициализировать никаких регистров?.. |
|||
|
||||
| Hobo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 15.4.2004 Репутация: нет Всего: нет |
MCUCSR = 0x00;
MCUCR = 0x00; GIFR = 0x00; GICR = 0x40; просто это кусок кода не привел |
|||
|
||||
| ManiaK |
|
|||
![]() Homo Sapience ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
Тогда по порядку. Прерывание вообще приходит?
|
|||
|
||||
| Hobo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 15.4.2004 Репутация: нет Всего: нет |
да прерывания приходят и отрабатываются
while(bit_is_clear(PIND,2)); Confirmation(); но как я не могу определить адрес, не могу прочитать данные с PINC.x хотя все просто res=inp(PINC); для проверки ставим следующее PORTA = res; и получаем... БОЛЬШУЮ ДЫРКУ ОТ БУБЛИКА вот и хочу понять в каком месте я дурак |
|||
|
||||
| Hobo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 15.4.2004 Репутация: нет Всего: нет |
осел баран идиот - это относится ко мне
решил перепроверить биты защиты, и что я вижу стоит разрешеным JTAG |
|||
|
||||
| ManiaK |
|
|||
![]() Homo Sapience ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1145 Регистрация: 3.8.2004 Где: ИУ5-93 Репутация: 2 Всего: 29 |
В нашей работе всяка бывает
Как-то с пол часа пытался связаться с устройством, у которого было отключено питание |
|||
|
||||
![]()
|
| Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)" | |
|
|
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |