Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Операционные системы реального времени

Покупка
Артикул: 785926.01.99
Доступ онлайн
400 ₽
В корзину
Приведены необходимые теоретические сведения по операционной системе реального времени FreeRTOS. разработке программного обеспечения под данную операционную систему для микропроцессорного стенда SDK-2.0. в основе которого лежит однокристальный микроконтроллер LPC2292. имеющий в своем составе разнообразные устройства, предназначенные для ввода, обработки и вывода информации в цифровом и аналоговом виде. Доя студентов направления подготовки 09.04.01 «Информатика и вычислительная техника».
Мясников, В. И. Операционные системы реального времени : лабораторный практикум / В. И. Мясников. - Йошкар-Ола : Поволжский государственный технологический университет, 2016. - 140 с. - ISBN 978-5-8158-1773-9. - Текст : электронный. - URL: https://znanium.com/catalog/product/1892029 (дата обращения: 27.07.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
 
 
 
 
 
 
 
 

В. И. МЯСНИКОВ 

 
 
 

ОПЕРАЦИОННЫЕ СИСТЕМЫ 

РЕАЛЬНОГО ВРЕМЕНИ 

 
 

Лабораторный практикум  

 

 
 
 
 
 
 
 
 

Йошкар-Ола 

2016

 
УДК 681.3 
ББК  32.97 

М 88 

 
 
Рецензенты: 

технический директор СКБ «Хроматэк» В. С. Устюгов 
доцент кафедры ПиП ЭВС  ПГТУ, канд. техн. наук В. В. Кошкин 

 
 
 
 

Печатается по решению  

редакционно-издательского совета ПГТУ 

 
 
 
 
 
Мясников, В. И. 

М 88    Операционные системы реального времени: лабораторный прак
тикум / В. И. Мясников. – Йошкар-Ола: Поволжский государственный технологический университет, 2016. – 140 с.  

ISBN 978-5-8158-1773-9 

 

Приведены необходимые теоретические сведения по операционной 

системе реального времени FreeRTOS, разработке программного обеспечения под данную операционную систему для микропроцессорного стенда SDK-2.0, в основе которого лежит однокристальный микроконтроллер 
LPC2292, имеющий в своем составе разнообразные устройства, предназначенные для ввода, обработки и вывода информации в цифровом и аналоговом виде. 

Для студентов направления подготовки 09.04.01 «Информатика и вы
числительная техника». 

УДК 681.3 
ББК 32.97  

 

ISBN 978-5-8158-1773-9 
 В. И. Мясников, 2016 
 Поволжский государственный 
технологический университет, 2016 

ОГЛАВЛЕНИЕ 

ПРЕДИСЛОВИЕ ........................................................................................... 4 
ВВЕДЕНИЕ ................................................................................................... 5 
ОБЩИЕ СВЕДЕНИЯ О СТЕНДЕ ............................................................... 6 
ТЕХНИКА БЕЗОПАСНОСТИ ПРИ ВЫПОЛНЕНИИ  
ЛАБОРАТОРНЫХ РАБОТ .......................................................................... 8 
1. 
FreeRTOS – управление задачами .................................................10 

1.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ..........................................................10 
1.2. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ........................................24 
1.3. СОДЕРЖАНИЕ ОТЧЕТА .............................................................34 
1.4. КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................35 
Учебно-методическое обеспечение ...................................................... 35 

2. 
FreeRTOS – управление очередями ...............................................36 

2.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ..........................................................36 
2.2. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ........................................46 
2.3. СОДЕРЖАНИЕ ОТЧЕТА .............................................................48 
2.4. КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................48 
Учебно-методическое обеспечение ...................................................... 48 

3. 
FreeRTOS – драйверы, управление прерываниями ...................49 

3.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ..........................................................49 
3.2. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ........................................59 
3.3. СОДЕРЖАНИЕ ОТЧЕТА .............................................................61 
3.4. КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................61 
Учебно-методическое обеспечение ..................................................... 62 

4. 
FreeRTOS – семафоры, синхронизация задач ..............................63 

4.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ..........................................................63 
4.2. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ........................................72 
4.3. СОДЕРЖАНИЕ ОТЧЕТА .............................................................72 
4.4. КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................74 
Учебно-методическое обеспечение ..................................................... 75 

5. 
FreeRTOS – мьютексы, управление ресурсами ...........................76 

5.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ ..........................................................76 
5.2. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ ........................................83 
5.3. СОДЕРЖАНИЕ ОТЧЕТА .............................................................85 
5.4. КОНТРОЛЬНЫЕ ВОПРОСЫ .......................................................86 
Учебно-методическое обеспечение ..................................................... 86 

ЗАКЛЮЧЕНИЕ ............................................................................................87 
ПРИЛОЖЕНИЯ .................................................................................................... 88 

ПРЕДИСЛОВИЕ 

Микропроцессорные системы, которые непосредственно вза
имодействуют с объектом управления или контроля, принято 
называть встроенными (embedded). В связи с появлением большого количества разнообразных микроконтроллеров, встроенные 
системы в последнее время широко внедрились почти во все области деятельности человека. 

Данный лабораторный практикум посвящен вопросам разра
ботки программного обеспечения под операционной системой 
реального времени FreeRTOS. Он является продолжением лабораторного практикума «Программное обеспечение встраиваемых 
систем» для учебного стенда SDK-2.0, включающего 6 лабораторных работ. 

Настоящий практикум включает в себя 5 лабораторных работ, 

каждая из которых начинается с теоретической части, после которой описан порядок проведения работы и приведена структура 
отчета по ней. Далее следуют контрольные вопросы и учебнометодическое обеспечение. 

В ходе выполнения лабораторных работах изучается операци
онная система реального времени FreeRTOS, которая  портирована под микроконтроллер LPC2292. Исследуются особенности 
разработки программного обеспечения под операционную систему FreeRTOS. 

Лабораторный практикум адресован студентам, обучающимся 

по направлению подготовки 090401 – «Информатика и вычислительная техника», а также студентам других специальностей и 
направлений, интересующимся разработкой встраиваемых приложений. 

 
 

ВВЕДЕНИЕ 

 
В большинстве встраиваемых систем используется опера
ционная система реального времени. ОС РВ обеспечивает параллельное выполнение многих задач. В однопроцессорной 
вычислительной системе параллельное выполнение задач реализуется достаточно частым переключением процессора с одной задачи на другую.  

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

Применение готовой ОС РВ во встраиваемых системах да
ет, во-первых, средство распределения ресурсов между прикладными процессами и средство организации этих процессов. 
Во-вторых,  это отлаженный (то есть с минимальным количеством ошибок) программный код с полезной функциональностью. В-третьих, ОС РВ, как правило, является архитектурой с 
заведомо известными плюсами и минусами. В-четвертых, это 
средство для организации связи с достаточно большой номенклатурой аппаратных средств (различных контроллеров, периферийных устройств).  

Самостоятельная поддержка множества протоколов обмена, 

различных процессоров и контроллеров, как правило, оказывается нерентабельной для большинства компаний, создающих 
встраиваемые системы, что также определяет использование 
готовых ОС РВ. 

ОБЩИЕ СВЕДЕНИЯ О СТЕНДЕ 

Учебный лабораторный комплекс SDK-2.0 предназначен для 

изучения принципов организации микропроцессорных систем, 
структуры и функционирования базовых компонентов (памяти, 
контроллеров ввода-вывода, подсистемы памяти и т.д.), получения навыков программирования встраиваемых систем различного 
назначения.  

Отличительными чертами SDK-2.0 является высокая произво
дительность процессорного ядра, ориентация на одну из наиболее 
динамично развивающихся архитектур – ARM7, большое разнообразие периферийных блоков, включая часы реального времени, 
энергонезависимую память EEPROM, графическую консоль, контроллер Ethernet, контроллер беспроводных сетей IEEE 802.15.4, 
порты CAN 2.0 и RS-485. 
Вычислительное ядро:  

 центральный процессор имеет широко распространенную 

архитектуру ARM 7;  

 значительный объем памяти программ и данных, наличие 

энергонезависимой памяти EEPROM позволяют реализовывать сложные системные программные комплексы, в 
том числе файловые системы и операционные системы 
реального времени;  

 развитая структура подсистемы временной синхрониза
ции – встроенные часы реального времени, таймерысчетчики – обеспечивают возможность глубокого исследования принципов и проблем организации систем реального времени, планирования и синхронизации процессов 
и т.п.;  

 аппаратный сторожевой таймер (watch dog) для защиты от 

зацикливания при сбоях.  

Система ввода-вывода  

 большое количество дискретных входов-выходов с воз
можностью задавать образцовые тестовые воздействия;  

 быстродействующие аналоговые входы и выходы рабо
тающие, в том числе, в режиме ПДП.  

Коммуникационная подсистема:  

 большой выбор коммуникационных интерфейсов: CAN 

2.0, RS-485, RS-232, IEEE 802.15.4, Ethernet 10/100BaseTX;  

 ресурсов стенда достаточно для реализации полнофунк
ционального стека протоколов TCP/IP, включая WEBсервер.  

Возможности разработки и отладки ПО: 

 возможность загрузки и запуска тестовых программ в 

ОЗУ контроллера, без перепрограммирования FLASH;  

 возможность интерактивной встроенной отладки в рамках 

технологий JTAG и Embedded ICE;  

 обновление встроенного системного программного обес
печения во FLASH-памяти производится c персонального 
компьютера по стандартному каналу RS-232, без применения специальных программаторов.  

Технические и эксплуатационные характеристики  

 тип основного процессора – LCP2292;  
 память программ FLASH – 256 Кбайт;  
 статическое ОЗУ – 512 Кбайт;  
 память EEPROM – 4 Кб;  
 часы реального времени с резервным питанием;  
 клавиатура – кнопочная 4*4;  
 ЖКИ – графический FSTN, 122x32;  
 звукоизлучатель.  

Ввод-вывод  

 аналоговые входы – 8-канальный АЦП, 10 разрядов, 

0..5В;  

 аналоговые выходы – 2 канала на базе ШИМ, 10 разрядов, 

0..5В;  

 дискретные входы-выходы – 20 каналов TTЛ.   

ТЕХНИКА БЕЗОПАСНОСТИ ПРИ ВЫПОЛНЕНИИ 

ЛАБОРАТОРНЫХ РАБОТ 

 

1. Общие требования безопасности 
Опасные производственные факторы:  воздействие на челове
ка электрического тока, электрического поля, рентгеновского излучения, ультрафиолетового излучения. 

Действия факторов: вследствие неисправности кабеля, элек
трической вилки (розетки) или замыкания в цепи, пользователь 
компьютера попадает под напряжение. 

1.1. Студенты допускаются к работе в лаборатории после про
хождения ими вводного инструктажа с оформлением соответствующей записи в журнале по технике безопасности, первичного инструктажа на рабочем месте с записью в журнале по охране 
труда. Инструктаж проводит заведующий кабинетом, лабораторией. 

1.2. Запрещается оставлять рабочие места и ходить по лабора
тории во время занятия. 

1.3. Запрещается самостоятельно устранять неисправности  

оборудования. 

1.4. Запрещается находиться в лаборатории в верхней одежде. 

2. Требования безопасности перед началом работы 
2.1. К работе на стенде  допускаются только лица, прошедшие 

инструктаж по правилам его использования. 

2.2. Следует проверить наличие всех составляющих рабочего 

места стенда. 

2.3. Необходимо убедиться в отсутствии видимых поврежде
ний аппаратуры и рабочего места. Визуально проверить исправность штепсельной розетки, целостность проводов питания, 
штепсельной вилки. О выявленной неисправности сообщить преподавателю. 

2.4. Убрать с рабочего места лишние предметы (сумки, папки 

и прочее). 

2.5. Включать стенд можно только после разрешения препода
вателя. 

3. Требования безопасности во время работы 
3.1. При работе со стендом  и  пользовании записями в тетра
ди (книге) последняя должна быть хорошо освещена (не менее 
400 люкс) и находиться перед клавиатурой. 

3.2. При внезапном отключении электроэнергии в сети необ
ходимо выключить стенд. 

3.3. Во время эксплуатации при повреждении штепсельного 

соединения, токопроводящего кабеля, появлении дыма, обнаружении замыкания на корпус немедленно отключить стенд и доложить о поломке преподавателю. 

3.4. Запрещается вскрывать аппаратуру и производить ее ре
монт. 

3.5. Студенты обязаны бережно относиться к оборудованию, 

вычислительной технике, раздаточному материалу, мебели. 

3.6. Не использовать программные средства, не относящиеся  

к теме занятия. 

3.7. В случаях затруднений обращаться к преподавателю. 

4. Требования безопасности в аварийной обстановке 
4.1. При необходимости выключить рубильник. 
4.2. Сообщить о случившемся преподавателю. 
4.3. Не пользоваться стендом до полного устранения неис
правности. 

4.4. При получении травмы и внезапном заболевании немед
ленно известить руководителя. 

5. Требования безопасности по окончании работы 
5.1. Выключить стенд. 
5.2. Привести  в порядок рабочее место, сдать рабочее место 

преподавателю. 

5.3. Обо всех замечаниях и недостатках в работе стенда сооб
щить преподавателю. 

6. Ответственность 
6.1. Ответственность за выполнение инструкции несет зав. ка
бинетом (лабораторией). 

ЛАБОРАТОРНАЯ РАБОТА № 1 

FreeRTOS – управление задачами 

 
Цель работы – создание и настройка проектов под управ
лением операционной системы реального времени FreeRTOS. 

В процессе работы необходимо изучить: 

 создание и управление задачами в операционной си
стеме реального времени FreeRTOS; 

 выделение процессорного времени для каждой задачи 

внутри приложения; 

 приоритеты задач; 

 в каких состояниях может находиться задача. 

1.1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 

Программному обеспечению реального времени свойстве
нен асинхронный характер, связанный с взаимодействием программного обеспечения с физической системой в процессе 
управления. В большинстве случаев физическая система состоит из многих компонент, которые могут действовать одновременно и независимо, в то же время программное обеспечение должно функционировать правильно, без ошибок. 

Сложность программного обеспечения имеет тенденцию 

увеличиваться по экспоненте с размером системы. И сложность, и асинхронный характер программного обеспечения в 
реальном масштабе времени приводят к необходимости использования модульного подхода при разработке программного обеспечения систем реального времени.  

Данный подход предполагает разбиение проекта на модули 

(задачи), связанные с функциональными компонентами разрабатываемого проекта. Так как задачи описывают состояния 
физических систем, для которых свойственен параллелизм, 
то отдельные задачи должны выполняться одновременно. 
В однопроцессорной вычислительной системе параллельное 

выполнение задач реализуется достаточно частым переключением процессора с одной задачи на другую. 

Количество функций-задач, одновременно выполняемых 

микроконтроллером, может доходить до нескольких десятков, 
вследствие этого возникает проблема организации и очередности выполнения каждой задачи. Кроме того, может потребоваться обеспечение запуска задачи через строго определенные 
интервалы времени,  передача информацию от одной задачи 
другой и т.д. В таких случаях для ускорения проектирования и 
отладки программного обеспечения следует использовать операционную систему реального времени.  

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

FreeRTOS – портативная операционная система реального 

времени с открытым исходным кодом для встраиваемых  
систем. 

Иерархически FreeRTOS содержит два уровня. 
1. Аппаратнонезависимый – ядро системы: tasks.c, queue.c, 

list.c, плюс несколько заголовочных файлов. 

2. Аппаратнозависимый от используемого микроконтрол
лера (порт FreeRTOS): файлы port.c, portmacro.h,  
portISR.c. 

Особенность ОС FreeRTOS – запуск операционной системы 

осуществляется из приложения. Таким образом, запуск приложения на выполнение под управлением FreeRTOS выполняется в два этапа. 

1. Настройка приложения, создание задач пользователя. 
2. Запуск планировщика задач (запуск FreeRTOS). 

Доступ онлайн
400 ₽
В корзину