Arch_EVM_Lab2 (1075554)
Текст из файла
Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIА.Ю. ПоповПроектирование радиоэлектроннойаппаратуры на основемикроконтроллеров ARM7TDMI2011Лабораторная работа № 21Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIРабота №2. Синхронизация микроконтроллера и управление таймерамиЦель работы – изучение системы синхронизации микроконтроллера NXPLPC2478 и принципов функционирования таймеров общего назначения.В ходе работы студенту необходимо ознакомиться с теоретическимматериалом, касающимся системы синхронизации и таймеров, разработать иотладить программу функционирования микроконтроллера NXP LPC2478 сиспользованием отладочной платы SK-LPC2478-S3E.Синхронизация микроконтроллера NXP LPC2478В микроконтроллере NXP LPC2478 могут использоваться три источникасинхросигнала (рисунок 4): внешний осциллятор, внутренний осциллятор наоснове RC-цепи и внешний осциллятор часов реального времени.
Привключении питания или сбросе микроконтроллера синхросигнал с частотой ~4МГц поступает с внутреннего RC-осциллятора (точность данногосинхросигнала не позволяет использовать его для синхронизациивысокоскоростных интерфейсов). Далее, возможно программно изменитьисточник синхросигнала и его частоту с помощью регистра выбора источникасинхросигнала CLKSRCSEL.Частота внешнего осциллятора должна находиться в диапазоне от 1 МГцдо 24 МГц. Один из трех источников синхросигнала поступает в модульфазовой автоподстройки частоты PLL, где частота синхросигнала (назовем ееFin) может быть изменена с помощью схемы умножения и схемы делениячастоты.
Выходной синхросигнал модуля PLL с частотой Fcco поступает надополнительные программно-управляемые делители частоты микропроцессораиUSB-модуля.Последелениячастотасигналасинхронизациимикропроцессора не должна превышать 72 МГц, а частота синхронизациимодуля USB должна составлять 48 МГц.Значения M и N, на которые происходит умножение и деление частоты вмодуле PLL задаются в регистре PLLCFG. Описание разрядов регистраприведено в таблице 3.Лабораторная работа № 22Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIРисунок 4 — Подсистема синхронизация микроконтроллера.Таблица 3 — Региcтр PLLCFG.РазрадыНазначениеОписаниеПоумолчанию14:0MSELЗначение (M-1), где M – число (6≤M≤512), накоторое умножается Fin.015-Не используется-23:16NSELЗначение (N-1), где N – число (1≤N≤32), на котороеделится Fin.031:24-Не используется-На выходе модуля PLL частота синхросигнала будет определятьсяследующим соотношением:Fcco=2⋅M⋅FinN.(1)Дополнительное условие, заданное производителем, ограничивает выборЛабораторная работа № 23Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIпараметров M и N таким образом, чтобы: 275 МГцFcco550 МГц .(2)Задать делитель частоты микропроцессора возможно с помощью регистраCCLKSEL, разряды 7:0 которого содержат значение делителя частотымикропроцессора:Fcpu=FccoCCLKSEL 7:0 1 .(3)При этом значение CCLKSEL(7:0) должно быть нечетным.Для выбора частоты синхронизации Fpclk_xx для каждого периферийногомодуляпредусмотреныдополнительныемультиплексорыисточникасинхросигнала, управляемые с помощью регистров PCLKSEL0 и PCLKSEL1.Для каждого модуля в них отведено по 2 разряда, обеспечивающие следующийвыбор:• '00' - Fpclk_xx = Fcpu,• '01' - Fpclk_xx = Fcpu/2,• '10' - Fpclk_xx = Fcpu/4,• '11' - Fpclk_xx = Fcpu/8.Назначение разрядов регистров PCLKSEL0 и PCLKSEL1 приведено вприложении 4.Для управления начальной настройкой микроконтроллера в среде KeiluVisionпредусмотренспециальныйфайлStartup.s,содержащийинициализирующий код на языке ассемблера.
Данный код выполняется привключении питания или сбросе микроконтроллера и содержит следующиеосновные процедуры инициализации:• Конфигурация системы синхронизации микропроцессорного ядра имодулей системы.• Копирование векторов прерываний из FLASH памяти в статическое ОЗУ(для некоторых моделей микроконтроллеров)• Инициализация внешней шины микроконтроллера и вызов функцииREMAP.• Инициализация периферийных модулей, влияющих наработоспособность системы.• Выделение и инициализация стека для всех режимов работымикроконтроллера.• Инициализация данных в ОЗУ.• Передача управления в main() функцию приложения.Для упрощения процедуры создания стартового кода системы в среде KeiluVision предусмотрен диалог (рисунок 5), позволяющий пользователю указатьосновные настроечные параметры модуля PLL, делителей частоты, модулядоступа в память, контроллера внешней памяти, настроит стек для всехрежимов работы.Лабораторная работа № 24Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIРисунок 5 — Диалог настройки стартового кода системы.Таймеры общего назначенияМикроконтроллер NXP LPC2478 содержит четыре 32-х таймера общегоназначения, каждый из которых обладает следующими функциональнымивозможностями:• дополнительный 32-разрядный делитель частоты;• функция счетчика событий или таймера;• функция захвата значений таймера при поступлении внешнего сигнала свозможностью генерации прерывания;• четыре регистра совпадения с возможностью остановки, сброса таймера,генерации прерываний при совпадении;• функция управления внешними сигналами (до 4-х) при совпадении.Пример №2.
Использование таймера 0 для реализации задержки.#include <LPC22xx.H>/* Описание LPC22xx */void delay(void) {//Сбросить таймерT0TC = 0x00000000;//Запустить таймерЛабораторная работа № 25Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIT0TCR = 0x00000001;//Ожидаем окончания счетаwhile (T0TCR&0x1) {};}void Timer0_Init(void){//Предделитель таймера = 15000T0PR = 15000;//Сбросить счетчик и делительT0TCR = 0x00000002;//При совпадении останавливаем, сбрасываем таймерT0MCR = 0x00000006;//Регистр совпадения = 1000 (1 Гц)T0MR0 = 1000;}int main (void) {unsigned int n;//Конфигурировать функции входов/выходов порта 0 на модуль GPIOPINSEL0= 0x00000000;//IODIR0 - Регистр направления ввода вывода (1 - вывод; 0 - ввод)IODIR0 = 0x00038000; /* P0.15..17 программируем на вывод, остальные на ввод *///IOSET0 - Регистр установки порта (1 - установка; 0 - нет изменений)IOSET0 = 0x00038000; /* Устанавливаем высокий уровень на выходах (гасимсветодиоды)*/Timer0_Init(); /* Настроить таймер */for (;;) {/* Бесконечный цикл */for (n = 0x00008000; n <= 0x00020000; n <<= 1) {//Бегущая единица//IOCLR0 - Регистр сброса порта (1 - сброс; 0 - нет изменения)IOCLR0 = n;/* Установить состояние порта */delay();/* Задержка 1 секунда */IOSET0 = 0x00038000; /* Установить порт */}}}Практическая частьЗадание 1.
Ознакомиться с теоретическим материалом на стр. 2-5.Задание 2. Создать проект C программы в среде Keil uVision длямикроконтроллера NXP LPC2478 с частотой генератора, указанной виндивидуальным вариантом задания.Задание 3. Определить параметры M, N, CLKSEL(7:0), PCLKSEL0,PCLKSEL1, обеспечивающие указанные в задании значения частот: Fcpu иFpclk_timer0.Задание 4. Разработать и отладить в симуляторе программуфункционирования микроконтроллера в соответствии с индивидуальнымвариантом.
В программе задействовать порт 0 модуля GPIO.Лабораторная работа № 26Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIЗадание 5. Получить осциллограмму работы микроконтроллера длязадействованных в проекте сигналов порта 0. Осциллограмму занести в отчет.Задание 6. Выполнить настройку проекта на работу с отладочной платойSK-LPC2478-S3E. Выполнить запись информации *.elf файла проекта встатическую память микроконтроллера.Задание 7. Протестировать правильность функционирования программы спомощью отладочной платы SK-LPC2478-S3E. Назначить точку останова.Выполнить пошаговую трассировку программы.
Результаты работы программызанести в отчет.Требования к отчетуОтчет по работе должен содержать: задание, листинг программыфункционированиямикроконтроллера,текстфункцииуправления,осциллограмму,результатытестированияпрограммы,выводыоработоспособности программы.Контрольные вопросы− Какие источники синхросигнала могут быть использованы вмикроконтроллере LPC2478.− Перечислите изменяемые пользователем параметры, определяющиечастоту синхронизации микропроцессорного ядра микроконтроллераLPC2478.− Перечислите функциональные возможности таймера общего назначениямикроконтроллера LPC2478.Лабораторная работа № 27Попов А.Ю.Проектирование радиоэлектронной аппаратуры на основе микроконтроллеров ARM7TDMIПриложение 1.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.