Dette prosjektet tester ut komparatoren på en PIC12F629 mikrokontroller.

Mål

Målet er å sette opp mikrokontrolleren til å sammenligne mellom GP0 og GP1 og sette utgangen høy når GP1 overstiger GP0.

Video

Krets

pic12f629_komparator_test

Målinger

20161012-0001

Blå er CIN+, Rød er CIN- og grønn er utgangen.

Kode

/**
     * GP0 og GP1 satt som inngang.
     * GP2 satt som utgang.
     */
    TRISIObits.TRISIO0 = 1;
    TRISIObits.TRISIO1 = 1;
    TRISIObits.TRISIO2 = 0;
    /**
     * Setter opp komparatoren til å sjekke mellom CIN+ og CIN. Utgangen settes
     * på COUT som er GP2.
     */
    CMCONbits.CM0 = 1;
    CMCONbits.CM1 = 0;
    CMCONbits.CM2 = 0;

Konklusjon

Det var veldig enkelt å sette opp, men simulatoren viste GP0 og GP1 som digitale innganger, ikke analoge noe som gjøre at mye tid ble kastet bort på noe som ikke var feil.

 

Sendt av Kjetil Fjellheim