Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Что можно использовать для реализации потоков (thread) на AVR (+)
Отправлено
MikhailSh
25 декабря 2009, г. 19:35
Необходимо выполнять три-четыре параллельных (псевдо) потока (функций) на микроконтроллере AVR, например на mega.
Какие реализации потоков существуют для avr на IAR -
scmRTOS, AVR Threads и т. п.
Составить ответ
|
Вернуться на конференцию.
Ответы
1. Запретить раз и навсегда прерывания. 2. Разбить каждую задачу на элементарные шаги и разместить их в массиве. 3. Создать структуру, где будет храниться: указатель на функуию-шаг задачи, переменная-индекс шага, перменная для таймера и т.п.. >>
-
VasilyS
(25.12.2009, 22:39:17
80.92.96.25
, 835 байт)
Оганить треды на АВР, это хрень! Полная! Забудь! Самое блзкое - пишешь цикл с функциями которые выполняются по приоритету от таймера. И кждая из этих функ. выполняется как можно быстрей(по условиям). Примерный аналог КАРУСЕЛЬНОЙ ОС. Прерывания не отменяются...
-
PaulS
(25.12.2009, 22:01:46
93.81.4.169
,
пустое
)
А можно поподробней, с абстрактным примером, плс.
-
MikhailSh
(26.12.2009, 07:36:0
192.168.100.78,83.242.253.134
,
пустое
)
Называется это "карусельная многозадачность" в отличии от более сложной - "вытесняющей многозадачности".
-
Юрий_СВ
(26.12.2009, 16:07:46
217.12.195.250
, 1065 байт)
Спасибо! Я примерно так и делаю, только функции очень большие получаются и очень много флагов состояния. попробую разбивать на более мелкие.
-
MikhailSh
(26.12.2009, 18:02:13
188.122.226.4
,
пустое
)
Во бля, как алко меняет русский язык на падонкоф (хотя у падонкаф со временем тоже грамматика может появиться :)
-
PaulS
(25.12.2009, 22:06:8
93.81.4.169
,
пустое
)
FreeRTOS. Про MMU не парься - это мода такая, типа я крутой,у нас защита процессов -в реалии же мура. Если хош изобразить бурную деятельность - линукс и проц. Если сделать проект - добавь эту конфу в блэклист
-
DASM
(25.12.2009, 21:57:1
78.36.71.51
,
пустое
)
И как он дырки в памяти будет без ММУ латать ? Или процессы будут "статические" ? Тогда это мощно :)) Тут без ОС никак.
-
Юрий_СВ
(25.12.2009, 22:03:19
217.12.195.250
,
пустое
)
ПМСМ, по-хорошему, настоящая многозадачность имеет смысл только там, где есть устройство преобразования адресов (мнимая адресация). Оно есть, н-р, в некоторых ARM9. Назыввается MMU. Иначе, в большинстве случаев, упорное желание "засветить" модное слово "thread" == маяться дурью.
-
Юрий_СВ
(25.12.2009, 21:24:57
91.214.248.66
,
пустое
)
спорить не буду, но человеку нужна обыкновенная RTOS
-
DASM
(25.12.2009, 22:00:1
78.36.71.51
,
пустое
)
Всякий специфичный софт для реализации потоков имеет смысл применять только тогда, когда разные потоки пишутся разными людьми. Если всё пишешь сам - пиши как обычную программу
-
Шунт_гороховый
(25.12.2009, 20:08:18
78.106.95.28
, 863 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 13:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru