Микроконтролер PIC18FXX2
Содержание
Введение…………………………………………………………
Глава 1. Микроконтроллеры……………………………………
1.1 Микроконтроллеры………………..………………
1.2 Описание микроконтроллера PIC18FXX2………..…………………..9
Глава 2. Программирование
микроконтроллеров…………………......
2.1. Программирование микроконтроллеров PIC16/PIC18 на языке C...17
Глава 3. Сборка
устройства……………………………………………….
3.1 Система виртуального моделирования PROTEUS VSM………….21
3.2 Сборка схемы………………………………………………
3.3 Программирование и настройка контроллера………………………26
Заключение……………………………………………………
Список
литературы……………………………………………………
Введение
Характерной
чертой научно-технического прогресса,
определяющей мощный дальнейший подъем
общественного производства, является
широкое внедрение электроники
во все отрасли народного
Современная электронная цифровая вычислительная техника широко применяется в народном хозяйстве. В настоящее время создано четыре поколения ЭВМ с улучшающимися технико-экономическими показателями, что способствует дальнейшему расширению сферы применения ЭВМ и их эффективности.
Четвертое поколение ЭВМ на основе интегральных схем с большой степенью интеграции элементов (БИС) появилась в начале 70 - х годов и существенно изменило параметры ЭВМ всех классов. Вместе с тем возник совершенно новый класс ВТ на основе БИС - микропроцессорные вычислительные машины - микроЭВМ.
В
конце 70 - х годов в результате
интеграции всех электронных устройств
ЭВМ в одном кристалле были
созданы однокристальные
Микропроцессоры
и микроЭВМ стали новым
Массовость
этого нового класса и его высокие
технико-экономические
Микропроцессоры и микроЭВМ применяют в различных областях народного хозяйства (в управлении технологическими процессорами, информационных и измерительных комплексах, энергетике, медицине и др.). На базе выпускаемых микропроцессоров и микроЭВМ созданы высокопроизводительные устройства числового программного управления. Крупносерийное производство ряда моделей мини - ЭВМ позволяет начать работы по созданию нескольких типов проблемно - ориентированных комплексов для автоматизации научных исследований и технологических процессов. Особое значение микроЭВМ приобретают в связи с реализацией школьной реформы. МикроЭВМ положены в основу организуемых в каждой школе учебных классов по дисциплине “Основы информатики и вычислительной техники”.
Построение
ЭВМ на основе микропроцессорных
БИС позволяет уменьшить
Микропроцессор – функционально законченное устройство обработки информации, управляемое хранимой в памяти программой. Появление микропроцессоров (МП) стало возможным благодаря развитию интегральной электронике. Это позволило перейти от схем малой и средней степени интеграции к большим и сверхбольшим интегральным микросхемам (БИС и СБИС).
По логическим функциям и структуре МП напоминает упрощенный вариант процессора обычных ЭВМ. Конструктивно он представляет собой одну или несколько БИС или СБИС.
По конструктивному признаку МП можно разделить на однокристальные МП с фиксированной длиной (разрядностью) слова и определенной системой команд; многокристальные (секционные) МП с наращиваемой разрядностью слова и микропрограммным управлением (они состоят из двух БИС и более).
В
последнее время появились
Архитектура многокристального МП с микропрограммным управлением позволяет достичь гибкости в его применении и сравнительно простыми средствами организовать параллельное выполнение отдельных машинных операций, что повышает производительность ЭВМ на таких МП.
Несмотря
на то, что возможности
Глава 1. Микроконтроллеры
- Микроконтроллеры
Микроконтроллер
— микросхема, предназначенная для
управления электронными устройствами.
Типичный микроконтроллер сочетает
в себе функции процессора и периферийных
устройств, может содержать ОЗУ
и ПЗУ. По сути, это однокристальный
компьютер, способный выполнять
простые задачи. Большая часть
выпускаемых в современном мире
процессоров —
Использование
в современном микроконтроллере
«мощного» вычислительного
- плат управления различными устройствами и их отдельными блоками
- в вычислительной технике: материнские платы, контроллеры дисководов жестких и гибких дисков, CD и DVD;
- электронике и разнообразных устройствах бытовой техники, в которой используется электронные системы управления — стиральных машинах, микроволновых печах, посудомоечных машинах, телефонах и современных приборах;
При
проектировании микроконтроллеров
приходится соблюдать баланс между
размерами и стоимостью с одной
стороны и гибкостью и
В
то время как 8-разрядные процессоры
общего назначения полностью вытеснены
более производительными
Ограничения
по цене и энергопотреблению сдерживают
также рост тактовой частоты контроллеров.
Хотя производители стремятся
Большое
распространение получили микроконтроллеры
с RISC-архитектурой (англ. ReducedInstructionSetComputer
— вычисления с упрощённым набором
команд). Упрощённый набор команд позволяет
выполнять большинство
Кроме
ОЗУ, микроконтроллер может иметь
встроенную энергонезависимую память
для хранения программы и данных.
Во многих контроллерах вообще нет
шин для подключения внешней
памяти. Наиболее дешёвые типы памяти
допускают лишь однократную запись.
Такие устройства подходят для массового
производства в тех случаях, когда
программа контроллера не будет
обновляться. Другие модификации контроллеров
обладают возможностью многократной перезаписи
энергонезависимой памяти. В отличие
от процессоров общего назначения,
в микроконтроллерах часто
Неполный список периферии, которая может присутствовать в микроконтроллерах, включает в себя:
- универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод
- различные интерфейсы ввода-вывода, такие как UART, I²C, SPI, CAN, USB, IEEE 1394, Ethernet
- аналого-цифровые и цифро-аналоговые преобразователи
- компараторы
- широтно-импульсные модуляторы
- таймеры
- контроллеры бесколлекторных двигателей
- контроллеры дисплеев и клавиатур
- радиочастотные приемники и передатчики
- массивы встроеннойфлеш-памяти
- встроенный тактовый генератор и сторожевой таймер
Программирование микроконтроллеров обычно осуществляется на языке ассемблера или Си, хотя существуют компиляторы для других языков, например, Форта. Используются также встроенные интерпретаторы Бейсика. Для отладки программ используются программные симуляторы (специальные программы для персональных компьютеров, имитирующие работу микроконтроллера), внутрисхемные эмуляторы (электронные устройства, имитирующие микроконтроллер, которые можно подключить вместо него к разрабатываемому встроенному устройству) и интерфейс JTAG.
1.2 Описание микроконтроллера PIC18FXX2
PICOTP- это однократно программируемые пользователем контроллеры, предназначенные для полностью оттестированных и законченных изделий, в которых не будет происходить дальнейших изменений кода.
Для
отладки программ и макетирования
выпускается вариант
Для
изделий, программа которых может
меняться, либо содержит какие-либо переменные
части, таблицы, параметры калибровки,
ключи и т.д., выпускается электрически
стираемый и
Микроконтроллеры выпускаются в 28-выводных и 40/44-выводных корпусах. 28-выводные микроконтроллеры не имеют модуля ведомого параллельного порта (PSP), а число реализованных входных каналов АЦП 5. Предварительную информацию смотрите в таблице 1-1.
На
рисунке 1-1 представлена
структурная схема 28-выводных
микроконтроллеров,
а на рисунке 1-2 показана
структурная схема 40-выводных
микроконтроллеров.
В таблицах 1-2 и 1-3
соответственно представлено
назначение выводов 28-выводных
и 40-выводных микроконтроллеров.
Примечания:
1. Подключение
вывода CCP2 к каналу порта ввода/вывода
RB3 определяется битом
микроконтроллера.
2. Старшие биты адреса регистра ОЗУ берутся из регистра BSR (кроме команды MOVFF).
3. Большинство
каналов ввода/вывода
Примечания:
1. Подключение
вывода CCP2 к каналу порта ввода/вывода
RB3 определяется битом
микроконтроллера.
2. Старшие биты адреса регистра ОЗУ берутся из регистра BSR (кроме команды MOVFF).
3. Большинство
каналов ввода/вывода
Обозначения:
TTL = ТТЛ совместимый вход
CMOS = КМОП совместимый вход/выход
ST = вход с
триггером Шмитта и КМОП
I = вход
O = выход
P = питание
OD = выход с
открытым коллектором (нет
AN = аналоговый вход
Обзор характеристик
Высокоскоростной RISC процессор
• Быстродействие до 10MIPS:
- Тактовая частота от DC до 4МГц
- Тактовая частота в режиме PLL от 4МГц до 10МГц
• 16-разрядные команды, 8-разрядные данные
• Система приоритетов прерываний
• Аппаратное умножение 8х8 за один машинный
- Разводка ножек
Глава 2. Программирование микроконтроллеров PIC16/PIC18 на языке C.
Необходимый минимум:
ПО:
— MPLAB;
— собственно компилятор C;
— Proteus ISIS;
Железо:
— отладочная плата;
— программатор.
MPLAB — среда разработки от Microchip.
Скачать можно на официальном сайте.
Полностью бесплатна.
Содержит компилятор с языка ассемблера,
позволяет провести полный цикл разработки
в том числе и прошивку(при наличии соответствующего
программатора).
Большинство компиляторов языка C имеют
механизмы встраивания в эту среду.
Качаем обязательно.
Компилятор C.
Здесь уже немного сложнее с выбором.
Список того, на что я советую обратить
внимание:
— CCS PICC;
— Micro-C;
— IAR C;
— HT-PICC;
— Microchip C18;
CCS PICC. Платный. В своем составе содержит
неплохую IDE. Возможна интеграция с MPLAB
с помощью плагина.
Существует демо-версия с ограниченичем
по размеру кода и отключеннными некоторыми
функциями.
Узнать о нем можно в очень хорошей книге
товарища Шпака «Программирование
на языке C для AVR и PIC
микроконтроллеров».
Весьма неплох. Используется многими.
Информации в сети достаточно. Вакцина
существует.
Micro-C. Платный. От копании mikroElektronika.
В своем составе содержит весьма удобную
IDE, симулятор и небольшой набор полезных
инструментов.
Широкий ассортимент поддерживаемых устройств.
Главный плюс для начинающего — огромная
библиотека модулей и примеров к ним. По
этому параметру аналогов нет.
Есть документация на русском. Вакцина
существует.
Лучший выбор для начинающего,
но не более.
IAR C. Платный. Очень объемный проект.
Поддержка огромного количества устройств
и PIC18 в том числе.
Аналогов по функционалу и возможностям
наверное нет.
Демо-версия существует, с ограничениями
естественно.
Не лучший выбор для
новичка. Хорошо подойдет в будущем,
если желание работать с МК не пропадет:-)
HT-PICC. Платный. Поддержка многих устройств.
Существуют верссии для Linux и Mac.
Будет использоваться
мною в статьях для программирования PIC16.
У меня версия — 8.05PL1.
Microchip C18. Платный. Существует студенческая
версия с полным функционалом на 2 месяца.
Будет использоваться
мною в статьях о программировании PIC18.
У меня версия — 3.33.
едем дальше.
Proteus ISIS. одна из составляющих проекта
Proteus от Labcent Electronics.
Симулятор-отладчик. Лучший вариант когда
под рукой нет необходимого железа.
Информации о нем в сети предостаточно.
Качаем обязательно.
У меня версия — 7.5_SP3.
Железо.
Не буду советовать конкретной отладочной
платы или схемы для нее из-за трудностей
вопросов купить/спаять/достать для каждого
индивидуально.
Скажу лишь что буду давать примеры для
PIC16F628A и PIC18F4550.
С программатором в принципе тоже самое.
Но советую PICkit2.
Теперь практика.
Сперва речь буду вести о PIC16.
Ну и для вводной статьи напишем и запустим
простейшую программу
Скачали MPLAB. У меня версия 8.36.
Скачали HT-PICC. У меня версия — 8.05PL1.
Скачали Proteus. У меня версия — 7.5_SP3.
Все установили — все работает.
Выполняем все рекомендации по установке.
Если не работает — решаем проблемы.
Запускаем MPLAB.
Идем Project -> Set Language Tool Locations. Ищем
в списке HI-TECH PICC Toolsuite.
Открываем Executables. И указываем для
компиляторов и линковщика соответствующий
установке путь. Жмем ОК.(Рис.1)
Жмем Project -> Project Wizard. Выбираем PIC16F628A.
Выбираем HI-TECH PICC Toolsuite. Выбираем имя
нового проекта.
Получаем пустой проект.
Жмем File -> New. Сохраняем файл в папке
проекта под именем main.c.
Жмем в менеджере проекта на Source Files ->
Add files и добавляем наш main.c
Пишем код:
void main(void)
{
while(1);
}
Жмем F10.
Должны увидеть сообщение об удачном завершении.(Рис.2)
В корне проекта появится файл с расширением
.hex.
Этим файлом можно прошить МК и посмотреть
как он ничего не делает:-)
В этой я лишь хотел помочь сделать выбор,
и настроить ПО для дальнейшей работы.
Глава 3. Сборка устройства
3.1 Система виртуального моделирования PROTEUS VSM.
Наверняка
многие начинающие радиолюбители сталкивались
с ситуацией когда, решив собрать
понравившееся и, несомненно, нужное
устройства, по неопытности а может
из за ошибок в схеме или же по
другим «форс-мажорным»
В
наш век повальной
Одна из таких программ PROTEUS VSM. Но симуляция радиоэлементов это не единственная способность программы. Proteus VSM , зозданная фирмой LabcenterElectronics на основе ядра SPICE3F5 университета Berkeley, является так называемой средой сквозного проектирования. Это означает создание устройства, начиная с его графического изображения (принципиальной схемы) и заканчивая изготовления печатной платы устройства, с возможностью контроля на каждом этапе производства.
Но, не смотря на кажущуюся сложность программы, пользоваться ей смогут не только профессионалы в мире радиоэлектроники, но и новички, научившиеся, аможет пока еще и нет, отличать резистор от транзистора.
В
«сферу-влияний» PROTEUS VSM входят как простейшие
аналоговые устройства так и сложные
системы созданные на популярных
ныне микроконтроллерах. Доступна огромная
библиотека моделей элементов, пополнять
которую может сам
Программа не прихотлива к системным требованиям. Как заявлено создателями работает в Windows 98/Me/2k/XP и выше. Запускается даже на Pentium I 150 МГц. Но все-таки для комфортной работы и более полного использования возможностей программ рекомендуется процессор не ниже 500 МГц, объем оперативной памяти 64 МБ, звуковая карта совместимая с DirectX и разрешение монитора не ниже 1024 х 768 точек.
Proteus
VSM поумолчаниюустанавливаетсявпап
Proteus
VSM состоит из двух
Основной программой является ISIS, в ней предусмотрена горячая связь с ARES для передачи проекта для разводки платы.
Окно
запуска программы (рис. 3)
Самое большое пространство отведено под окно редактирования EDIT WINDOW . Именно в нем происходят все основные процессы создания, редактирования и отладки схемы устройства.
Слева вверху маленькое окно предварительного просмотра OverviewWindowс его помощью можно перемещаться по окну редактирования (щелкая левой кнопкой мыши по окну предварительного просмотра, мы перемещаем окно редактирования по схеме, если конечно схема не вмещается в окно).
OverviewWindow (рис. 4)
Перемещать окно редактирования по схеме можно еще так - удерживая нажатой кнопку SHIFT двигать курсор мыши, не нажимая ее кнопок, по окну редактирования.
Приближать и отдалять схему в окне можно соответственно кнопками F6 и F7 или же колесом мыши, F5 центрирует схему в окне а нажатие F8 подгоняет размер схемы под окно редактирование.
Под окном предварительного просмотра находится ObjectSelector список выбранных в данный момент компонентов, символов и других элементов. В деленный в списке объект отображается в окне предварительного просмотра.
Все
возможные функции и
Нижняя часть окна Proteus VSM (рис. 5)
В самом низу основного окна расположены: слева направо кнопки вращения и разворота объекта вокруг своей оси, панель управления интерактивной симуляцией (выглядит как магнитофонная и функции такие же:ПУСК-ПОШАГОВЫЙ РЕЖИМ-ПАУЗА-СТОП).
Панель управления интерактивной симуляцией (рис. 6)
3.2 Сборка схемы
За основу проекта была взята схема термометра MAX6675.
Для сборки схемы в PROTEUS VSM нам понадобятся следующие компоненты из библиотеки компонентов:
- Компоненты дисплея: 7SEGSMB, CLINDSMB, CLKCOLSMB
- Шестнадцатеричный инвертер: 74LS04
- Октальный буфер: 74LS244
- Микроконтролер PIC18F452
- Кнопка: BUTTON
- Компонент «ИЛИНЕ»: NOR_4
- TC4468-драйвер логического ввода CMOS (кол-во 4)
- С5-конденсатор
- R-сопротивление
- D-диод
- С1-С4-ёмкосные конденсаторы
- V1- источник постоянного тока
Соберем следующую схему
Схема
устройства (рис. 7)
Свойства микроконтролера
Свойства компонентов PULLUP (рис. 8)
Свойства компонента TC4468:
Свойства
компонента D1 (рис. 9)
Свойства компонентов
D1-D4, будут отличаться только обозначениями.
Свойства компонентов D4 (рис. 10)
Cвойство компонентов С4(Рис.11)
3.3 Программирование и настройка контроллера
Для программирования микроконтроллера PIC18F452 необходимо создать ASM файл со следующим кодом:
include "P18F452.inc"
__HEAPSTART
__HEAPEND
gbl_porta
gbl_portb
gbl_portc
gbl_portd
gbl_porte
gbl_lata
gbl_latb
gbl_latc
gbl_latd
gbl_late
gbl_trisa
gbl_trisb
gbl_trisc
gbl_trisd
gbl_trise
gbl_pie1
gbl_pir1
gbl_ipr1
gbl_pie2
gbl_pir2
gbl_ipr2
gbl_eecon1
gbl_eecon2
gbl_eedata
gbl_eeadr
gbl_rcsta
gbl_txsta
gbl_txreg
gbl_rcreg
gbl_spbrg
gbl_t3con
gbl_tmr3l
gbl_tmr3h
gbl_ccp2con
gbl_ccpr2l
gbl_ccpr2h
gbl_ccp1con
gbl_ccpr1l

- Микроконтроллер ATtiny2313 фирмы Atmel
- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры AТmega103 фирмы Atmel
- Микроконтроллеры: от простого к сложному
- Микроклимат в семье
- Микроклимат, его влияние на продуктивность и здоровье животного. Роль воздухообмена и теплового баланса в создании микроклимата
- Микроклимат животноводческих помещений
- Микроклимат животноводческих помещений для крупного рогатого скота
- Микроклимат животноводческих помещений для крупного рогатого скота
- Микроклимат и его значение для здоровья и продуктивности животнх
- Микроклимат строящегося здания