16+
Понедельник
24 сентября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
sladkoejka  (02.07.2018 08:14) , в ответ на blink.c: У вас ИМХО приходит запрос прерывания от источника с вектором от 0x2B (а может и от 0x13 !) до 0x63. Попытайтесь обнулить регистр EIE и вместо IE |= 0x82 запишите IE = 0x82. автор: Boвa
Похоже всё дело в т.н. "автовекторе" для USB прерывания. 
Это фича этого контроллера. Автовектор - это немного инная обработка вектора USB прерывания. По вектору ставится LJMP с указанием на новую таблицу векторов для USB прерываний. А контроллер подменяет в адрес LJMP, как именно пока не разобрался... Однако установка EIE = 0 не устраняет проблему. Вероятно в этой области памяти (0x43 и чуть выше) код выполняется по особому. Кстати установка EIE = 0 и IE = 0x82 в компиляторе SDCC тоже не устраняет быстрого мигания...
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII