-
- Есть проблема, так как функция,из которой пережу, обработтки прерываний, то контроллер не выходит из режима interrupt. Что бы выйти, нужна asm вставка? - feo_kos(24.04.2012 00:17)
- Толко вчера вынужденно пытался заниматься такой ерундой - "перескочить лишнюю функцию" в ROM, подправив LR. Keil для кортексов не поддерживает ASM инлайны. Пришлось набросать внешнюю функцю на ASM. Дык компилятор при разных уровнях оптимизации Гудвин(117 знак., 24.04.2012 11:03)
- дайте больший кусок кода - koyodza(24.04.2012 10:25)
- Смысл всего этого: работаю со смарт-карточкой, и если карту вытащить во время транзакции, программа должна успеть "отключить" её и выйти из множества циклов в циклах снова на начало программы, до нового вставляния карты. Так что другого способа feo_kos(295 знак., 24.04.2012 12:21)
- А разве не для этого придуман setjmp/longjmp? А вообще да, по возможности надо стараться обходиться без таких извращений. - SciFi(24.04.2012 13:44)
- Для этого придуман try/throw/catch, но я не знаю, ембедеры этим пользуются? - йцукен(24.04.2012 14:36, )
- это очень плохой способ. Отвратительный koyodza(93 знак., 24.04.2012 13:30)
- Спасибо. нужно подумать об этом. просто так программа не загромождается. - feo_kos(24.04.2012 13:41)
- А разве не для этого придуман setjmp/longjmp? А вообще да, по возможности надо стараться обходиться без таких извращений. - SciFi(24.04.2012 13:44)
- Смысл всего этого: работаю со смарт-карточкой, и если карту вытащить во время транзакции, программа должна успеть "отключить" её и выйти из множества циклов в циклах снова на начало программы, до нового вставляния карты. Так что другого способа feo_kos(295 знак., 24.04.2012 12:21)
- вызов функции по указателю делается без ассемблерных вставок koyodza(322 знак., 23.04.2012 21:54)
- Во втором варианте функция возвращает int? - Evgeny_CD(23.04.2012 22:02)
- в обоих вариантах ничего не возвращает. В первом варианте это void proc(void), во втором void proc(int) - koyodza(23.04.2012 22:08)
- Простите, что докопался, но Вы можете расписать подробно назначение элементов описанных Вами конструкций? Давно хотел разобраться в тонкостях именно такого вызова функций, тут повод подвернулся :) . Заранее спасибо - Evgeny_CD(23.04.2012 22:25)
- Вот тут расписно ->, но... - Evgeny_CD(23.04.2012 22:37, ссылка)
- там как-то мутно расписано koyodza(1393 знак., 23.04.2012 22:57)
- Спасибо! - Evgeny_CD(23.04.2012 23:59)
- там как-то мутно расписано koyodza(1393 знак., 23.04.2012 22:57)
- Вот тут расписно ->, но... - Evgeny_CD(23.04.2012 22:37, ссылка)
- спасибо! - Evgeny_CD(23.04.2012 22:09)
- Простите, что докопался, но Вы можете расписать подробно назначение элементов описанных Вами конструкций? Давно хотел разобраться в тонкостях именно такого вызова функций, тут повод подвернулся :) . Заранее спасибо - Evgeny_CD(23.04.2012 22:25)
- в обоих вариантах ничего не возвращает. В первом варианте это void proc(void), во втором void proc(int) - koyodza(23.04.2012 22:08)
- Спасибо за объяснение. - feo_kos(23.04.2012 21:58)
- Во втором варианте функция возвращает int? - Evgeny_CD(23.04.2012 22:02)
- Пиши static void (* const jmp_to)(void) = (void*)0x1004b8; и далее jmp_to(). Ассемблер не нужен. - fk0(23.04.2012 21:22)
- Спасибо. - feo_kos(23.04.2012 21:37)
- Есть проблема, так как функция,из которой пережу, обработтки прерываний, то контроллер не выходит из режима interrupt. Что бы выйти, нужна asm вставка? - feo_kos(24.04.2012 00:17)