Знайте за PIC микроконтролерите и неговата архитектура с обяснение

Опитайте Нашия Инструмент За Премахване На Проблемите





PIC е a Микроконтролер с периферен интерфейс който е разработен през 1993 г. от микроконтролерите General Instruments. Той се управлява от софтуер и е програмиран по такъв начин, че да изпълнява различни задачи и да контролира генерираща линия. Микроконтролерите PIC се използват в различни нови приложения като смартфони, аудио аксесоари и усъвършенствани медицински устройства.

Микроконтролери PIC

Микроконтролери PIC



На пазара се предлагат много PIC, вариращи от PIC16F84 до PIC16C84. Тези видове PIC са достъпни flash PIC. Microchip наскоро представи флаш чипове с различни типове, като 16F628, 16F877 и 18F452. 16F877 струва два пъти цената на стария 16F84, но е осем пъти повече от размера на кода, с повече RAM и много повече I / O щифтове, UART, A / D конвертор и много повече функции.


Архитектура на PIC микроконтролери

The PIC микроконтролер се основава на RISC архитектура. Нейната архитектура на паметта следва харвардския модел на отделни спомени за програма и данни, с отделни шини.



Архитектура на PIC микроконтролер

Архитектура на PIC микроконтролер

1. Структура на паметта

Архитектурата PIC се състои от две памет: Програмна памет и Памет на данни.

Памет на програмата: Това е 4K * 14 място в паметта. Използва се за съхраняване на 13-битови инструкции или програмния код. Данните от програмната памет са достъпни от регистъра на брояча на програми, който съдържа адреса на програмната памет. Адресът 0000H се използва като място за нулиране на паметта, а 0004H се използва като пространство за прекъсване на паметта.

Памет за данни: Паметта за данни се състои от 368 байта RAM и 256 байта EEPROM. 368 байта RAM се състои от множество банки. Всяка банка се състои от регистри с общо предназначение и регистри за специални функции.


Регистрите със специална функция се състоят от контролни регистри за управление на различни операции на ресурсите на чипа като таймери, Аналогово-цифрови преобразуватели , Последователни портове, входно / изходни портове и др. Например регистърът TRISA, чиито битове могат да се променят, за да се променят входните или изходните операции на порт А.

Регистрите с общо предназначение се състоят от регистри, които се използват за съхраняване на временни данни и обработка на резултатите от данните. Тези регистри с общо предназначение са 8-битови регистри.

Работен регистър: Състои се от място в паметта, което съхранява операндите за всяка инструкция. Той също така съхранява резултатите от всяко изпълнение.

Регистър на състоянието: Битовете на регистъра на състоянието означават състоянието на ALU (аритметична логическа единица) след всяко изпълнение на инструкцията. Също така се използва за избор на някоя от 4-те банки на RAM.

Регистър за избор на файл: Той действа като указател към всеки друг регистър с общо предназначение. Състои се от адрес на регистрационен файл и се използва при непряко адресиране.

Друг регистър с общо предназначение е регистърът на програмния брояч, който е 13-битов регистър. 5-те горни бита се използват като PCLATH (Program Counter Latch), за да функционират независимо като всеки друг регистър, а долните 8-бита се използват като програмни битове. Броячът на програмата действа като указател към инструкциите, съхранени в програмната памет.

EEPROM: Състои се от 256 байта памет. Това е постоянна памет като ROM, но съдържанието му може да бъде изтрито и променено по време на работа на микроконтролера. Съдържанието в EEPROM може да се чете от или да се записва, като се използват специални функционални регистри като EECON1, EECON и др.

2. I / O портове

Серията PIC16 се състои от пет порта, като порт A, порт B, порт C, порт D и порт E.

Порт А: Това е 16-битов порт, който може да се използва като входен или изходен порт въз основа на състоянието на регистъра TRISA.

Порт Б: Това е 8-битов порт, който може да се използва едновременно като входен и изходен порт. 4 от неговите бита, когато се използват като вход, могат да се променят при сигнали за прекъсване.

Порт C: Това е 8-битов порт, чиято работа (вход или изход) се определя от състоянието на регистъра TRISC.

Порт D: Това е 8-битов порт, който освен като входно / изходен порт, действа и като подчинен порт за връзка с микропроцесор автобус.

Порт E: Това е 3-битов порт, който обслужва допълнителната функция на управляващите сигнали към A / D преобразувателя.

3. Таймери

PIC микроконтролерите се състоят от 3 таймери , от които Таймерът 0 и Таймерът 2 са 8-битови таймери, а Time-1 е 16-битов таймер, който може да се използва и като брояч .

4. A / D конвертор

Микроконтролерът PIC се състои от 8-канален, 10-битов аналогово-цифров преобразувател. Работата на A / D конвертор се контролира от тези специални функционални регистри: ADCON0 и ADCON1. Долните битове на преобразувателя се съхраняват в ADRESL (8 бита), а горните битове се съхраняват в регистъра ADRESH. Той изисква аналогово референтно напрежение от 5V за своята работа.

5. Осцилатори

Осцилатори се използват за генериране на синхронизация. PIC микроконтролерите се състоят от външни осцилатори като кристали или RC осцилатори. В случай на кристални генератори, кристалът е свързан между два осцилаторни щифта и стойността на кондензатора, свързан към всеки щифт, определя режима на работа на осцилатора. Различните режими са режим с ниска мощност, кристален режим и режим с висока скорост. В случая на RC осцилатори стойността на резистора и кондензатора определя тактовата честота. Тактовата честота варира от 30 kHz до 4 MHz.

6. CCP модул:

CCP модул работи в следните три режима:

Режим на заснемане: Този режим улавя времето на пристигане на сигнал, или с други думи, улавя стойността на таймера1, когато CCP щифтът се повиши.

Режим за сравнение: Той действа като аналогов компаратор, който генерира изход, когато стойността на таймера1 достигне определена референтна стойност.

ШИМ режим: Осигурява ширина на импулса модулирана изход с 10-битова резолюция и програмируем работен цикъл.

Други специални периферни устройства включват Watchdog таймер, който нулира микроконтролера в случай на неизправност на софтуера и Brownout нулиране, което нулира микроконтролера в случай на колебания на мощността и други. За по-добро разбиране на този PIC микроконтролер, ние даваме един практически проект, който използва този контролер за своята работа.

Улична светлина, която свети при откриване на движение на автомобила

Това Проект за управление на LED улично осветление е проектиран да засича движението на превозното средство по магистралата, за да включи блок улично осветление пред него и да изключи задните светлини, за да спести енергия. В този проект програмирането на PIC микроконтролер се извършва с помощта на вграден C или асемблерен език.

Улична светлина, която свети при откриване на движение на автомобила

Улична светлина, която свети при откриване на движение на автомобила

Захранващата верига дава мощност на цяла верига, като се оттегля, коригира, филтрира и регулира захранването с променлив ток. Когато по магистралата няма превозни средства, всички светлини остават изключени, за да може енергията да бъде спестена. IR сензорите се поставят от двете страни на пътя, когато усещат движението на превозното средство и на свой ред изпращат командите до микроконтролер за включване или изключване на светодиодите. Блок от светодиоди ще светне, когато превозно средство се приближи близо до него и след като превозното средство измине от този маршрут, интензивността става ниска или напълно изключена.

The Проекти за микроконтролер PIC може да се използва в различни приложения, като периферни устройства за видео игри, аудио аксесоари и др. Освен това, за всяка помощ по отношение на проекти, можете да се свържете с нас, като коментирате в раздела за коментари.