PIC мк. Эксперимент №7. Использование компаратора.

Задача: Использование модуля компаратора

Исходный материал: PIC16f628a, proteus

Для начала заглянем в даташит и обратим внимание на регистр CMCON.

C2OUT: Выходной бит компаратора 2
Если C2INV = 0:
1 = C2 VIN+ > C2 VIN-
0 = C2 VIN+ < C2 VINWhen
C2INV = 1:
1 = C2 VIN+ < C2 VIN-
0 = C2 VIN+ > C2 VINbit
C1OUT: Выходной бит компаратора 1
Если C1INV = 0:
1 = C1 VIN+ > C1 VIN-
0 = C1 VIN+ < C1 VINWhen
C1INV = 1:
1 = C1 VIN+ < C1 VIN-
0 = C1 VIN+ > C1 VINbit
C2INV: Инверсия выходного бита компаратора 2
1 = C2 инверсия
0 = C2 нет инверсии
C1INV: Инверсия выходного бита компаратора 1
1 = C1 инверсия
0 = C1 нет инверсии
CIS: Выбор входного пина компаратора в некоторых режимах
Если CM<2:0>: = 001
Tогда:
1 = C1 VIN- подключен к RA3
0 = C1 VIN- подключен к RA0
Если CM<2:0> = 010
Тогда:
1 = C1 VIN- подключен к RA3
C2 VIN- подключен к RA2
0 = C1 VIN- подключен к RA0
C2 VIN- подключен к RA1
CM<2:0>: Выбор режимов компаратора

Режимы на рисунке ниже:

Для этого эксперимента нам достаточно одного компаратора, поэтому выставим значение CM = 101

Полный код проекта:


#include <htc.h>
#define _XTAL_FREQ 4000000
#define LED RB0
__CONFIG(WDTDIS & UNPROTECT & MCLREN & LVPDIS & HS);

void main(void) {
CMCON = 0b10000101;
TRISA = 0xFF;
TRISB = 0x00;
PORTB = 0;

for (;;) { LED = C2OUT;}

}

На RA1 подано опорное напряжение 2 вольта, а на RA2 синусоида с размахом 5 вольт. Результат работы:

Исходники здесь

PIC мк. Эксперимент №7. Использование компаратора.: 7 комментариев

  1. подскажите пожалуйста как подключить к такому компаратору два аккумулятора и сравить их напряжение. На входы RA0 и RA1 к примеру.

    Ответить

    sarge Ответил:

    Так вы сами и написали ответ в вопросе – подключайтесь на указанные входы и настраивайте себе хоть прерывания, хоть напряжение по выходу контролируйте.
    Главное, чтобы напряжение на входах были больше минимально допустимого (см. даташит).

    Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.