История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Топ:
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Определение места расположения распределительного центра: Фирма реализует продукцию на рынках сбыта и имеет постоянных поставщиков в разных регионах. Увеличение объема продаж...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Каждый вывод процессора общего назначения (general-purpose) может быть сконфигурирован как вход, так и выход. Когда вывод сконфигурирован как выход, в него можно записывать логические “0” или “1”. Когда вывод сконфигурирован как вход, то процессор может определить какой уровень присутствует на нем. Конфигурирование GPIO производится в регистрах IODIR1 и IODIR2 (GPIO direction registers).Кроме этого GPIO может быть источником прерывания по перепаду уровней для процессора. Всего в процессоре 26 выводов могут выполнять функции GPIO (GPIO[31:27], GPIO[20:0]). Эти выводы мультиплексируются с другими функциями. Т.е. один вывод может быть отнесён к интерфейсу I2S, SPI, UART, GPIO и т.д. Конфигурирование функционала выводов определяет регистр EBSR (External Bus Selection Register по адресу 0x1C00h). Этот регистр может быть сконфигурирован только после перезагрузки процессора и не может быть изменён в процессе работы.
Все выводы GPIO могут быть “подтянуты” через резистор (pull-down) к нулевому проводу в регистре Pull-down Inhibit Register.
После общего сброса процессора по умолчанию GPIO выводы конфигурируются как входы.
Прерывания от GPIO могут происходить по спадающему или по нарастающему фронту сигнала на выводе. Разрешение прерывания устанавливается в регистрах IOINTEN1, IOINTEN2 (GPIO interrupt enable registers), а фронт срабатывания в регистрах IOINTEDG1, IOINTEDG2 (interrupt edge trigger enable registers). Флаги прерываний фиксируются в регистрах IOINTFLG1, IOINTFLG2.
Блок последовательного интерфейса UART
UART (universal asynchronous receiver and transmitter) это асинхронный последовательный интерфейс для приёма и передачи данных. Асинхронность означает отсутствие синхронизирующих импульсов при обмене данными. Совместимость приёмника и передатчика достигается тем, что они работают на одних частотах (эти частоты фиксированы и стандартизированы), измеряемых количеством битов передаваемых за секунду.
При приёме данных происходит преобразование из последовательной формы в параллельную, а при передаче преобразование параллельной формы в последовательную. Можно выделить следующие особенности UART:
-возможность программирования частоты приёма и передачи
-длина одной посылки 5,6,7 или 8 бит
-генерация и определение бита чётности
-наличие 16-ти байтного буфера FIFO (First In, First Out -«первым пришёл - первым ушёл»)
-поддержка контроллера DMA при приёме и передаче
-выделенный вектор прерывания на приём и передачу
-возможность работы через прерывания и через опрос битов регистров
-возможность диагностики за счёт создания внутренней обратной цепи и т.д.
Для асинхронных интерфейсов очень важна точность установки частоты обмена. На блок UART подаётся частота внутреннего тактового генератора процессора и для получения необходимой частоты используется два 8-ми битных регистра делителя (DLH и DLL). Диапазон деления частоты: от 1 до (216-1). Кроме этого при вычислении коэффициента деления необходимо учитывать, что на каждый передаваемый и принимаемый бит, вырабатывается 16 BCLK сигналов. Итоговая формула для вычисления значения, записываемого в делитель:
Divisor = (UART input clock frequency)/(Desired baud rate)/16
Как правило, полученная частота обмена данными точно не совпадает с частотой из набора разрешённых частот, но к этому надо стремиться.
Передающая секция UART содержит регистр передаваемых данных (THR), которые получены с шины данных процессора, и сдвиговый регистр (TSR). Когда UART работает в режиме FIFO, то в качестве THR выступает 16-ти байтное FIFO. Данные передаются через вывод процессора TX.
Принимающая секция содержит приёмный сдвиговый регистр (RSR) и приёмный буферный регистр (RBR). В RSR данные поступают с RX вывода процессора. При работе с FIFO в качестве RBR выступает 16-ти байтное FIFO.
Последовательность сигналов при приёме и передаче:1)Start бит, 2)5,6,7, или 8 бит данных, 3)бит паритета (PARITY) 4)Stop биты.
Блоки FIFO выделены отдельно для приёма и передачи. Механизм FIFO упрощает программирование UART, т.к. отпадает необходимость следить за приёмом и передачей каждого байта. Прерывание по FIFO при передаче происходит только при опустошении буфера, а при приёме при его заполнении.
Блок RTC (Real Time Clock)
Это так называемый блок реального времени, который может применяться как часы. Как уже отмечалось в пункте 2.3. к процессору подключается кварцевый резонатор с частотой 32768Гц. Это так называемый “часовой” кварц, т.к. после деления этой частоты на величину 215 получаются стабильные импульсы частотой 1Гц т.е. 1-н импульс в секунду. Подсчёт этих импульсов и определяет реальное время.
Большим преимуществом такой конструкции является то, что RTC может работать вне зависимости от процессора. Т.е. процессор может быть остановлен.
Основные особенности блока RTC:
-календарь на 100 лет (позволяет объём регистров)
-наличие отдельных счётчиков миллисекунд, секунд, минут, часов (в формате 24 часа) и даты (с отдельным отображением даты, месяца, года с учётом високосных)
-данные представляются в т.н. двоично-десятичном формате (BCD binary-coded-decimal)
-встроенный будильник (учитывающий год, месяц, день, час, минуту секунду и миллисекунду), имеющий прерывание
-возможность периодических прерываний каждую миллисекунду, секунду, минуту, час или день
Представление данных в двоично-десятичном формате заключается в том, что в 4-х битах помещаются числа от 0 до 9. Если бы в этих битах помещались числа от 0 до 15, то необходим бы был дополнительный пересчёт в десятичное число для отображения времени на индикаторах.
В таблице векторов прерывания выделен только один 18-й вектор. Поэтому причину, по которой произошло прерывание в RTC можно определить в регистре Interrupt Flag Register (RTCINTFL).
|
|
|
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!