- •Загальна структура мікропроцесорної управляючої системи.
- •Формалізація проектування мікропроцесорного обладнання та систем.
- •Нейманівська й гарвардська архітектури засобів обчислювальної техніки їхньої особливості й області застосування.
- •Використання "твердої" і "програмувальної" логіки. Дуалізм "Програмні засоби - апаратура" у мікропроцесорній техніці.
- •Загальні риси й відмінності мікропроцесорів, мікроконтролерів і систем на кристалі, і їхнє застосування в управляючих системах.
- •Особливі вимоги до мікроконтролерів, які застосовуються у суднових управляючих системах.
- •Характерні риси цифрових сигнальних процесорів (dsp) і їхнє місце в суднових управляючих системах.
- •Способи передачі даних в мікропроцесорній управляючій системі.
- •Інтерфейс передачі даних rs 232-c та rs 485, загальні відомості.
- •Інтерфейс і2с, загальні відомості та процес передачі байта.
- •Інтерфейс і2с, процедура арбітражу для двох master-абонентів.
- •Інтерфейс spі, загальні відомості.
- •Технічні особливості інтерфейсу usb.
- •Типовий склад системи на кристалі для промислової (у тому числі суднової) автоматики на прикладі stm8s (або іншому по вибору курсанта).
- •Типи пам’яті, які використовуються у мікропроцесорних управляючих системах та їх призначення.
- •Особливості внутрішньої структури входів/виходів загального призначення управляючих мікроконтролерів.
- •Система переривань мікроконтролера та її функції.
- •Особливості вбудованих таймерів управляючих мікроконтролерів.
- •Особливості вбудованих інтерфейсів управляючих мікроконтролерів.
- •Аналого-цифрові й цифро-аналогові перетворювачі в складі мікропроцесорної управляючої системи.
- •Особливості розробки апаратурних засобів мікропроцесорних систем на однокристальних мікроконтролерах.
- •Intel mcs -51: структура і архітектурні особливості.
- •Особливості розробки прикладного програмного забезпечення мікропроцесорних систем.
- •Види адресації в мікропроцесорній управляючій системі.
- •Мови розробки програмного забезпечення мікропроцесорних управляючих систем. Асемблер і си, достоїнства та недоліки, сфери застосування.
- •Основні класи команд мови Асемблер. Типові відмінності в системі команд мікропроцесорів і мікроконтролерів.
- •Файли, що входять до складу проекту програмного забезпечення мікропроцесорних управляючих систем мовою си.
- •Розширення мови си необхідні при написанні програмного забезпечення мікропроцесорних управляючих систем.
- •Інтегральні середовища розробки програмного забезпечення мікропроцесорних управляючих систем. Склад і призначення окремих частин.
- •Засоби налагодження мікропроцесорних управляючих систем.
-
Основні класи команд мови Асемблер. Типові відмінності в системі команд мікропроцесорів і мікроконтролерів.
Систему команд условно можно разбить на пять групп: арифметические команды; логические команды; команды передачи данных; команды битового процессора; команды ветвления и передачи управления.
Команды арифметических операций осуществляют арифметические операции (сложение, вычитание, умножение и деление) над содержимым аккумулятора и операндом указанным в команде. Все они, за исключением команд INC и DEC, которые могут выполняться не только над аккумулятором но и над операндом назначения, модифицируют флаги в регистре PSW (флаги переноса С, вспомогательного переноса АС, переполнения OV и паритета Р).
Команды логических операций позволяют осуществить операции логического умножения и сложения байтов, операцию «исключающее ИЛИ», а также циклический сдвиг, сброс и инверсию аккумулятора. Команды не модифицируют флаги в регистре PSW, за исключением команд RRC и RLC, в которых операция циклического сдвига осуществляется с участием флага переноса С.
Команды передачи данных осуществляют пересылку в операнд назначения байта из операнда-источника или указанной в команде константы. Все команды данной группы не модифицируют флаги в слове состояния программы (регистре PSW), за исключением команд загрузки констант в аккумулятор и регистр PSW. Команда MOV DPTR, хххх является единственной командой, которая одновременно загружает в регистр 16 бит данных.
Отличительной особенностью команд операций с битами является то, что они оперируют с однобитовыми операндами. В качестве таких операндов могут выступать отдельные биты некоторых регистров специальных функций, допускающих адресацию отдельных бит, а также 128 программных флагов пользователя в резидентной памяти данных. Косвенная адресация отдельных бит, как это делается при операциях с байтами, невозможна.
К группе команд передачи управления относятся команды, обеспечивающие условные и безусловные переходы, вызовы подпрограмм и возврат из них. Существует несколько команд безусловных переходов: LJMP (длинный переход), АJMP (абсолютный переход), SJMP (короткий переход) и JMP @A+DPTR (косвенный относительный переход). Команды условных переходов дают возможность реализовать ветвление по следующим условиям: аккумулятор содержит нуль (JZ), содержимое аккумулятора не равно нулю (JNZ), перенос равен единице (JC), перенос равен нулю (JNC), адресуемый бит равен единице (JB), адресуемый бит равен нулю (JNB). Для организации программных циклов удобно пользоваться командой DJNZ, осуществляющей декремент аккумулятора с проверкой его содержимого на нуль. Команда CJNE эффективно используется для ожидания какого-либо события. Все команды данной группы, за исключением CJNE и JBC, не оказывают воздействия на флаги. Команда CJNE устанавливает флаг С, если первый операнд оказывается меньше второго. Команда JBC сбрасывает флаг С в случае перехода.
-
Файли, що входять до складу проекту програмного забезпечення мікропроцесорних управляючих систем мовою си.
Любой проект программного обеспечения на языке Си включает хотя бы один файл с расширением .с, который содержит определение процедуры main(), именно эта процедура и будет выполняться после сброса микроконтроллера. В реальных проектах этот файл далеко не единственный. Чаще всего используются файлы заголовков с расширением .h.
Исходный текст подавляющего большинства программ должен включать файл заголовка для типа микроконтроллера, используемого в разработке. В каждом таком файле определены аппаратные ресурсы микроконтроллера и даны их аббревиатуры, помогающие разработчику сделать программу более читабельной и наглядной. Многие программы используют стандартные аппаратные ресурсы, общие для всех типов микроконтроллеров одного семейства, например, для MCS-51 порты P1 – P3, регистры TCON, TMOD и т.д. В этих случаях можно использовать стандартные файлы заголовков. При работе в текстовом редакторе среды Keil uVision3 по нажатии правой кнопки мыши можно вставить файл заголовка в исходный текст программы. Например, файл REG51.H содержит аббревиатуры аппаратных ресурсов микроконтроллера 8051, которые делают исходный текст программы более понятным. Теоретически можно обойтись и без таких заголовочных файлов, но тогда придется либо работать непосредственно с шестнадцатеричными адресами аппаратных ресурсов, что очень неудобно и нечитабельно, либо определять эти ресурсы как константы при помощи директивы define.
Сложный проект для более лёгкого понимания разбивают на ряд этапов – подпрограмм. Рекомендуемый размер каждого файла описывающего отдельную подпрограмму 2-3 страницы. Каждый такой файл дополняется соответствующим заголовочным файлом, описывающим правила обращения к созданной подпрограмме, и именно эти заголовочные файлы подключаются к основной программе.
Некоторые фирмы производители микроконтроллеров (например, STM) выпускают библиотеки функций работы с периферийными устройствами своих микроконтроллеров. Каждая такая библиотека состоит из двух файлов с расширениями .с и .h. Как утверждают их авторы, нет необходимости в изучении всех регистров периферийных устройств, а для их использования достаточно ознакомиться с заголовочными файлами библиотек.