3.2 Особенности микроконтроллеров фирмы Atmel
AVR-архитектура, на основе которой построены микроконтроллеры семейства AT90S, объединяет мощный гарвардский RISC-процессор с раздельным доступом к памяти программ и данных, 32 регистра общего назначения, каждый из которых может работать как регистр-аккумулятор, и развитую систему команд фиксированной 16-бит длины. Большинство команд выполняются за один машинный такт с одновременным исполнением текущей и выборкой следующей команды, что обеспечивает производительность до 1 MIPS на каждый МГц тактовой частоты.
32 регистра общего назначения образуют регистровый файл быстрого доступа, где каждый регистр напрямую связан с АЛУ. За один такт из регистрового файла выбираются два операнда, выполняется операция, и результат возвращается в регистровый файл. АЛУ поддерживает арифметические и логические операции с регистрами, между регистром и константой или непосредственно с регистром.
Регистровый файл также доступен как часть памяти данных. 6 из 32-х регистров могут использоваться как три 16-разрядных регистра-указателя для косвенной адресации. Старшие микроконтроллеры семейства AVR имеют в составе АЛУ аппаратный умножитель.
Базовый набор команд AVR содержит 120 инструкций. Инструкции битовых операций включают инструкции установки, очистки и тестирования битов.
Все микроконтроллеры AVR имеют встроенную FLASH ROM с возможностью внутрисхемного программирования через последовательный 4-проводной интерфейс.
Периферия МК AVR включает: таймеры-счётчики, широтно-импульсные модуляторы, поддержку внешних прерываний, аналоговые компараторы, 10-разрядный 8-канальный АЦП, параллельные порты (от 3 до 48 линий ввода и вывода), интерфейсы UART и SPI, сторожевой таймер и устройство сброса по включению питания. Все эти качества превращают AVR-микроконтроллеры в мощный инструмент для построения современных, высокопроизводительных и экономичных контроллеров различного назначения.
В рамках единой базовой архитектуры AVR-микроконтроллеры подразделяются на три подсемейства:
Classic AVR — основная линия микроконтроллеров с производительностью отдельных модификаций до 16 MIPS, FLASH ROM программ 2–8 Кбайт, ЕEPROM данных 64–512 байт, SRAM 128–512 байт;
mega AVR с производительностью 4–6 MIPS для сложных приложений, требующих большого обьёма памяти, FLASH ROM программ 64–128 Кбайт, ЕEPROM данных 64–512 байт, SRAM 2–4 Кбайт, SRAM 4 Кбайт, встроенный 10-разрядный 8-канальный АЦП, аппаратный умножитель 8ґ8;
tiny AVR — низкостоимостные микроконтроллеры в 8-выводном исполнении имеют встроенную схему контроля напряжения питания, что позволяет обойтись без внешних супервизорных микросхем.
AVR-микроконтроллеры поддерживают спящий режим и режим микропотребления. В спящем режиме останавливается центральное процессорное ядро, в то время как регистры, таймеры-счётчики, сторожевой таймер и система прерываний продолжают функционировать. В режиме микропотребления сохраняется содержимое всех регистров, останавливается тактовый генератор, запрещаются все функции микроконтроллера, пока не поступит сигнал внешнего прерывания или аппаратного сброса. В зависимости от модели, AVR-микроконтроллеры работают в диапазоне напряжений 2,7–6 В либо 4–6 В (исключение составляет Attiny12V с напряжением питания 1,2 В).
Средства отладки. ATMEL предлагает программную среду AVR-studio для отладки программ в режиме симуляции на программном отладчике, а также для работы непосредственно с внутрисхемным эмулятором. AVR-studio доступен с WEB-страницы ATMEL, содержит ассемблер и предназначен для работы с эмуляторами ICEPRO и MegaICE. Ряд компаний предлагают свои версии Си-компиляторов, ассемблеров, линковщиков и загрузчиков для работы с микроконтроллерами семейства AVR. Микроконтроллеры ATMEL широко применяются в России и, как следствие, программируются многими отечественными программаторами. Ряд российских фирм предлагает также различные аппаратные средств отладки AVR-микроконтроллеров
3.3 Особенности микроконтроллеров фирмы Microchip
Система команд базового семейства PIC165x содержит только 33 команды. Все команды (кроме команд перехода) выполняются за один машинный цикл (или четыре машинных такта) с перекрытием по времени выборок команд и их исполнения, что позволяет достичь производительности до 5 MIPS при тактовой частоте 20 МГц.
Микроконтроллеры PIC имеют симметричную систему команд, позволяющую выполнять операции с любым регистром, используя любой метод адресации.
В настоящее время MICROCHIP выпускает четыре основных семейства 8-разрядных RISC-микроконтроллеров, совместимых снизу вверх по программному коду:
базовое семейство PIC15Cx с 12-разрядными командами, простые недорогие микроконтроллеры с минимальной периферией;
PIC12Cxxx с 12-разрядными командами со встроенным тактовым генератором, выпускаемые в миниатюрном 8-выводном исполнении.
Mid-range PIC16x/7x/8x/9x с 14-разрядными командами. Наиболее многочисленное семейство, объединяющее микроконтроллеры с разнообразными периферийными устройствами, в число которых входят аналоговые компараторы, аналогово-цифровые преобразователи, контроллеры последовательных интерфейсов SPI, USART и I2C, таймеры-счётчики, модули захвата/сравнения, широтно-импульсные модуляторы, сторожевые таймеры, супервизорные схемы и так далее;
High-end PIC17C4x/5xx высокопроизводительные микроконтроллеры с расширенной системой команд 16-разрядного формата, работающие на частоте до 33 МГц, с объёмом памяти программ до 16 Кслов. Кроме обширной периферии почти все микроконтроллеры этого семейства имеют встроенный аппаратный умножитель 8x8, выполняющий операцию умножения за один машинный цикл.
• PIC18. Новое семейство FLASH-микроконтроллеров с функцией самопрограммирования; работающие на частоте до 40 МГц, с объёмом памяти программ до 64 Кслов. Быстродействие 10 MIPS при тактовой частоте 10 МГц; Архитектура и система команд оптимизирована под компилятор Си; Аппаратное умножение 8-разрядных чисел за один машинный такт. Большой объем памяти на кристалле. Многообразие встроенных периферийных модулей.
• DsPIC30. 16-и разрядные цифровые сигнальные микроконтроллеры. Имеют свыше 64 кбайт слов, 8 кбайт RAM и 4 кбайт EEPROM – памяти. Быстродействие свыше 30 MIPS.
Особый акцент MICROСHIP делает на максимально возможное снижение энергопотребления для выпускаемых микроконтроллеров. При работе на частоте 4 МГц PIC-контроллеры, в зависимости от модели, имеют ток потребления меньше 1,5 мА, а при работе на частоте 32,768 КГц — ниже 15 мкА. Поддерживается “спящий” режим работы. Диапазон питающих напряжений PIC-контроллеров составляет 2,0…6,0 В.
Из программных средств отладки наиболее известны и доступны различные версии ассемблеров, а также интегрированная программная среда MPLAB. Российские производители программаторов и аппаратных отладочных средств также уделяют внимание PIC-контроллерам. Выпускаются как специализированные программаторы, такие как PICPROG, программирующие почти весь спектр PIC-микроконтроллеров, так и универсальные: UNIPRO, СТЕРХ, поддерживающие наиболее известные версии PIC.
Выбор микроконтроллера.
Для определения типа микроконтроллера необходимо подсчитать нужное количество портов ввода-вывода. Для управления ЖК-дисплеем необходимо 11 линий ввода-вывода (8 линий – шина данных, 3 линии – управляющие сигналы). Для подключения термодатчика по I2C интерфейсу требуется 2 линии ввода-вывода, для подключения к ПК – 2 линии. Для подключения приёмника ИК-сигналов – 1 линия. Для использования системы импульсно-фазового управления требуется 1 лини порта, на который через делитель будет подаваться пульсирующее напряжение, снимаемое с блока питания до стабилизатора. Для управления высоковольтной нагрузкой – 4 линии. Для подключения внешних датчиков и управления ведомой ОС – 12 линий ввода-вывода. Исходя из этого, выбираем микроконтроллер PIC18F452 (рисунок 3.1), который имеет 33 линии ввода-вывода, аппаратную поддержку интерфейсов USART и I2C.
Рисунок 3.1 – микроконтроллер PIC18F452
В таблице 3.4.1 приведено функциональное назначение выводов микроконтроллера PIC18F452.
После выбора микроконтроллера необходимо выбрать остальные элементы принципиальной схемы.
Для построения цепи питания микросхем будет использована типовая схема включения стабилизатора напряжения LM7806, на выходе которого получаем +5В. На вход стабилизатора допускается подача напряжения до 20В. Непосредственно перед стабилизатором стоит цепочка VD2, C7. Конденсатор С7 служит для сглаживания пульсаций питающего напряжения, полученного с диодного моста VD1. Диод VD2 необходим для правильного функционирования системы импульсно-фазового управления (СИФУ). Конденсатор C8 служит для подавления высокочастотных помех по питанию.
Для стабильной работы микроконтроллера будет использована цепочка внешнего генератора, состоящей из кварцевого резонатора на 4 МГц и конденсаторов С1,С2, емкостью 20 пФ, рекомендованной фирмой Microchip.
Таблица 3.4.1 – назначение выводов микроконтроллера
Обозначение вывода | № вывода | Тип I/O/P | Тип буфера | Описание |
OSC1/CLKIN | 13 | I | ST/CMOS | Вход генератора / вход внешнего тактового сигнала |
OSC2/CLKOUT | 14 | O | - | Выход генератора. Подключается кварцевый или керамический резонатор. |
-MCLR/VPP | 1 | I\P | ST | Вход сброса микроконтроллера или вход напряжения программирования. Сброс микроконтроллера происходит при низком логическом уровне сигнала на входе. |
RA0/AN0 RA1/AN1 RA2/AN2/VREF- RA3/AN3/VREF+ RA4/T0CKI RA5/-SS/AN4 | 2 3 4 5 6 7 | I/O I/O I/O I/O I/O I/O | TTL TTL TTL TTL ST TTL | Двунаправленный порт ввода/вывода PORTA. RA0 может быть настроен как аналоговый канал 0 RA1 может быть настроен как аналоговый канал 1 RA2 может быть настроен как аналоговый канал 2 или вход отрицательного опорного напряжения RA3 может быть настроен как аналоговый канал 3 или вход положительного опорного напряжения RA4 может использоваться в качестве входа внешнего тактового сигнала для TMR0. Выход с открытым стоком. RA1 может быть настроен как аналоговый канал 1 или вход выбора микросхемы в режиме ведомого SPI |
RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD | 33 34 35 36 37 38 39 40 | I/O I/O I/O I/O I/O I/O I/O I/O | TTL/ST TTL TTL TTL TTL TTL TTL\ST TTL\ST | Двунаправленный порт ввода/вывода PORTB. PORTB имеет программно подключаемые подтягивающие резисторы на входах. RB0 может использоваться в качестве входа внешних прерываний. RB3 может использоваться в качестве входа для режима низковольтного программирования. Прерывания по изменению уровня входного сигнала. Прерывания по изменению уровня входного сигнала. Прерывания по изменению уровня входного сигнала. Тактовый вход в режиме программирования. Прерывания по изменению уровня входного сигнала. |
Таблица 3.4.2 – продолжение | ||||
RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT | 15 16 17 18 23 24 25 26 | I/O I/O I/O I/O I/O I/O I/O I/O | ST ST ST ST ST ST ST ST | Двунаправленный порт ввода/вывода PORTC. RC0 может использоваться в качестве выхода генератора TMR1 или входа внешнего тактового сигнала для TMR1. RC1 может использоваться в качестве входа генератора для TMR1 или вывода модуля CCP2. RC2 может использоваться в качестве вывода модуля CCP1. RC3 может использоваться в качестве входа/выхода тактового сигнала в режиме SPI и I2C. RC4 может использоваться в качестве входа данных в режиме SPI или вход/выход данных в режиме I2C. RC5 может использоваться в качестве выхода данных в режиме SPI. RC6 может использоваться в качестве вывода передатчика USART в асинхронном режиме или вывода синхронизации USART в синхронном режиме. RC6 может использоваться в качестве вывода приемника USART в асинхронном режиме или вывода данных USART в синхронном режиме. |
RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 | 19 20 21 22 27 28 29 30 | I/O I/O I/O I/O I/O I/O I/O I/O | ST/TTL ST/TTL ST/TTL ST/TTL ST/TTL ST/TTL ST/TTL | Двунаправленный порт ввода/вывода PORTD или ведомый параллельный порт для подключения к шине микропроцессора |
RE0/-RD/AN5 RE1/-WR/AN6 RE2/-CS/AN7 | 8 .9 10 | I/O I/O I/O | ST/TTL ST/TTL ST/TTL | Двунаправленный порт ввода/вывода PORTE. RE0 может использоваться в качестве управляющего входа чтения PSP или аналогового канала 5 RE1 может использоваться в качестве управляющего входа записи PSP или аналогового канала 6 RE2 может использоваться в качестве управляющего входа выбора PSP или аналогового канала 7 |
VSS | 12,31 | P | - | Общий вывод для внутренней логики и портов ввода/вывода |
VDD | 11,32 | P | - | Положительное напряжение питания для внутренней логики и портов ввода/вывода |
В качестве индикатора используется жидкокристаллический модуль, который позволяет отображать две строки по 16 символов. Для управления ЖКИ выделим порты D и E.Порт D подключен к шине данных модуля, порт Е к управляющим входам модуля.
Для подключения устройства к последовательному порту ПК необходимо преобразовать логические уровни сигналов уровни, используемые в интерфейсе RS-232. Для этого необходим преобразователь, собранный на микросхеме MAX232.
Цифровой термометр подключен к 3 и 4 битам порта C.
Силовые ключи на симисторах подключены к 1, 2, 3 5 битам порта C.
ИК-приёмник подключен к 0 биту порта B. К 1 биту данного порта подведена линия от выпрямителя для подачи пульсирующего напряжения для синхронизации в режиме СИФУ.
Внешние датчики подключены к остальным линиям портов ввода-вывода.
... , элементы питания – 2400 мм2) высота пульта управления с учётом ширины корпуса будет равна 10 мм. 7. ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ 7.1 Характеристика проекта Проектируемая система представляет собой систему охранной сигнализации автомобилей. В разрабатываемой системе будут реализованы функции, как автономной охраны, так и централизованной. Так, например, она будет в режиме «Тревога» ...
... полностью выключена и автомобиль в таком состоянии можно отдавать в сервис, сняв со связки ключей все брелки. Вам не придется обучать слесаря, которого вы видите в первый раз, всем премудростям охранной системы автомобиля. Зачем ему это! Таким образом, никто кроме вас не будет знать где и какие охранные системы установлены на вашем автомобиле. Другой функцией выключателя «Valet» является то, что ...
... (магнитные защелки, задвижки и т.п.) закрывающих элементов с возможностью перемещения их вручную при открывании или закрывании в экстремальных условиях Рассмотрим требования к основным компонентам СКУД. Требования к устройствам идентификации Считыватели должны обеспечивать надежное считывание кода с идентификаторов преобразование его в электрический сигнал и передачу на контроллер. ...
... охраны имеют слабую защищенность от саботажа и как правило являются системами одноразового действия, поэтому их целесообразно применять только в комплексе с другими периметральными системами охранной сигнализации. При оснащении объектов, имеющих ограждения (заборы), в качестве периметральных систем охранной сигнализации рекомендуется использовать в основном емкостные, радиолучевые, радиоволновые ...
0 комментариев