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

 
 
> Особенности построения ПО c использованием RTOS, Взаимодействия между отдельными задачами, событиями ???
Asteo
сообщение May 13 2014, 13:41
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 7-04-14
Пользователь №: 81 265



Доброго времени суток!


По немногу разбираюсь с freeRTOS. До этого использовал архитектуру: "Суперцикл+прерывания".

Интересуют особенности построения архитектуры ПО с ее использованием.
Т.е. "Как наиболее грамотно и рационально произвести взаимодействия между отдельными задачами, событиями ".

В учебных целях (а в случае успеха и "сугубо индивидуальных меркантильных планах автора " wink.gif ) было решено разработать проект GPS трекера для автомобиля.

В кратце:

Планируется использовать несколько цифровых и аналоговых GPIO.
Повесить датчики на стандартные интерфейсы(I2С,SPI,UART,1-Wire).
Использовать несколько каналов АЦП и т.д.
Для ведения "event log" планирую какую нибудь внутреннюю память (FSMC или SPI Serial Flash -- еще не определился),
а также microSD-card.
С помощью GSM модуля данные будут передаваться на сервер.
В качестве отладочных стендов использую STM32f103RET6 от "Terraelectronica", SIM68v и sim900 от SimCom.

Идею обрисовал , теперь ближе к делу.

Поставил RTOS, прикрутил задачу взаимодействия с GPS , установил FatFs от Чана (SDIO) , пишу лог NMEA сообщений на microSD.
Но это сейчас все в одной задаче. Чтобы было видно, что RTOS не завис, параллельная задача мигает диодом .

Дальше необходимо организовать сбор данных с других ресурсов --- GPIO,АЦП, I2C .
И вот тут у меня как у начинающего и возник вопрос ---Как с помощью freeRTOS наиболее рационально и целесообразно осуществить сбор данных с разных ресурсов микроконтроллера и осуществить их запись по протоколу в память?(Передачу по GSM пока не трогаем, хотя и подразумеваем что она будет осуществляться в дальнейшем.)

А хочу я от вас я хочу ответы по типу:


1) Высокоприоритетные задачи обработки периферии с использованием соответствующих прерываний собирают данные. Используя механизмы семафоров и очередей передают их низкоприоритетной задаче, которая собрав все необходимые данные пишет их на SD карту.

2)Высокоприоритетные задачи обрабатывают данные и каждая пишет свой собственный лог в буффер во flash памяти(возможно даже дублирует). Низкоприоритетная задача читает все эти логи и пишет на SD card.

3) Ваш способ + обоснование "Почему так". biggrin.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Asteo   Особенности построения ПО c использованием RTOS   May 13 2014, 13:41
- - iosifk   Цитата(Asteo @ May 13 2014, 17:41) На са...   May 13 2014, 14:03
- - Asteo   Спасибо,прочел, специально написал, что часть рабо...   May 13 2014, 14:20
|- - iosifk   Цитата(Asteo @ May 13 2014, 18:20) Спасиб...   May 13 2014, 14:23
||- - Asteo   Цитата(iosifk @ May 13 2014, 17:23) Так н...   May 13 2014, 14:35
||- - iosifk   Цитата(Asteo @ May 13 2014, 18:35) Я пони...   May 13 2014, 14:50
||- - Asteo   Цитата(iosifk @ May 13 2014, 17:50) Совсе...   May 13 2014, 15:15
||- - AlexandrY   Цитата(Asteo @ May 13 2014, 18:15) Я испо...   May 15 2014, 19:09
|- - AlexandrY   Цитата(Asteo @ May 13 2014, 17:20) Спасиб...   May 13 2014, 14:36
- - Jekin   При использовании RTOS первый путь наиболее рацион...   May 13 2014, 14:36
- - Jekin   Цитата(AlexandrY @ May 15 2014, 22:09) Ко...   May 16 2014, 08:35
|- - AlexandrY   Цитата(Jekin @ May 16 2014, 11:35) Asteo ...   May 16 2014, 09:13
|- - Asteo   Цитата(AlexandrY @ May 16 2014, 12:13) Чт...   May 17 2014, 03:02
|- - kolobok0   Цитата(AlexandrY @ May 16 2014, 13:13) .....   May 17 2014, 03:53
- - Rst7   Moderator: Господа, а особенно juvf, давайте без ...   May 17 2014, 02:06
- - Jekin   AlexandrY, на счет гибкости системы я с Вами согла...   May 17 2014, 03:28
|- - Asteo   Jekin, Спасибо! Почитаю про RL-FlashFS. Ранее ...   May 17 2014, 03:49
|- - AlexandrY   Цитата(Jekin @ May 17 2014, 10:38) Alexan...   May 19 2014, 04:02
|- - MiklPolikov   Цитата(Jekin @ May 17 2014, 07:28) В сост...   Jul 17 2014, 09:50
- - Asteo   Вот здесь http://www.keil.com/support/man/docs/rla...   May 17 2014, 05:39
|- - Jekin   Цитата(Asteo @ May 17 2014, 08:39) Каким ...   May 17 2014, 05:51
- - Asteo   Раньше использовал 4.73, сейчас перешел на 5.10.xx   May 17 2014, 06:00
|- - Jekin   В новой версии Middleware подключается через ...   May 17 2014, 06:09
- - Asteo   Создал тему про Keil RL File System отдельно , даб...   May 17 2014, 06:52
- - Asteo   Цитата(kolobok0 @ May 17 2014, 11:03) сам...   May 19 2014, 03:19
|- - kolobok0   Цитата(Asteo @ May 19 2014, 11:29) ...осн...   May 19 2014, 13:18
- - Asteo   Доброго времени суток! В свободное время прод...   Jul 14 2014, 10:37
- - grv   Коллеги, поскажите. Есть вполне увесистый проект н...   Oct 4 2015, 12:20


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

 


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


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