Блок-схема модуля компаратора

Расположение выводов

Блок схема


Описание выводов


Карта памяти


STATUS (03h или 83h)

№-бита Вес бита Название бита Описание бита  
IRP Зарезервирован,должен поддерживатся равным “0” -
RP1 Зарезервирован,должен поддерживатся равным “0” -
RP0 Выбор банка(используется при прямой адресации) 1=Банк 1 (80h-FFh) 0=Банк 0 (00h-7Fh) R/W-0
-TO Флаг переполнения сторожевого таймера WDT 1= после сброса POR,выполнения команды CLRWDT или SLEEP 0= произошло переполнение WDT R-1
-PD Флаг детектора выключения питания 1= после сброса POR,или выполнения команды CLRWDT 0= после выполнения команды SLEEP R-1
Z Флаг нулевого результата операции 1=нулевой результат 0=не нулевой результат R/W-x
DC Флаг десятичного переноса/заёма (командыADDWF, ADDLW,SUBLW,SUBWF) Флаг заёма имеет инверсное значение 1=был перенос из младшего полубайта 0=не было переноса из младшего полубайта R/W-x
C Флаг переноса/заёма 1=был перенос из старшего бита 0=не было переноса из старшего бита R/W-x
Примечание: 1.Флаги C и DC используются как биты заёма и десятичного заёма соответственно,например при выполнении команд вычетания SUBLW и SUBWF. Флаг заёма имеет инверсное значение.Вычетание выполняется путём прибавления дополнительного кода второго операнда.При выполнении команд сдвига (RRF,RLF) бит С загружается старшим или младшим битом сдвигаемого регистра.

OPTION_REG (81h)

№-бита Вес бита Название бита Описание бита  
-RAPU Включение подтягивающих резисторов PORTA 1=отключены 0=включены R/W-1
INTEDG Выбор активного фронта сигнала на входе внешнего прерывания INT 1=прерывания по переднему фронту сигнала RA2/INT 0=прерывания по заднему фронту сигнала RA2/INT R/W-1
T0CS Выбор тактового сигнала для TMR0 1=внешний тактовый сигнал с вывода RA2/TOCKI 0=внутренний тактовый сигнал (CLKOUT) R/W-1
T0SE Выбор фронта приращения TMR0 при внешнем тактовом сигнале 1=приращение при переходе сигнала с “1” к “0”,на выводе RA2/TOCKI 0=приращение при переходе сигнала с “0” к “1”,на выводе RA2/TOCKI R/W-1
PSA Выбор включения предделителя 1=предделитель включен перед WDT 0=предделитель включен перед TMR0 R/W-1
PS2-PS0 Установка коэфициента деления предделителя 000=1:2 для TMR0=1:1 для WDT 001=1:4 для TMR0=1:2 для WDT 010=1:8 для TMR0=1:4 для WDT 011=1:16 для TMR0=1:8 для WDT 100=1:32 для TMR0=1:16 для WDT 101=1:64 для TMR0=1:32 для WDT 110=1:128 для TMR0=1:64 для WDT 111=1:256 для TMR0=1:128 для WDT R/W-1
Примечание: Если предварительный делитель включен перед WDT (3-й бит=1),то коэффициент деления тактового сигнала для TMR0 равен 1:1

INTCON (0Bh или 8Bh)

№-бита Вес бита Название бита Описание бита  
GIE Глобальное разрешение прерываний 1=разрешены все немаскированные прерывания 0=все прерывания запрещены R/W-0
PEIE Разрешение прерываний от периферийных модулей 1=разрешены все немаскированные прерывания периферийных модулей 0=прерывания от периферийных модулей запрещены R/W-0
T0IE Разрешение прерывания по переполнению TMR0 1=прерывание разрешено 0=прерывание запрещено R/W-0
INTE Разрешение внешнего прерывания RA2/INT 1=прерывание разрешено 0=прерывание запрещено R/W-0
RAIE Разрешение прерывания по изменению сигнала на входах PORTA (Регистр IOCA также должен быть соответственно настроен) 1=прерывание разрешено 0=прерывание запрещено R/W-0
T0IF Флаг прерывания по переполнению TMR0 1=произошло переполнение TMR0 (сбрасывается програмно) 0=преполнения не было R/W-0
INTF Флаг внешнего прерывания RA2/INT 1= произошло внешнее перерывание RA2/INT (сбрасывается програмно) 0=внешнего прерывания небыло R/W-0
RAIF Флаг прерывания по изменению сигнала на входах PORTA 1=произошло изменение уровня сигнала на одном из входов PORTA (сбрасывается програмно) 0=не было изменения уровня сигнала ни на одном из входов PORTA R/W-0
Примечание: T0IF устанавливается в “1”,когда происходит переполнение TMR0,который не очищается при последующих сбросах,поэтому он должен быть заново инициализирован перед проверкой флага T0IF.

PIE1 (8Ch)

№-бита Вес бита Название бита Описание бита  
EEIE Разрешение прерывания по завершению цикла записи в EEPROM память данных 1=прерывание разрешено 0=прерывание запрещено R/W-0
ADIE Разрешение прерывания по завершению преобразования АЦП (только в 16F676) 1=прерывание разрешено 0=прерывание запрещено R/W-0
- Не используется: читается как “0” -
- Не используется: читается как “0” -
CMIE Разрешение прерывания от модуля компаратора 1=прерывание разрешено 0=прерывание запрещено R/W-0
- Не используется: читается как “0” -
- Не используется: читается как “0” -
TMR1IE Разрешение прерывания по переполнению TMR1 1=прерывание разрешено 0=прерывание запрещено R/W-0
Примечание: Чтобы разрешить перефирийные прерывания,необходимо установить в “1” бит PEIE регистра INTCON.

PIR1 (0Ch)

№-бита Вес бита Название бита Описание бита  
EEIF Флаг прерывания по завершению цикла записи в EEPROM память данных 1= запись в EEPROM завершена (сбрасывается програмно) 0= запись в EEPROM не завершена или не была начата R/W-0
ADIF Флаг прерывания по завершению преобразования АЦП (только в 16F676) 1= преобразования АЦП завершено (сбрасывается програмно) 0= преобразования АЦП не завершено R/W-0
- Не используется: читается как “0” -
- Не используется: читается как “0” -
CMIF Флаг прерывания от модуля компаратора 1=изменился уровень сигнала на входе компаратора(сбрасывается програмно) 0= уровень сигнала на входе компаратора не менялся R/W-0
- Не используется: читается как “0” -
- Не используется: читается как “0” -
TMR1IF Флаг прерывания по переполнению TMR1 1=произошло переполнение (сбрасывается програмно) 0=преполнения не было R/W-0
Примечание: Флаги прерываний устанавливаются при возникновении условий прерываний вне зависимости от соответствующих битов разрешения и бита общего разрешения прерываний GIE регистра INTCON. Програмное обеспечение пользователя должно сбрасывать соответствующие флаги при обработке переферийных прерываний.

PCON (8Eh)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
- Не используется: читается как “0” -
- Не используется: читается как “0” -
- Не используется: читается как “0” -
- Не используется: читается как “0” -
-POR Флаг сброса по включению питания,по сигналу на выводе MCLR или по переполнению сторожевого таймера WDT (программно должен быть установлен в “1”,для обнаружения сброса) 1=сброса не было 0= сброс был R/W-0
-BOD Флаг сброса по снижению напряжения питания (программно должен быть установлен в “1”,для обнаружения сброса) 1=сброса не было 0= сброс был R/W-x

OSCCAL (90h)

№-бита Вес бита Название бита Описание бита  
CAL5 CAL5-CAL0 шести-разрядная константа коррекции частоты внутреннего генератора 4Мгц 111 111=максимальная частота 100 000=средняя частота 000 000=минимальная частота R/W-0
CAL4
CAL3
CAL2
CAL1
CAL0
- Не используется: читается как “0” -
- Не используется: читается как “0” -

PORTA (05h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
RA5 Входы или выходы (в зависимости от настройки регистра TRISA) Соответствуюющие названию бита выводы микроконтроллера R/W-x
RA4
RA3
RA2
RA1
RA0

TRISA (85h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
TRISA5 Вывод RA5: 1=работает как вход, 0=работает как выход R/W-x
TRISA4 Вывод RA4: 1=работает как вход, 0=работает как выход
TRISA3 Вывод RA3: Работает только как вход и всегда читается как “1” R-1
TRISA2 Вывод RA2: 1=работает как вход, 0=работает как выход R/W-x
TRISA1 Вывод RA1: 1=работает как вход, 0=работает как выход
TRISA0 Вывод RA0: 1=работает как вход, 0=работает как выход

WPUA (95h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
WPUA5 Подключение подтягивающего резистора,при работе на вход: 1-вкл.,0-выкл. R/W-1
WPUA4 Подключение подтягивающего резистора,при работе на вход: 1-вкл.,0-выкл.
- Не используется: читается как “0” -
WPUA2 Подключение подтягивающего резистора,при работе на вход: 1-вкл.,0-выкл. R/W-1
WPUA1 Подключение подтягивающего резистора,при работе на вход: 1-вкл.,0-выкл.
WPUA0 Подключение подтягивающего резистора,при работе на вход: 1-вкл.,0-выкл.
Примечание: Подтягигивающий резистор автоматически отключается при настройке вывода на выход. Подтягивающие резисторы на всех входах отключаются при сбросе по включению питания,а так же управляются битом –RAPU регистра OPTION_REG.

IOCA (96h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
IOCA5 Разрешение прерывания на входе RA5: 1=разрешено, 0=запрещено R/W-0
IOCA4 Разрешение прерывания на входе RA4: 1=разрешено, 0=запрещено
IOCA3 Разрешение прерывания на входе RA3: 1=разрешено, 0=запрещено
IOCA2 Разрешение прерывания на входе RA2: 1=разрешено, 0=запрещено
IOCA1 Разрешение прерывания на входе RA1: 1=разрешено, 0=запрещено
IOCA0 Разрешение прерывания на входе RA0: 1=разрешено, 0=запрещено
Примечание: Для индивидуального разрешения прерываний по изменению уровня сигнала на входах RA5-RA0, должны быть глобально разрешены прерывания,битом GIE регистра INTCON и разрешены прерывания по изменению уровня сигнала на входах,битом RAIE регистра INTCON.

PORTC (07h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
RC5 Входы или выходы (в зависимости от настройки регистра TRISC) Соответствуюющие названию бита выводы микроконтроллера R/W-x
RC4
RC3
RC2
RC1
RC0

TRISC (87h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
- Не используется: читается как “0” -
TRISC5 Вывод RC5: 1=работает как вход, 0=работает как выход R/W-1
TRISC4 Вывод RC4: 1=работает как вход, 0=работает как выход
TRISC3 Вывод RC3: 1=работает как вход, 0=работает как выход
TRISC2 Вывод RC2: 1=работает как вход, 0=работает как выход
TRISC1 Вывод RC1: 1=работает как вход, 0=работает как выход
TRISC0 Вывод RC0: 1=работает как вход, 0=работает как выход

T1C0N (10h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
TMR1GE Разрешение выключения TMR1 по сигналу с входа -T1G При бите TMR1ON=1: значение этого бита игнорируется. При бите TMR1ON=0: 1=таймер TMR1 включен,если на входе -T1G низкий логический уровень. 0=таймер TMR1 включен R/W-1
T1CKPS1 Выбор коэфициента деления предделителя TMR1 11=1:8 10=1:4 01=1:2 00=1:1
T1CKPS0
T1OSCEN Включение тактового генератора TMR1 Режим тактового генератора INTOSC без CLKOUT: 1=тактовый LP генератор TMR1 включен. 0= LP генератор выключен. Другие режимы тактового генератора микроконтроллера: значение этого бита игнорируется.
-T1SYNC Синхонизация внешнего тактового сигнала. При бите TMR1CS=1: 1=не синхронизировать внешний тактовый сигнал. 0=не синхронизировать. При бите TMR1CS=0: значение этого бита игнорируется. TMR1 использует внутренний тактовый сигнал.
TMR1CS Выбор источника тактового сигнала 1=внешний источник с вывода T1OSO/T1CKI (активным является передний фронт сигнала) 0=внутренний источник (Fosc/4)
TMR1ON Включение модуля TMR1 1= TMR1 включен 0= TMR1 выключен

CMCON (19h)

№-бита Вес бита Название бита Описание бита  
- Не используется: читается как “0” -
COUT Выход компаратора Если CINV=0: 1=VIN+ > VIN- 0=VIN+ < VIN- Если CINV=1: 0=VIN+ > VIN- 1=VIN+ < VIN- R-0
- Не используется: читается как “0” -
CINV Режим выхода компаратора 1=инверсный выход 0=не инверсный выход R/W-0
CIS Подключение входа компаратора Когда CM2:CM0=101 или CM2:CM0=110 1= VIN- подключен к CIN+ 0= VIN- подключен к CIN-
CM2 Режим работы копаратора: Сброс компаратора (после сброса POR) CM2:CM0=000 Компаратор выключен CM2:CM0=111 Компаратор без внешнего выхода CM2:CM0=010 Компаратор с внутренним ИОН без внешнего выхода CM2:CM0=100 Компаратор с внутренним ИОН и внешним выходом CM2:CM0=011 Компаратор с внутренним ИОН ,внешним выходом и мултиплексируемым входом CM2:CM0=101 Компаратор с внешним выходом CM2:CM0=001 Компаратор с внутренним ИОН и мултиплексируемым входом CM2:CM0=110
CM1
CM0
Примечание: Для использования компаратора необходимо настроить соответствующие выводы как аналоговые

Блок-схема модуля компаратора

Наши рекомендации