Организация памяти и портов ввода/вывода

 

Микроконтроллеры семейства 68HC08/908 адресуют 64 Кбайт внутренней памяти (адреса $0000–FFFF). Распределение адресного пространства задается картой памяти, вид которой определяется объемом внутренней памяти и набором периферийных устройств, входящим в состав данной модели микроконтроллера. На рис. 4.1 приведена карта памяти для микроконтроллеров MC68HC908GP32.

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

Младшие 64 позиции адресного пространства (адреса $000–$003F) занимают регистры служебных и периферийных модулей, табл. 4.1

Отметим, что 16-разрядные регистры таймерных модулей TCNТ, TMOD, TCHx занимают по две позиции адресного пространства: младший байт с суффиксом l, старший байт с суффиксом h.

В адресном пространстве ОЗУ располагаются ячейки стека, которые адресуются с помощью указателя стека SP. При установке микроконтроллера в начальное состояние (запуске) содержимое SP принимает значение $00FF, адресуя ячейку ОЗУ с данным адресом. В процессе выполнения программы можно установить любое значение указателя стека с помощью команды TXS, которая загружает в SP содержимое индексного регистра H:X, уменьшенное на 1. После записи байта в стек содержимое SP уменьшается на 1, адресуя следующую незаполненную ячейку стека. Таким образом, стек заполняется в направлении уменьшения адресов. Адрес вершины стека (последней заполненной ячейки стека) можно загрузить в регистр H:X с помощью команды TSX.

 

$0000 $003F Регистры периферийных и служебных модулей (64 байт)
$0040 $023F ОЗУ данных (512 байт)
$0080 $7FFF Не используется (32 192 байт)
$8000 $FDFF Flash-память (32 256 байт)
$FE00 Регистр SBSR (модуль BREAK08)
$FE01 Регистр SRSR (указывает причину запуска)
$FE02 Резервировано
$FE03 Регистр SBFCR (модуль BREAK08)
$FE04 Регистр INT1 (запросы прерывания)
$FE05 Регистр INT2 (запросы прерывания)
$FE06 Регистр INT3 (запросы прерывания)
$FE07 Резервировано
$FE08 Регистр FLCR (управление Flash-памятью)
$FE09 Регистр BRKh (модуль BREAK08)
$FE0A Регистр BRKl (модуль BREAK08)
$FE0B Регистр BRKSCR (модуль BREAK08)
$FE0C Регистр LVISR (модуль LVI08)
$FE0D $FE1F Не используются (19 байт)
$FE20 $FE52 ПЗУ – монитор отладки (307 байт)
$FE53 $FF7D Не используются (43 байт)
$FF7E Регистр FLBPR (управление Flash-памятью)
$FF7F $FFDB Не используются (93 байт)
$FFDC $FFFF Вектора запуска и прерываний (36 байт)

 

Рис. 4.1. Карта памяти для микроконтроллера

MC68HC908GP32

 

 

Таблица 4.1

Адреса регистров периферийных модулей

Адрес Регистр Назначение
$0000 PTA Регистры данных портов A, B, C, D
$0001 PTB
$0002 PTC
$0003 PTD
$0004 DDRA Регистры направления передачи портов A, B, C, D
$0005 DDRB
$0006 DDRC
$0007 DDRD
$0008 PTE Регистр данных порта E
$0009-0B Не используются
$000C DDRE Регистр направления передачи порта E
$000D PTAPUE Регистры управления подтягивающими резисторами портов A, C, D
$000E PTCPUE
$000F PTDPUE
$0010 SPCR Регистры синхронного порта SPI08
$0011 SPSСR
$0012 SPDR
$0013 SCC1 Регистры асинхронного порта SCI08
$0014 SCC2
$0015 SCC3
$0016 SCS1
$0017 SCS2
$0018 SCDR
$0019 SCBR

 

001A INTKBSCR Регистры модуля KBI08
$001B INTKBIER
$001C TBCR Регистр базового таймера TBM08
$001D INTSCR Регистр прерываний
$001E CONFIG2 Регистры конфигурации
$001F CONFIG1
$0020 T1SC Регистры таймерного модуля TIM08-1
$0021-22 T1CNTh-l
$0023-24 T1MODh-l
$0025 T1SC0
$0026-27 T1CH0h-l
$0028 T1SC1
$0029-2A T1CH1h-l
$002B T2SC Регистры таймерного модуля TIM08-2
$002C-2D T2CNTh-l
$002E-2F T2MODh-l
$0030 T2SC0
$0031-32 T2CH0h-l
$0033 T2SC1
$0034-35 T2CH1h-l
$0036 PCTL Регистры модуля генератора импульсов CGM08
$0037 PBWC
$0038-39 PMSh-l
$003A PMRS
$003B PMDS
$003C ADSCR Регистры модуля ADC08
$003D ADR
$003E ADCLK

 

Микроконтроллер MC68HC908GP32 имеет внутреннюю Flash-память, содержимое которой может стираться и записываться при работе в режиме отладки или в процессе выполнения прикладной программы. Допускается до 10000 циклов стирания–программирования, время хранения информации составляет более 10 лет. Необходимое для программирования повышенное напряжение обеспечивается внутренним преобразователем, поэтому не требуется подключение внешнего источника. Специальный механизм защиты позволяет предотвратить случайное стирание содержимого Flash-памяти. Наличие байтов секретности позволяет предотвратить несанкционированное считывание информации.

На кристалле микроконтроллера содержится 512 байт статической оперативной памяти, ячейки которой имеют адреса в диапазоне $0040–$023F. Обычно ОЗУ используется для хранения переменных и реализации стека.

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

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

Процессоры семейства 68HC08/908 выполняют прерывание текущей программы по одной из следующих причин:

– поступление команды прерывания SWI;

– поступление внешнего запроса прерывания на входе IRQ#, обслуживание которого реализуется с помощью модуля IRQ08;

– поступление запроса прерывания в контрольной точке, который формируется модулем BREAK08;

– поступление внутренних запросов прерывания от периферийных устройств, расположенных на кристалле микроконтроллера.

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

– загрузка в стек содержимого регистров процессора в следующей последовательности: CCR - A - X - PCh - PCl, где PCh, PCl – старший и младший байты содержимого PC, X – значение младшего байта индексного регистра H:X;

– загрузка в PC 16-разрядного вектора прерывания Ve – адреса первой команды обработчика прерываний, соответствующего наступившему событию.

Значение вектора Ve выбирается из таблицы векторов прерываний, размещенной в конце адресуемого объема памяти (см. рис. 1.2).

Обработчик прерывания должен заканчиваться командой возврата из прерывания RTI, которая выбирает из стека и восстанавливает содержимое регистров PC, X, A, CCR, обеспечивая продолжение выполнения прерванной программы.

Необходимо иметь в виду, что в цикле перехода к обработке прерываний в стеке автоматически сохраняется только младший байт индексного регистра X. Чтобы обеспечить сохранение старшего байта индексного регистра H следует в начале обработчика прерываний ввести команду PSHH(загрузка в стек содержимого байта H), а перед командой RTI выполнить команду PULH, которая извлекает из стека и восстанавливает содержимое старшего байта H индексного регистра.

Для размещения таблицы векторов прерываний в микроконтроллерах семейства 68HC08/908 зарезервировано 64 байт адресного пространства (адреса $FFD0-FF), из которых в микроконтроллере MC68HC908GP32 используется 36 байт. В табл. 4.2 показано размещение векторов для этого микроконтроллера.

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

 

Таблица 4.2

Размещение векторов прерывания для

микроконтроллераMC68HC908GP32

Запрос базового таймера TBM08 $FFDC-DD
Запрос модуля ADC08 $FFDE-DF
Запрос модуля KBI08 $FFE0-E1
  Запросы модуля SCI08 $FFE2-E3
$FFE4-E5
$FFE6-E7
Запросы модуля SPI08 $FFE8-E9
$FFEA-EB
Переполнение таймера TIM08-2 $FFEC-ED
Запрос канала 1 таймера TIM08-2 $FFEE-EF
Запрос канала 0 таймера TIM08-2 $FFF0-F1
Переполнение таймера TIM08-1 $FFF2-F3
Запрос канала 1 таймера TIM08-1 $FFF4-F5
Запрос канала 0 таймера TIM08-1 $FFF6-F7
Запрос модуля CGM08 $FFF8-F9
Прерывание по внешнему запросу IRQ# $FFFA-FB
Команда SWI (программное прерывание) $FFFC-FD
Вектор начального запуска (Reset) $FFFE-FF

 

Поступление запросов прерывания проверяется микроконтроллером после выполнения каждой команды программы. Если поступило нескольких запросов, то в первую очередь обслуживается запрос с более высоким приоритетом. Запросы имеют фиксированные приоритеты в соответствии с порядком их расположения в таблице векторов прерываний (табл. 1.2): чем больше адрес, тем выше приоритет. Таким образом, из аппаратных прерываний наивысший приоритет имеет внешний запрос IRQ#, затем запрос генератора тактирующих импульсов CGM08 и сигналы таймера. Минимальный приоритет имеют запросы, вектора которых размещены в верхней части (табл. 4.2) – запросы ADC08 и других модулей. МК MC68HC908GP32 обладает 33 линиями ввода/вывода данных. Эти линии объеди­нены в 8-разрядные параллельные порты, которые именуют в соответствии с буквами латинского алфавита: Port A, Port В, Port С, Port D, Port H.

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

Большинство линий ввода/вывода обладают так называемой альтернативной функ­цией. Эти линии связаны со встроенными в МК периферийными устройствами, они обес­печивают связь периферийных модулей с «внешним миром». Так, линии порта Port В используются для подключения к встроенному АЦП измеряемых напряжений, линии дру­гих портов служат линиями ввода/вывода последовательных приемопередатчиков. Если соответствующий периферийный модуль МК не используется, то его выводы можно за­действовать как обычные линии ввода/вывода. По способу схемного решения выходного драйвера различают два типа линий ввода/ вывода:

– линии с обычной схемотехникой двунаправленной линии ввода/вывода;

– двунаправленные линии с программно-подключаемыми в режиме ввода подтяги­
вающими резисторами RPULLUP.

Если порт имеет «обычную» схемотехнику, то для его обслуживания предусмотрены два типа регистров:

– РТх - регистр данных порта х, где х - имя порта ввода/вывода;

– DDRx - регистр направления передачи порта х.

Если порт имеет схемотехнику с программно-подключаемым «подтягивающим» рези­стором, то для обслуживания порта предусмотрены три регистра:

– РТх - регистр данных порта х;

– DDRx - регистр направления передачи порта х;

– PTxPUE - регистр входного сопротивления порта х.

Так, порт PortA микроконтроллера MC68HC908GP32 обслуживается регистрами РТА, DDRA и PTAPUE. В приложении Г, Д, Е приведен формат регистров специальных функций РТх, DDRx и PTxPUE. Заметим, что формат регистров РТх и DDRx для портов с различной схемотехникой полностью совпадает.

Детальный формат всех регистров специальных функций портов ввода/вывода при­веден на рис. 4.2.

 


 

Рис. 4.2. Регистры для обслуживания портов ввода/вывода МК МС68НС908GP32

РЕКОМЕНДУЕМАЯ ЛИТЕРАТУРА

Основная:

1. Основы микропроцессорной техники / Ю.В. Новиков, П.К. Скоробогатов. – М.: Интернет – Университет Информационных Технологий, 2003. – 440 c.

2. Микропроцессорные системы: Учеб. пособие для вузов / Е.К. Александров, Р.И. Грушвицкий, М.С. Куприянов и др.; под общ. ред. Д.В. Пузанкова. – СПб.: Политехника, 2002. – 935 с.: ил.

3. Современные микроконтроллеры и микропроцессоры Motorola: Справочник. – М.: Горячая линия – Телеком, 2004. – 952 с.: ил.

4. Работа с микроконтроллерами семейства HC(S)08: Учеб. пособие для студентов технических вузов / Х. Крейдл, Г. Куприс, Т.В. Ремизевич и др.; под ред. Д.И. Панфилова. – М.: Изд-во МЭИ, 2005. – 444 с.: ил.

5. Микроконтроллеры. Разработка встраиваемых приложений / А.Е. Васильев – СПб.: БХВ – Петербург, 2008. – 304 с.: ил.

6. Архитектура микропроцессорных систем / Б.В. Костров, В.Н. Ручкин. – М.: Изд-во Диалог–МИФИ, 2007. – 304 с.: табл. 14, ил. 147.

7. Создаем устройства на микроконтроллерах / А.В. Белов– СПб.: Наука и Техника, 2007. – 304 с.: ил.

 

 

Дополнительная:

 

8. Микроконтроллеры для встраиваемых приложений: от общих подходов – к семействам HC05 и HC08 фирмы Motorola / Под ред.
И.С. Кирюхина. – М.: ДОДЭКА, 2000. – 272 с.

9. Руководство по микроконтроллерам / М. Предко. – Т.1. – М.: Постмаркет, 2001. – 411 с.

10. Руководство по микроконтроллерам / М. Предко. – Т.1. – М.: Постмаркет, 2001. –– 488 с.

11. Самоучитель по микропроцессорной технике / А.В. Белов. – СПб.: Наука и техника, 2003. – 224 c.

12. Микропроцессорные системы бытовой техники / Б.П. Баев – М.: Легкая промышленность и бытовое обслуживание, 2001. – 464 с.

13. Цифровые устройства и микропроцессорные системы: Учебник для техникумов связи / Б.А. Калабеков. – М.: Горячая линия – Телеком, 2000. – 336 с.: ил.


Приложение 1

Варианты контрольного задания

1. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство генерации прямоугольных импульсов (меандра) с частотой fвых = 200 Гц через каждые t = 2 с и вывести на 7-сегментную индикацию информацию о количестве элементов нового массива.

Массив чисел X состоит из 10 элементов. Элементы однобайтовые, формат представления числа – прямой код со знаком. Образовать массив Y , отобрав в него элементы первого массива, удовлетворяющие требованию: четные числа из диапазона 5 < Y < 150. Элементы нового массива INF должны быть записаны в следующем порядке: сначала количество элементов, а затем все элементы по порядку.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

2. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство генерации прямоугольных импульсов (меандра) с частотой fвых = 200 Гц через каждые t = 1,5 с и вывести на 7-сегментную индикацию информацию о количестве элементов нового массива.

Массив чисел X состоит из 7 элементов. Элементы однобайтовые, формат представления числа – прямой код со знаком. Образовать массив Y , отобрав в него элементы первого массива , удовлетворяющие требованию: четные числа из диапазона 10 < Y < 150. Элементы нового массива INF должны быть записаны в следующем порядке: сначала количество элементов, а затем все элементы по порядку.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

3. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство генерации прямоугольных импульсов (меандра) с частотой fвых = 0,1 кГц через каждые t = 1,5 с и вывести на 7-сегментную индикацию информацию о количестве элементов нового массива.

Массив чисел X состоит из 10 элементов. Элементы однобайтовые, формат представления числа – прямой код со знаком. Образовать новый массив Y , отобрав в него элементы первого массива , удовлетворяющие требованию: нечетные числа из диапазона 50 < Y < 120. Элементы нового массива должны быть записаны в следующем порядке: сначала число элементов, а затем все элементы по порядку.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

4. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство генерации прямоугольных импульсов (меандра) с частотой fвых = 0,25 кГц через каждые t = 1,9 с и вывести на 7-сегментную индикацию информацию о количестве элементов нового массива.

Массив чисел X состоит из 11 элементов. Элементы однобайтовые, формат представления числа – прямой код со знаком. Образовать новый массив Y , отобрав в него элементы первого массива , удовлетворяющие требованию: нечетные числа из диапазона 36 < Y < 130. Элементы нового массива должны быть записаны в следующем порядке: сначала число элементов, а затем все элементы по порядку.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

5. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство измерения временного интервала между двумя событиями в объекте управления. Имеются двоичные датчики, вырабатывающие сигналы начала и окончания процесса. Отобразить на индикаторном дисплее (7-сегментном индикаторе) длительность временного интервала в двоично- десятичном коде и выдать звуковой сигнал. Максимальное время между событиями 5,5 сек.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

6. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство измерения временного интервала между двумя событиями в объекте управления. Имеются двоичные датчики, вырабатывающие сигналы начала и окончания процесса. Отобразить на индикаторном дисплее (7-сегментном индикаторе) длительность временного интервала в двоично- десятичном коде и выдать звуковой сигнал. Максимальное время между событиями 3,5 сек.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

7. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство измерения временного интервала между двумя событиями в объекте управления. Имеются двоичные датчики, вырабатывающие сигналы начала и окончания процесса. Отобразить на индикаторном дисплее (7-сегментном индикаторе) длительность временного интервала в двоично- десятичном коде и выдать звуковой сигнал. Максимальное время между событиями 4,5сек.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

8. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 60 мс, после пятикратного обнаружения сигнала «логического нуля» отобразить на 7-сегментном индикаторе информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

9. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 40 мс, после шестикратного обнаружения сигнала «логического нуля» отобразить на 7-сегментном индикаторе информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

10. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 250 мс, после трехкратного обнаружения сигнала «логического нуля» отобразить на 7-сегментном индикаторе информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

11. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 200 мс после трехкратного обнаружения сигнала «логической единицы» вывести на 7-сегментный индикатор информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

12. На базе МК семейства Motorola МС68НС908GP322 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 200 мкс после десятикратного обнаружения сигнала «логической единицы» вывести на 7-сегментный индикатор информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

13. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для выполнения опроса сигнала на входе с интервалом 450 мс после 7-кратного обнаружения сигнала «логической единицы» вывести на 7-сегментный индикатор информацию количества опроса сигнала и выдать звуковой сигнал.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему ∆микроконтроллерного устройства в формате А3.

 

14. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство управления термостатом по следующему алгоритму.

В течение каждого интервала времени в 4,5 с:

– определить текущее фактическое значение tфакт с датчика температуры;

– вычислить разность между фактическим и стандартным значением tстанд: (tфакт – tстанд) = ∆t;

– если значение разности ∆t > t1, то включить световой и звуковой сигналы;

– если ∆t < t1 и ∆t > t2, то включить только световой сигнал;

– если ∆t < 0, включить нагреватель;

– если ∆t > 0, включить вентилятор.

– вывести на индикацию текущее значение температуры.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

15. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство управления термостатом по следующему алгоритму.

В течение каждого интервала времени в 7,5 с:

– определить текущее фактическое значение tфакт с датчика температуры;

– вычислить разность между фактическим и стандартным значением tстанд: (tфакт – tстанд) = ∆t;

– если значение разности ∆t > t1, то включить световой и звуковой сигналы;

– если ∆t < t1 и ∆t > t2, то включить только световой сигнал;

– если ∆t < 0, включить нагреватель;

– если ∆t > 0, включить вентилятор.

– вывести на индикацию текущее значение температуры.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

16. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство управления термостатом по следующему алгоритму.

В течение каждого интервала времени в 4 с:

– определить текущее фактическое значение tфакт с датчика температуры;

– вычислить разность между фактическим и стандартным значением tстанд: (tфакт – tстанд) = ∆t;

– если значение разности ∆t > t1, то включить световой и звуковой сигналы;

– если ∆t < t1 и ∆t > t2, то включить только световой сигнал;

– если ∆t < 0, включить нагреватель;

– если ∆t > 0, включить вентилятор.

– вывести на индикацию текущее значение температуры.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

17. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство управления термостатом по следующему алгоритму.

В течение каждого интервала времени в 3 с:

– определить текущее фактическое значение tфакт с датчика температуры;

– вычислить разность между фактическим и стандартным значением tстанд: (tфакт – tстанд) = ∆t;

– если значение разности ∆t > t1, то включить световой и звуковой сигналы;

– если ∆t < t1 и ∆t > t2, то включить только световой сигнал;

– если ∆t < 0, включить нагреватель;

– если ∆t > 0, включить вентилятор.

– вывести на индикацию текущее значение температуры.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

18. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для измерения температуры. Сравнить текущее значение температуры Ттек со стандартным значением Т. Отобразить ее значение на 7-сегментном индикаторе и 8-разрядной линейке светодиодов со следующей логикой работы:

– светятся все разряды, если коды равны;

– светятся нулевой и первый разряды, если Т2 < Ттек-Т < Т1;

– светятся нулевой и второй разряды, если Т2 < Т-Ттек1;

– светятся седьмой и пятый разряды, если Ттек-Т > Т1;

– светятся седьмой и шестой разряды, если Т-Ттек > Т1.

Измерения производить по прерыванию таймера. Результаты измерения заносить в массив данных.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

19. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для измерения температуры. Сравнить текущее значение температуры Ттек со стандартным значением Т. Отобразить ее значение на 7-сегментном индикаторе и 8-разрядной линейке светодиодов со следующей логикой работы:

– светятся все разряды, если коды равны;

– светятся нулевой и первый разряды, если Т2 < Ттек-Т < Т1;

– светятся нулевой и второй разряды, если Т2 < Т-Ттек1;

– светятся седьмой и пятый разряды, если Ттек-Т > Т1;

– светятся седьмой и шестой разряды, если Т-Ттек > Т1.

Измерения производить по прерыванию таймера. Результаты измерения заносить в массив данных.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

20. На базе МК семейства Motorola МС68НС908GP32 разработать микроконтроллерное устройство для измерения напряжения. Измерить напряжение, поступающее на вход АЦП микроконтроллера, и отобразить его уровень на цифровом 7-сегментном индикаторе со следующей логикой работы:

– включить один светодиод, если напряжение в пределах нормы;

– включить два светодиода, если напряжение ниже нормы;

– включить все светодиоды, если напряжение выше нормы.

Измерения производить по прерыванию таймера. Результаты измерения заносить в массив данных. По заполнению массива рассчитать среднее арифметическое значение. Диапазон изменения напряжения при измерениях – до 3 В.

Разработать и отладить программное обеспечение микроконтроллерного устройства в интегрированной среде программирования ICS08GPGTZ(WinIDE) по следующим этапам:

– создание исходного текста программы на языке ассемблера;

– компиляция программы;

– моделирование выполнения программы;

– загрузка программы в память микроконтроллера;

– запуск и отладка программы.

Разработать и нарисовать принципиальную электрическую схему микроконтроллерного устройства в формате А3.

 

 

Приложение