Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Сб мар 31, 2012 10:45:23
GP1
для устранения проблем нерационального расхода времени просто переводится сканер дисплея/клавиатуры в фоновый режим вместо указанного в той программе основного...
только вот у меги и малых пиков (в отличии от 8051) нет приоритетного контроллера прерываний... "мудрить" надобно...
Сб мар 31, 2012 12:01:06
BOB51 у меня весь вывод организован в фоновом режиме
и мудрить особо ничего не надо, просто используется один таймер настроенный на прерывание 2-5 мс.
а поскольку это процесс не требующий особой точности +/-200..300 мкс ни как не повлияет, это 180-250 инструкций, и если бы у АВРов были приоритеты, этому процессу можно смело присвоить низший приоритет.
Сб мар 31, 2012 19:26:08
это если только один процесс использует прерывания, или потоки синхронизированы...
опять же без разрешения прерываний внутри текущего у аврки не обойтись - что уже есть необходимость немножко "помудрить" по сравнению с автоматическим исполнением у 8051 (о 10/12/16 пиках уж ...
)
Сб июн 09, 2012 19:55:25
Вроде как у авр есть приоритет прерываний, как по списку идет, так сверху более высокий.Как я понял.
Вс июн 10, 2012 09:09:51
так весь фокус в том, что для AVR это уже будет "вложенное прерывание" которое еще необходимо предварительно разрешить во всех прерываниях более низкого уровня
здесь есть приоритет, но нет автоматического выполнения прерываний высшего уровня во время исполнения прерывания низшего уровня (в отличии от контроллеров mcs51 и урезанного до 2-хуровней вложений на pic18)
Вс июн 10, 2012 11:22:24
а зачем во всех?только в том,который хотим в фоновый режим отправить.
Вс июн 10, 2012 11:47:57
во всех примененных в данной программе, если есть приоритет хотя бы у одного из них
"ни одно прерывание не может быть выполнено пока не исполнится одна команда после reti",
а "вложенное", даже если его "приоритет" (размещение вектора в таблице векторов) будет выше не будет исполняться, если на данный момент уже исполняется другое, пусть даже и более низкого уровня, прерывание без соответствующего на то разрешения со стороны программиста...
(в mcs51 / pic18 автоматически выполнится прерывание высшего приоритета, если оно разрешено)
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.