Микроконтроллеры типа PIC 16 F 873
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Основные характеристики.

Данные микроконтроллеры выполняются в 28-выводном корпусе типа PDIP или SOIC.

Основные характеристики микроконтроллеров.

 Тактовая частота: до 20 МГц.

Сброс:                    по включению

                               по снижению питания

                               по переполнению сторожевого таймера

                               по сигналу на входе сброс (MCLR).

Архитектура:         быстродействующая RISC – архитектура.

Память программ:      FLASH  4К (8К для PIC16F876) 14-разрядных слов.

Память данных:    RAM 192 (368) байт.

Память данных:          EEPROM 128 (256) байт.

Число источников прерываний:                    13.

Число уровней аппаратного стека:                   8

Число инструкций (команд):                            35

Число портов ввода/вывода                            3.

Энергопотребление:

Диапазон питающего напряжения              2.0 – 5.5 В.

Ток потребления                                           0,6 мА

Ток в режиме энергосбережения (SLEEP)  1 мкА.

Нагрузочная способность портов                25 мА.

Периферийные модули:

Число таймеров                                                3.

Число каналов АЦП                                         5.

Число модулей ССР                                         2.

Синхронный последовательный порт(MSSP) 1.

Асинхронный последовательный порт(USART)1.

 

Низковольтный режим программирования - есть

Программирование в готовом устройстве - есть

 

Структурная схема микроконтроллера.

 

 На рис.1.1      показаны структурные схемы микроконтроллеров PIC17F873 и PIC16F877.

Для связи с внешними устройствами микроконтроллер PIC16F873 имеет три порта PORTA, PORTB, PORTC (микроконтроллеры типа PIC16F877, PIC16F887 дополнительно имеют PORTD и PORTE). Ядро микроконтроллера имеет в своем составе минимально необходимый набор элементов для реализации микро-ЭВМ и ряд законченных функциональных блоков для реализации элементов управления различными техническими устройствами.

К первой группе относятся:

- арифметико-логическое устройство – процессор – ALU,

- рабочий регистр W, играющий роль аккумулятора,

- порты связи с внешними устройствами (PORTA,....PORTE),   

- регистр состояния процессора – STATUS,

- счетчик команд – PC,

- регистр косвенной адресации – FSR,

- 8-ми уровневый стек,

- память программ типа FLASH,

- память данных типа RAM,

- тактовый генератор импульсов,

- устройство сброса по включению питания – POR,

- устройство сброса по снижению питания – BOR,

- сторожевой таймер – WDT,

- таймер ожидания запуска тактового генератора,

- таймер сброса PWRT,

- устройство для внутрисхемной отладки программ – ICD,

- устройство низковольтного программирования – LVP.

 

Ко второй группе относятся:

- модуль 10-разрядного АЦП,

- модуль программируемого таймера TMR0,

- модуль программируемого таймера TMR1,

- модуль программируемого таймера TMR2,

- модуль электрически перепрограммируемого ПЗУ – EEPROM,

- многофункциональные модули CCP1 и CCP2,

- синхронный последовательный порт MSSP,

- универсальный асинхронно-синхронный порт USART.

В микроконтроллерах типа PIC16F877 имеется модуль параллельного порта.

 

 Рассмотрим работу отдельных элементов и блоков микроконтроллера.

 

 

Блоки   памяти.

В рассматриваемом микроконтроллере есть два вида памяти трех типов. Первый вид – это память программ типа FLASH, объемом 4К четырнадцатиразрядных слов (в микроконтроллерах PIC16F876 – 8K). Организация памяти программ приведена на рис.1.3. Память предназначена для хранения программы работы микроконтроллера, управляется счетчиком команд – РС. В состав памяти входит восьмиуровневый аппаратный стек, недоступный для записи и чтения программистом, четыре вектора сброса (адреса 0000 -0003 h), и один вектор прерывания с адресом 0004h. Остальная область FLASH- памяти разделена на две (четыре для PIC16F876) страницы с адресами 0005h – 07FFh  и  0800h – 0FFFh. Карта распределения памяти данных приведена на рис. 1.4. и 1.5.

Память данных разделена на четыре банка: банк 0, банк 1, банк 2, и банк 3. Первые два банка с адресами 00h – 7Fh и 80h – FFh представляют собой ОЗУ статического типа, т.е. при выключении питания информация разрушается. Вторые два банка с адресами 100h – 17Fh и 180h – 1FFh представляют собой ППЗУ типа EEPROM, поэтому после выключения питания информация сохраняется. Активизация (выбор) требуемого банка осуществляется установкой разрядов регистра специального назначения STATUS в соответствии с таблицей 1.

 


 

 

                                                                             Таблица 3.

Разряды: PR 1:PR0 Банк
00 0
01 1
10 2
11 3

 

Ячейки всех банков памяти данных в верхней части адресов зарезервированы под регистры специального назначения, остальные ячейки представляют собой регистры общего назначения. Некоторые регистры специального назначения в зависимости от частоты использования могут отображаться в нескольких банках, например регистр STATUS отображается во всех четырех банках и т.п.

 

 

 
2 3 4 5 6 7   11 12 13 14 15 16 17 18   21 22 23 24 25 26 27 28  
                                             RA0/AN0                                          RA1/AN1                                   RA2/AN2/Vref-                               RA3/AN3/Vref+ MCLR1                      RA4/TOCK1 Vpp                          RA5/AN5/SS                                                             RC0/T1OCO/T1CK1 OSC1/CLK1N   RC1/T1OS1/CCP2                                        RC2/CCP1                                 RC3/SCK/SCL                                 RC4/SD1/SDA OSC2/CLKOUT             RC5/SD0                                    RC6/TX/CK                                    RC7/RX/DT Vdd                                         RB0/INT                                                 RB1                                                 RB2 Vss                                RB3/PGM                                                      RB4                                                 RB5                                        RB6/PGC Vss                                 RB7/PGD     
1   9    10      20    19   8  

 

 


Рис.3.  Назначение выводов микроконтроллеров PIC16F873, PIC16F876.

 

 
2 3 4 5 6 7   11 12 13 14 15 16 17 18   21 22 23 24 25 26 27 28  
                                             RA0/AN0                                          RA1/AN1                                   RA2/AN2/Vref-                               RA3/AN3/Vref+ MCLR1                      RA4/TOCK1 Vpp                          RA5/AN5/SS                                                             RC0/T1OCO/T1CK1 OSC1/CLK1N   RC1/T1OS1/CCP2                                        RC2/CCP1                                 RC3/SCK/SCL                                 RC4/SD1/SDA OSC2/CLKOUT             RC5/SD0                                    RC6/TX/CK                                    RC7/RX/DT Vdd                                         RB0/INT                                                 RB1                                                 RB2 Vss                                RB3/PGM                                                      RB4                                                 RB5                                        RB6/PGC Vss                                 RB7/PGD     
1   9    10      20    19   8  

 

 


Рис.4. Назначение выводов микроконтроллеров PIC16F887.

 

Стек, уровень 1
Стек, уровень 2
Стек, уровень 8
   PC<12;0>
Вектор сброса
0000h
Вектор прерываний
Страница 0
Страница 1
 
0004h   0005h 07FFh   0800h 0FFFh    
Внутренняя память программ (для PIC16F873)  
CALL, RETURN,RETLW,RETFIE
13
Счетчик команд
Страница 2
Страница 3
(для PIC 16F887)

 

 

Рис.5 Организация памяти программ в микроконтроллере PIC 16F873.

 

 

Регистр косвенной 00h адресации TMR0      01h PCL         02h STATUS 03h FSR         04h PORTA   05h       PORTB   06h PORTC   07h PORTD   08h PORTE   09h PCLATH 0Ah INTCON 0Bh PIR1       0Ch PIR2       0Dh TMR1L   0Eh TMR1H  0Fh T1CON  10h TMR2     11h T2CON   12h SSPBUF  13h SSPCON 14h CCPR1L  15h CCPR1H 16h CCP1CON 17h RCSTA   18h TXREG   19h RCREG  1Ah CCPR2L 1Bh CCPR2H 1Ch CCP2CON 1Dh ADRESH 1Eh ADCON0 1Fh                   20h Регистры общего назначения 96 байт                                                                                  7Fh 
Банк 0                Банк 1                   Банк 2               Банк 3                       Рис. 6. Карта памяти данных микроконтроллера PIC16F887
Регистр косвенной        80h адресации OPTION-REG 81h PCL               82h STATUS       83h FSR               84h TRISA          85h TRISB          86h TRISC          87h TRISD          88h TRISE          89h PCLATH     8Ah INTCON      8Bh  PIE1             8Ch PIE2             8Dh PCON          8Eh -------------------8Fh -------------------90h SSPCON2   91h PR2             92h SSPADD    93h SSPSTAT       94h ------------------ 95h ------------------ 96h ------------------ 97h TXSTA       98h SPBRG       99h ------------------ 9Ah ------------------ 9Bh ------------------ 9Ch ------------------ 9Dh ADRESL    9Eh ADCON1   9Fh                      A0h Регистры общего назначения 80 байт                      EFh                      F0h Доступ к памяти 70h – 7Fh                      FFh                                     
Регистр косвенной 100h адресации TMR0     101h PCL        102h STATUS 103h FSR        104h ---------------105h PORTB  106h -------------- 107h -------------- 108h -------------- 109h PCLATH 10Ah INTCON 10Bh EEDATA 10Ch EEADR 10Dh EEDATH 10Eh EEADRH 10Fh               110h               111h               112h                113h Регистры 114h общего  115h назначения 116h               117h 16 байт 118h               119h               11Ah                 11Bh               11Ch               11Dh               11Eh               11Fh                 120h Регистры общего назначения 80 байт                 16Fh                 170h Доступ к памяти 70h – 7Fh                17Fh       
Регистр косвенной       180h адресации OPTION_REG 181h PCL             182h STATUS     183h FSR             184h ------------------ 185h TRISB        186h ----------------- 187h ----------------- 188h ----------------- 189h PCLATH    18Ah INTCON     18Bh EECON1     18Ch EECON2     18Dh    Резерв         18Eh Резерв         18Fh                     190h                     191h                     192h                     193h          Регистры    194h общего       195h  назначения 196h                    197h 16 байт      198h                    199h                    19Ah                    19Bh                    19Ch                    19Dh                    19Eh                    19Fh                      1A0h Регистры общего  назначения 80 байт                      1EFh                      1F0h Доступ к памяти 70h – 7Fh                      1FFh           

 

Регистр косвенной 00h адресации TMR0      01h PCL         02h STATUS 03h FSR         04h PORTA   05h       PORTB   06h PORTC   07h ----------   08h ----------   09h PCLATH 0Ah INTCON 0Bh PIR1       0Ch PIR2       0Dh TMR1L   0Eh TMR1H  0Fh T1CON  10h TMR2     11h T2CON   12h SSPBUF  13h SSPCON 14h CCPR1L  15h CCPR1H 16h CCP1CON 17h RCSTA   18h TXREG   19h RCREG  1Ah CCPR2L 1Bh CCPR2H 1Ch CCP2CON 1Dh ADRESH 1Eh ADCON0 1Fh                   20h Регистры общего назначения 96 байт                                                                              7Fh 
Банк 0                Банк 1                   Банк 2               Банк 3                       Рис. 7. Карта памяти данных микроконтроллер PIC16F876/877/887
Регистр косвенной        80h адресации OPTION-REG 81h PCL               82h STATUS       83h FSR               84h TRISA          85h TRISB          86h TRISC          87h ---------          88h ---------               89h PCLATH     8Ah INTCON      8Bh  PIE1             8Ch PIE2             8Dh PCON          8Eh -------------------8Fh -------------------90h SSPCON2   91h PR2             92h SSPADD    93h SSPSTAT   94h ------------------ 95h ------------------ 96h ------------------ 97h TXSTA       98h SPBRG       99h ------------------ 9Ah ------------------ 9Bh ------------------ 9Ch ------------------ 9Dh ADRESL    9Eh ADCON1   9Fh                      A0h Регистры общего назначения 96 байт                                  FFh                                     
Регистр косвенной 100h адресации TMR0     101h PCL        102h STATUS 103h FSR        104h ---------------105h PORTB  106h -------------- 107h -------------- 108h -------------- 109h PCLATH 10Ah INTCON 10Bh EEDATA 10Ch EEADR 10Dh EEDATH 10Eh EEADRH 10Fh                                110h                                  Регисты общего назначения                                                                                      17Fh
Регистр косвенной       180h адресации OPTION_REG 181h PCL             182h STATUS     183h FSR             184h ------------------ 185h TRISB        186h ----------------- 187h ----------------- 188h ----------------- 189h PCLATH    18Ah INTCON     18Bh EECON1     18Ch EECON2     18Dh    Резерв         18Eh Резерв         18Fh                                                                                     190h                                             Регистры общего назначения                                                      1FFh           

 



Дата: 2019-04-23, просмотров: 271.