реклама на сайте
подробности

 
 
> Прерывание в прерывании, Для реализации Super Simple Tasker
arhiv6
сообщение Nov 7 2017, 12:00
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 633
Регистрация: 21-05-10
Из: Томск
Пользователь №: 57 423



Super Simple Tasker - один из вариантов реализации вытесняющей многозадачности для микроконтроллеров. Как в нём работает асинхронное переключение на более приоритетные задачи написано в статье под рисунком 3. Для реализации SST нужна такая вещь: в функции-обработчике прерывания, после выполнения необходимого кода, нужно как-то сообщить микроконтроллеру, что с прерыванием закончили работать но из функции-обработчика не выходить. Т.е. нужно разрешить вложенные прерывания (одни и те же).

В статье в примере для ПК это делается так: используется команда End Of Interrupt (EOI) - outportb(0x20, 0x20). Обычно она выполняется непосредственно перед выходом из функции-обработчика прерывания, но в SST после EOI вызывается диспетчер, прямо в контексте прерывания. Т.е. вызвав EOI, но оставаясь в контексте прерывания, мы разрешаем вложенные прерывания. Как это можно сделать для ARM (Cortex)?


--------------------
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DASM
сообщение Nov 8 2017, 21:23
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Да уж.. сколько чудных открытий sm.gif человек недавно паттерны открыл и берется судить о говнокоде. Ничего, склетон освоите, посетителя - про свой прошлый код также писать будете. А только все это фигня, сейчас функциональное программирование в моде. И снова все говнокодом покажется. Большая ошибка судить людей по паре постов, думая что они ничего не знают, а я такой плюсанутый и ртоснутый на всю голову. С возрастом пойдет
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- arhiv6   Прерывание в прерывании   Nov 7 2017, 12:00
- - Forger   Цитата(arhiv6 @ Nov 7 2017, 15:00) один и...   Nov 7 2017, 13:02
|- - Студент заборстроительного   Цитата(Forger @ Nov 7 2017, 16:02) Цитата...   Nov 8 2017, 16:41
|- - Forger   Цитата(Студент заборстроительного @ Nov 8 201...   Nov 8 2017, 20:41
|- - ig_z   QUOTE (Forger @ Nov 8 2017, 22:41) С друг...   Nov 9 2017, 20:15
|- - Forger   Цитата(ig_z @ Nov 9 2017, 23:15) в каждой...   Nov 9 2017, 21:41
- - arhiv6   Как минимум, это интересно - попробовать разные по...   Nov 7 2017, 13:17
|- - Forger   Цитата(arhiv6 @ Nov 7 2017, 16:17) А ещё ...   Nov 7 2017, 13:30
||- - DASM   Цитата(Forger @ Nov 7 2017, 16:30) В мелк...   Nov 7 2017, 14:28
||- - Forger   Цитата(DASM @ Nov 7 2017, 17:28) Я отказа...   Nov 7 2017, 14:45
||- - jcxz   Цитата(DASM @ Nov 7 2017, 16:28) Я отказа...   Nov 7 2017, 15:04
|- - jcxz   Цитата(arhiv6 @ Nov 7 2017, 15:17) Как ми...   Nov 7 2017, 15:00
- - Obam   Цитата(arhiv6 @ Nov 7 2017, 16:00) нужно ...   Nov 7 2017, 13:44
- - AHTOXA   Цитата(arhiv6 @ Nov 7 2017, 17:00) Как эт...   Nov 7 2017, 14:17
- - ViKo   Подтверждаю, RTX RTOS от Keil - весьма достойная п...   Nov 7 2017, 14:52
- - DASM   "прихожу лишь к одному выводу " - приход...   Nov 7 2017, 14:53
|- - jcxz   Цитата(DASM @ Nov 7 2017, 16:53) Вы лучше...   Nov 7 2017, 15:08
|- - Forger   Цитата(DASM @ Nov 7 2017, 17:53) "пр...   Nov 7 2017, 15:18
- - scifi   Гугл вводит на гитхаб. Возможно, всё украдено до н...   Nov 7 2017, 15:04
- - DASM   Так может Вы дадите совет, сколько памяти давать к...   Nov 7 2017, 15:08
|- - jcxz   Цитата(DASM @ Nov 7 2017, 17:08) Так може...   Nov 7 2017, 15:11
|- - DASM   Цитата(jcxz @ Nov 7 2017, 18:11) А в чём ...   Nov 7 2017, 15:29
|- - jcxz   Цитата(DASM @ Nov 7 2017, 17:29) Тем, что...   Nov 7 2017, 15:58
- - DASM   Я немного преувеличил для ясности. Эти РТОС замеча...   Nov 7 2017, 15:11
|- - Forger   Цитата(DASM @ Nov 7 2017, 18:11) Эти РТОС...   Nov 7 2017, 15:38
- - DASM   Да никто не хает, каждый до..ит как хочет. Просто ...   Nov 7 2017, 15:39
|- - Forger   Цитата(DASM @ Nov 7 2017, 18:39) Ваши РТО...   Nov 7 2017, 15:46
|- - jcxz   Цитата(DASM @ Nov 7 2017, 17:39) но навск...   Nov 7 2017, 16:11
|- - Forger   Цитата(jcxz @ Nov 7 2017, 19:11) Чтобы по...   Nov 7 2017, 16:13
- - arhiv6   Цитата(AHTOXA @ Nov 7 2017, 21:17) Здесь ...   Nov 7 2017, 15:59
|- - jcxz   Цитата(arhiv6 @ Nov 7 2017, 17:59) Пожалу...   Nov 7 2017, 16:16
|- - Forger   Цитата(jcxz @ Nov 7 2017, 19:16) Наверное...   Nov 7 2017, 17:56
- - arhiv6   Смотрел я исходники ОС, но они все по похожему при...   Nov 7 2017, 17:28
|- - Forger   Цитата(arhiv6 @ Nov 7 2017, 20:28) Как пр...   Nov 7 2017, 18:27
||- - arhiv6   Цитата(Forger @ Nov 8 2017, 01:27) Как бы...   Nov 7 2017, 19:00
|- - jcxz   Цитата(arhiv6 @ Nov 7 2017, 19:28) Смотре...   Nov 7 2017, 21:33
- - arhiv6   jcxz, Forger, я не знаю, как правильно сделать, по...   Nov 7 2017, 18:14
- - DASM   Меня устраивает карусель кооперативная на таймерах...   Nov 7 2017, 18:50
|- - Forger   Цитата(DASM @ Nov 7 2017, 21:50) void Led...   Nov 7 2017, 19:01
- - DASM   Первое, что приходит в голову так: о как, у меня т...   Nov 7 2017, 19:05
|- - Forger   Цитата(DASM @ Nov 7 2017, 22:02) Просто к...   Nov 7 2017, 19:05
||- - DASM   Цитата(Forger @ Nov 7 2017, 22:05) Ну-ну,...   Nov 7 2017, 19:08
|- - arhiv6   Цитата(DASM @ Nov 8 2017, 02:05) Первое, ...   Nov 7 2017, 19:08
|- - Forger   Цитата(DASM @ Nov 7 2017, 22:05) Первое, ...   Nov 7 2017, 19:21
|- - jcxz   Цитата(DASM @ Nov 7 2017, 21:05) вы шину ...   Nov 7 2017, 21:46
- - DASM   Ну да , тут собственно у меня так и есть   Nov 7 2017, 19:13
- - DASM   @ Читайте матчасть по ARM Cortex.@ Ладно, спорить ...   Nov 7 2017, 19:29
|- - Forger   Цитата(DASM @ Nov 7 2017, 22:29) @ Читайт...   Nov 7 2017, 19:36
|- - AlexandrY   Цитата(Forger @ Nov 7 2017, 21:36) Для те...   Nov 7 2017, 20:41
||- - Forger   Цитата(AlexandrY @ Nov 7 2017, 23:41) Да ...   Nov 7 2017, 21:44
|- - AVR   Цитата(Forger @ Nov 7 2017, 22:36) ОК, сл...   Nov 8 2017, 08:44
||- - Forger   Цитата(AVR @ Nov 8 2017, 11:44) Ради него...   Nov 8 2017, 12:53
|- - jcxz   Цитата(Forger @ Nov 7 2017, 21:36) Для те...   Nov 8 2017, 20:49
|- - Forger   Цитата(jcxz @ Nov 8 2017, 23:49) может ес...   Nov 8 2017, 20:54
- - DASM   А где тут DMA и что и куда оно грузит?   Nov 7 2017, 21:01
|- - AlexandrY   Цитата(DASM @ Nov 7 2017, 23:01) А где ту...   Nov 8 2017, 06:13
- - DASM   Ну не знаю, у меня на Ардуино все проще, а на мали...   Nov 7 2017, 22:35
|- - Forger   Цитата(DASM @ Nov 9 2017, 00:23) склетон ...   Nov 8 2017, 23:29
- - syoma   Возвращаясь к оригинальной теме по поводу прерыван...   Nov 17 2017, 10:45
|- - Forger   Цитата(syoma @ Nov 17 2017, 13:45) что AR...   Nov 17 2017, 11:07
|- - scifi   Цитата(syoma @ Nov 17 2017, 13:45) Каково...   Nov 17 2017, 11:15
||- - Forger   Цитата(scifi @ Nov 17 2017, 14:15) Всё он...   Nov 17 2017, 11:37
||- - syoma   Цитата(scifi @ Nov 17 2017, 14:15) Всё он...   Nov 17 2017, 12:02
||- - Forger   Цитата(syoma @ Nov 17 2017, 15:02) И мое ...   Nov 17 2017, 12:17
||- - Obam   Цитата(syoma @ Nov 17 2017, 16:02) …Если ...   Nov 17 2017, 13:03
||- - AlexandrY   Цитата(syoma @ Nov 17 2017, 14:02) Ну я н...   Nov 17 2017, 13:42
||- - jcxz   Цитата(syoma @ Nov 17 2017, 14:02) Наскол...   Nov 17 2017, 13:44
|- - Timmy   Цитата(syoma @ Nov 17 2017, 13:45) Каково...   Nov 17 2017, 12:01
- - syoma   Знающие люди подсказали такой вариант. У них работ...   Nov 17 2017, 18:04
- - AlexandrY   Цитата(syoma @ Nov 17 2017, 20:04) Знающи...   Nov 17 2017, 18:56
- - syoma   Цитата(AlexandrY @ Nov 17 2017, 21:56) Кт...   Nov 17 2017, 20:51
- - AlexandrY   Цитата(syoma @ Nov 17 2017, 22:51) Если б...   Nov 17 2017, 21:35


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 10:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016