Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
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 (дата обращения: 20.04.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/100Base-
TX;  

 ресурсов стенда достаточно для реализации полнофунк-

ционального стека протоколов 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 ₽
В корзину