Технический форум по робототехнике.
RoboTok » 17 янв 2009, 21:35
Всем привет!
Вот пописывая программу, заметил, что хотелось бы запускать задачи на выполнение более организованно.
Даже светодиодами помигать хочется уже цивилизованно, а не через таймер по прерыванию счётчик ставить.
Но разбираться и ставить чужую ОС не очень хочется.
Кто нибудь делал себе для МК менеджер задач ?
Последний раз редактировалось
RoboTok 17 янв 2009, 22:03, всего редактировалось 1 раз.
Сергей » 17 янв 2009, 21:53
Не нужно здесь городить огород, тем более не понимая как работает менеджер задач. Лучше возьми готовую ОСь для AVR, освой - и отпишись, будет полезней
Добавлено спустя 57 секунд:Ну естессно это ИМХО
![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
Кто знает, может сейчас нам посоветут os123.nm.ru .. ?
![Very Happy :D](http://roboforum.ru/images/smilies/biggrin.gif)
RoboTok » 17 янв 2009, 23:39
А я уже накидал МЗ.
Сейчас буду тестировать его
![Wink ;)](http://roboforum.ru/images/smilies/wink.gif)
RoboTok » 18 янв 2009, 21:28
Вот такая библиотечка по запуску задач получилась.
Если настроить работу по таймеру, то можно мигать светодиодами как душе угодно.
Ну и параллельно опрос кнопок вести и т.д.
- Вложения
-
task.rar
- (1.06 КиБ) Скачиваний: 39
Сергей » 18 янв 2009, 21:34
Ну.. что могу сказать.. успехов
![Very Happy :D](http://roboforum.ru/images/smilies/biggrin.gif)
=DeaD= » 18 янв 2009, 21:35
Да-да-да, мы ждём
![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
где тут смайлик с попкорном?
![Razz :P](http://roboforum.ru/images/smilies/tease.gif)
RoboTok » 18 янв 2009, 21:44
Вот пример использования:
Добавлено спустя 2 минуты 48 секунд:
Что то не пойму иронии.
Я уже внедрил его себе в проект.
Думаю 20 задач хватит для простого проекта на АРМе.
- Вложения
-
primertask1.rar
- (673 байт) Скачиваний: 37
Сергей » 18 янв 2009, 22:06
Ну дык молодец, никто же не спорит, просто желаем тебе удачи
![Very Happy :D](http://roboforum.ru/images/smilies/biggrin.gif)
RoboTok » 18 янв 2009, 22:06
Конечно ОС-ки обычно на СИ++ пишут, но я подумал, что мутить на классах будет слишком, да и долго...
Чуть попозже сделаю функцию остановки задачи и передачи ей сообщений.
Vooon » 18 янв 2009, 23:10
RoboTok писал(а):Конечно ОС-ки обычно на СИ++ пишут
Орлы?
RoboTok » 18 янв 2009, 23:16
Да тут одну оску видел на СИ++.
Только у них у многих один минус большой, они все импортные
![Bad :bad:](http://roboforum.ru/images/smilies/bad.gif)
Сергей » 18 янв 2009, 23:27
ОС лучше и нужно писать на Си.
blindman » 19 янв 2009, 06:25
для АВР есть много проектов ОС, в интернете легко найти. некоторые даже на тини работают. у меня есть ОС для АВР, незаконченная но вполне рабочая. написана в основном на С, поэтому несложно портировать и на другие архитектуры, например АРМ, переписывается только части кода которые отвечают за сохранение контекста при переключении задач, и прерывания. сейчас в от'езде, если интересно, выложу, когда вернусь домой.
Eще интересную концепцию организации многозадачности можно найти, если поискать "super simple tasker"
RoboTok » 19 янв 2009, 17:36
Почитал почитал и пришла мне думка...
Стоит, значит, у меня Keil, а на нём уже готовенькая ОСька RTL Kernel с библиотеками и примерами работы...
Добавлено спустя 1 минуту 9 секунд:
И пришёл мне в голову безумный проект.
Может мне на этой ОСьке и поморгать лампочками ?
Сергей » 20 янв 2009, 00:21
Я это и предлагал постами выше )