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/AN0RA1/AN1RA2/AN2/VREF-RA3/AN3/VREF+RA4/T0CKIRA5/-SS/AN4 | 234567 | I/OI/OI/OI/OI/OI/O | TTLTTLTTLTTLSTTTL | Двунаправленный порт ввода/вывода PORTA.RA0 может быть настроен как аналоговый канал 0RA1 может быть настроен как аналоговый канал 1RA2 может быть настроен как аналоговый канал 2 или вход отрицательного опорного напряженияRA3 может быть настроен как аналоговый канал 3 или вход положительного опорного напряженияRA4 может использоваться в качестве входа внешнего тактового сигнала для TMR0. Выход с открытым стоком.RA1 может быть настроен как аналоговый канал 1 или вход выбора микросхемы в режиме ведомого SPI |
RB0/INTRB1RB2RB3/PGMRB4RB5RB6/PGCRB7/PGD | 3334353637383940 | I/OI/OI/OI/OI/OI/OI/OI/O | TTL/STTTLTTLTTLTTLTTLTTL\STTTL\ST | Двунаправленный порт ввода/вывода PORTB. PORTB имеет программно подключаемые подтягивающие резисторы на входах.RB0 может использоваться в качестве входа внешних прерываний.RB3 может использоваться в качестве входа для режима низковольтного программирования.Прерывания по изменению уровня входного сигнала.Прерывания по изменению уровня входного сигнала.Прерывания по изменению уровня входного сигнала.Тактовый вход в режиме программирования.Прерывания по изменению уровня входного сигнала. |
Таблица 3.4.2 – продолжение | ||||
RC0/T1OSO/T1CKIRC1/T1OSI/CCP2RC2/CCP1RC3/SCK/SCLRC4/SDI/SDARC5/SDORC6/TX/CKRC7/RX/DT | 1516171823242526 | I/OI/OI/OI/OI/OI/OI/OI/O | STSTSTSTSTSTSTST | Двунаправленный порт ввода/вывода PORTC.RC0 может использоваться в качестве выходагенератора TMR1 или входа внешнего тактового сигнала для TMR1.RC1 может использоваться в качестве входа генератора для TMR1 или вывода модуля CCP2.RC2 может использоваться в качестве вывода модуля CCP1.RC3 может использоваться в качестве входа/выхода тактового сигнала в режиме SPI и I2C.RC4 может использоваться в качестве входа данных в режиме SPI или вход/выход данных в режиме I2C.RC5 может использоваться в качестве выхода данных в режиме SPI.RC6 может использоваться в качестве выводапередатчика USART в асинхронном режиме или вывода синхронизации USART в синхронном режиме.RC6 может использоваться в качестве выводаприемника USART в асинхронном режиме или вывода данных USART в синхронном режиме. |
RD0/PSP0RD1/PSP1RD2/PSP2RD3/PSP3RD4/PSP4RD5/PSP5RD6/PSP6RD7/PSP7 | 1920212227282930 | I/OI/OI/OI/OI/OI/OI/OI/O | ST/TTLST/TTLST/TTLST/TTLST/TTLST/TTLST/TTL | Двунаправленный порт ввода/вывода PORTD иливедомый параллельный порт для подключения к шине микропроцессора |
RE0/-RD/AN5RE1/-WR/AN6RE2/-CS/AN7 | 8.910 | I/OI/OI/O | ST/TTLST/TTLST/TTL | Двунаправленный порт ввода/вывода PORTE.RE0 может использоваться в качестве управляющего входа чтения PSP или аналогового канала 5RE1 может использоваться в качестве управляющего входа записи PSP или аналогового канала 6RE2 может использоваться в качестве управляющего входа выбора 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 биту данного порта подведена линия от выпрямителя для подачи пульсирующего напряжения для синхронизации в режиме СИФУ.
Внешние датчики подключены к остальным линиям портов ввода-вывода.
4. Построение принципиальной схемы
По построенной структурной схеме и выбранной элементной базе строю принципиальную схему. Схема электрическая принципиальная и перечень элементов приведены в ПРИЛОЖЕНИИ В.
За ядро всего устройства выбран PIC контроллер серии PIC18F452. Данный выбор придаёт устройству гибкость, низкую стоимость, упрощает процесс проектирования. Частоту тактового генератора для микроконтроллера выбираю 4 МГц для оптимальной настройки внутренних таймеров, используемых при опросе ИК-приёмника, внешних датчиков и обмене данными с ПК.
4.1 Построение блока питания
Блок питания состоит из трансформатора Т1, диодного моста VD1, ограничивающего диода VD2, конденсаторов C1 и C2, стабилизатора в интегральном исполнении LM7806. Переменное напряжение с трансформатора поступает на диодный мост, выпрямляется и через диод VD2 поступает на стабилизатор. Данный диод необходим для того, чтобы сглаживающий конденсатор C1 не оказывал влияние на пульсирующее напряжение, подаваемое на вход синхронизации для работы СИФУ.
4.2 Построение блока индикации
Для построения блока индикации использован ЖК-модуль MT16S2D фирмы МЭЛТ. Данный ЖКИ позволяет отображать две строки по 16 символов и имеет встроенный знакогенератор, что значительно упрощает написание процедуры для вывода информации на дисплей. Данный ЖКИ имеет сравнительно невысокую стоимость, малое энергопотребление и, что самое главное, наглядное отображение информации. Резистор R19 необходим для задания контрастности ЖКИ. Чем меньше сопротивление данного резистора, тем выше контрастность и наоборот.