|
В какой моде запускать main?, Вот в чем вопрос. |
|
|
|
Apr 17 2009, 00:51
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Почему-то я не смог обеспечить вложенные прерывания, если запускаю процессор в SVC mode. __nested подвешивает тогда прерывания намертво. И никаких тебе приоритетных прерываний.
Таким образом только USER or System.
А без вложенных прерываний - жизнь не мила. Символы RS232 приемника теряются.
Но где-то мелькало сообщение, что WinCE запускает программы юзера в SVC mode. (Товарищ, который об этом писал из пользовательской программы менял таблицу распределения виртуальной памяти и вообще, делал все, что хотел.)
Возможно, если вход-выход из IRQ писать отдельно и читать руками вектор прерывания, то может и можно что-то сделать? И стоит ли? А то уж очень не хочется ломать прямую загрузку вектора из АИК. Типа, одна команда, практически.
И чем так плоха System mode?
--------------------
On the road again (Canned Heat)
|
|
|
|
|
 |
Ответов
|
Apr 17 2009, 15:25
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(DpInRock @ Apr 17 2009, 15:44)  Было бы нагло начинать писать программу с PDC для DBGU. Тем более, из средств отладки - только 4 светодиода на плате. (Но попробую. По крайней мере приемник. У звука сделал большой буфер, чтобы пореже дергал (раз в 16 мс). А он больше 100 микросекунд иногда забирает. ) А DBGU именно для отладки используется ? Конечно нужно использовать PDC, правда у DBGU нет очень удобного для этого флага TIMEOUT. Но в принципе, если речь об отладке, то прерывания DBGU вобще не нужны, достаточно задать буфер приличной длины и опрашивать чего там напередавалось в каком-нить переодическом прерывании(если есть) в системе. ИМХО, это совсем не случай для вложенности прерываний...
|
|
|
|
|
Apr 17 2009, 20:00
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(aaarrr @ Apr 17 2009, 19:35)  Да, Атмелы пожмотились почему-то на такую ерунду  ага, у мня в проекте где много интерфейсов(то есть почти все какие есть в SAM7А3) из-за этого отдельные линии квитирования Если автор топика не против,то задам свой вопрос почти по теме.. помница Вы упоминали о ~2 случаях использования вложенных прерываний на АРМ очень просто интересно, я несколько раз порывался написать свои хитрые обработчики с возможностью вложенных прерываний и так их и не написал тк каждый раз был придуман алгоритм который будет лучше без всяких вложенных прерываний, ну и на обработчиках IRQ я тоже не хило при этом экономлю... Вот чисто для себя решил что IRQ только "последовательно"(но короткие обработчики), а если нужно чего-нить супербыстрое то FIQ и 1 источник... Вот и хотелось бы услышать о Ваших случаях когда вложенные прерывания понадобились...
|
|
|
|
|
Apr 17 2009, 20:38
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(singlskv @ Apr 18 2009, 00:00)  Вот и хотелось бы услышать о Ваших случаях когда вложенные прерывания понадобились... Например, в LED экране на SAM7X: - 3 прерывания (2 таймера и SPI) обеспечивают развертку, очень короткие, имеют высший приоритет (т.к. тайминги жесткие, развертку ломать нельзя). - прерывание от EMAC'а имеет приоритет на единицу ниже: поток здоровый (~80Мбит/с в обе стороны), реагировать нужно быстро. - перывание от UART'а. - прерывание от PIT. Еще в проекте измерительного стенда примерно со столь же тяжелым раскладом. Короче, вложенные прерывания оказываются востребованы тогда, когда нужно разрулить большое число источников с низкой латентностью. В большинстве же случаев действительно достаточно обычных IRQ или IRQ+FIQ. P.S. Пользуясь случаем, хочу послать луч ненависти инженерам фирмы Атмел за фиксированный размер приемного буфера EMAC в 128 байт.
|
|
|
|
Сообщений в этой теме
DpInRock В какой моде запускать main? Apr 17 2009, 00:51 aaarrr Цитата(DpInRock @ Apr 17 2009, 04:51) А б... Apr 17 2009, 01:09 aaarrr Цитата(DpInRock @ Apr 17 2009, 15:44) А в... Apr 17 2009, 11:51     singlskv Цитата(aaarrr @ Apr 18 2009, 00:38) Напри... Apr 17 2009, 21:00      aaarrr Цитата(singlskv @ Apr 18 2009, 01:00) рул... Apr 17 2009, 21:12       singlskv Цитата(aaarrr @ Apr 18 2009, 01:12) Допол... Apr 17 2009, 21:34        aaarrr Цитата(singlskv @ Apr 18 2009, 01:34) циф... Apr 17 2009, 21:41         singlskv Цитата(aaarrr @ Apr 18 2009, 01:41) Так е... Apr 17 2009, 21:58          aaarrr Цитата(singlskv @ Apr 18 2009, 01:58) Ну ... Apr 17 2009, 22:08           singlskv Цитата(aaarrr @ Apr 18 2009, 02:08) Объяс... Apr 17 2009, 22:28            aaarrr Цитата(singlskv @ Apr 18 2009, 02:28) В п... Apr 17 2009, 22:40             singlskv Цитата(aaarrr @ Apr 18 2009, 02:40) ИМХО,... Apr 17 2009, 22:53              aaarrr Цитата(singlskv @ Apr 18 2009, 02:53) Не ... Apr 17 2009, 22:59               singlskv Цитата(aaarrr @ Apr 18 2009, 02:59) Очень... Apr 17 2009, 23:03      aaarrr Цитата(defunct @ Apr 18 2009, 04:33) Кака... Apr 18 2009, 00:41       defunct Цитата(aaarrr @ Apr 18 2009, 03:41) Больш... Apr 18 2009, 00:43 DpInRock Вот как раз про "естественно" я еще не д... Apr 17 2009, 13:08 DpInRock DBGU у меня для всего используется. А это чем-то п... Apr 17 2009, 22:12 aaarrr Цитата(DpInRock @ Apr 18 2009, 02:12) DBG... Apr 17 2009, 22:26 singlskv Цитата(DpInRock @ Apr 18 2009, 02:12) Вло... Apr 17 2009, 22:40  aaarrr Цитата(singlskv @ Apr 18 2009, 02:40) он ... Apr 17 2009, 22:46 aaarrr Затем, чтобы получить возможность уйти на обработк... Apr 17 2009, 23:07 singlskv Цитата(aaarrr @ Apr 18 2009, 03:07) Затем... Apr 17 2009, 23:13  aaarrr Цитата(singlskv @ Apr 18 2009, 03:13) Тог... Apr 17 2009, 23:21   singlskv Цитата(aaarrr @ Apr 18 2009, 03:21) Так з... Apr 17 2009, 23:24 aaarrr "Просто FIQ" дает только один источник с... Apr 17 2009, 23:28 singlskv Цитата(aaarrr @ Apr 18 2009, 03:28) ... Apr 17 2009, 23:31  aaarrr Цитата(singlskv @ Apr 18 2009, 03:31) И И... Apr 17 2009, 23:36 singlskv Цитата(aaarrr @ Apr 18 2009, 03:28) ... Apr 17 2009, 23:38  aaarrr Цитата(singlskv @ Apr 18 2009, 03:38) Поч... Apr 17 2009, 23:44   singlskv Цитата(aaarrr @ Apr 18 2009, 03:44) Еще р... Apr 17 2009, 23:59    aaarrr Цитата(singlskv @ Apr 18 2009, 03:59) Тру... Apr 18 2009, 00:06     singlskv Цитата(aaarrr @ Apr 18 2009, 04:06) Лишни... Apr 18 2009, 00:21      aaarrr Цитата(singlskv @ Apr 18 2009, 04:21) дал... Apr 18 2009, 00:35       defunct Цитата(aaarrr @ Apr 18 2009, 03:35) О как... Apr 18 2009, 00:40        aaarrr Цитата(defunct @ Apr 18 2009, 04:40) Види... Apr 18 2009, 00:45         defunct Цитата(aaarrr @ Apr 18 2009, 03:45) Видит... Apr 18 2009, 01:01          aaarrr Цитата(defunct @ Apr 18 2009, 05:01) Ну д... Apr 18 2009, 01:09           defunct Цитата(aaarrr @ Apr 18 2009, 04:09) Грех ... Apr 18 2009, 01:17            aaarrr Цитата(defunct @ Apr 18 2009, 05:17) Что ... Apr 18 2009, 01:23             defunct Цитата(aaarrr @ Apr 18 2009, 04:23) Чтобы... Apr 18 2009, 01:41              aaarrr Цитата(defunct @ Apr 18 2009, 05:41) Не с... Apr 18 2009, 01:57               defunct Цитата(aaarrr @ Apr 18 2009, 04:57) А TE ... Apr 18 2009, 02:47                aaarrr Цитата(defunct @ Apr 18 2009, 06:47) Вот ... Apr 18 2009, 13:08       singlskv Цитата(aaarrr @ Apr 18 2009, 04:35) За ид... Apr 18 2009, 00:45        aaarrr Цитата(singlskv @ Apr 18 2009, 04:45) Уже... Apr 18 2009, 00:51         singlskv Цитата(aaarrr @ Apr 18 2009, 04:51) Попыт... Apr 18 2009, 01:06          defunct Цитата(singlskv @ Apr 18 2009, 04:06) я н... Apr 18 2009, 01:13          aaarrr Цитата(singlskv @ Apr 18 2009, 05:06) Я ж... Apr 18 2009, 01:16           singlskv Цитата(aaarrr @ Apr 18 2009, 05:16) Да, E... Apr 18 2009, 01:22 DpInRock У меня USB противопоказан. Типа, опторазвязка есть... Apr 18 2009, 01:01 aaarrr Цитата(DpInRock @ Apr 18 2009, 05:01) А в... Apr 18 2009, 01:05 DpInRock И чего столько проблемсвложенностью образовалось?
... Apr 18 2009, 01:27 singlskv Цитата(DpInRock @ Apr 18 2009, 05:27) И ч... Apr 18 2009, 01:32 aaarrr Не-а, не шутка. Почему это так удивляет? Apr 18 2009, 01:33 singlskv Цитата(aaarrr @ Apr 18 2009, 05:33) Не-а,... Apr 18 2009, 01:39
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|