Sida 1 av 1

12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 14:19:04
av newbadboy
Har skrivit en liten enkel snutt.

Ska helt enkelt känna GP0 och GP1 samt GP2. Lite logik på detta så skall kretsen utföra några små enkla saker.
MEN, GP0-1 läses inte alls. Kvittar om jag drar det högt eller lågt. Har även provat sätta dessa pinnar som utgång och toggla dem, men de är de också bara låga.

Just nu uppträder programmet som om de är låga hela tiden. MAO drar jag GP2 hög så aktiveras utgångarna GP5 och GP6.

Jag har aldrig innan använt ISCP pinnarna till ngt annat än just till att flasha. Är det ngt som jag missat? R10/R2 samt C8/C9 är bortagna för att kunna flasha. Därför togglar jag dessa ingångar med en extern spänningskälla på 5V

Kod: Markera allt

#define LEDOUT GPIO.F4
#define TRIGIN GPIO.F2
#define TRIGG1 GPIO.F0
#define TRIGG2 GPIO.F1
#define OUT GPIO.F5

int k=0;
int n=0;

void initMain(){
    TRISIO=0b00000111;
    ANSEL=0b00000000;
    OUT=1;
    LEDOUT=1;
    delay_ms(2000);
    }

void Alarm(){
    if((TRIGIN==1)&&(TRIGG1==0)&&(TRIGG2==0)){
       delay_ms(300);
       while(TRIGIN==1){
             LEDOUT=1;
             OUT=0;
             n++;
             }
       }
}

void BlinkMode(){
    LEDOUT=1;
    Delay_ms(50);
    if(n>=1){
       LEDOUT=0;
       Delay_ms(50);
       LEDOUT=1;
       Delay_ms(50);
       }
}


void Main() {

initMain();


while(1){
     k++;
     if(k==1000){
        BlinkMode();
        }
     
     if((TRIGIN==1)&&(TRIGG1==0)&&(TRIGG2==0)&&(n<1)){
        Alarm();
        }
        
     if((TRIGG1==1)||(TRIGG2==1)){
        n=0;
        }

     LEDOUT=0;
     OUT=1;
     }
}

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 14:45:04
av Icecap
Har du satt CONFIG till att INTE ha med debug?

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 14:55:29
av newbadboy
Hmm.

Jag har klickat i release build och inte debug build. Är detta vad du efterfrågar?

Det är fö MikroC jag använder

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 15:05:05
av H.O
GP0 och GP1 är ingångarna till komparatorn, på 12F675 är den "till" vid POR.
Prova sätta CMCON till $07 för att stänga av den.

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 15:08:17
av Icecap
newbadboy: Nej! Det är CONFIG-inställningarna jag frågade efter - men H.O's inlägg är synnerligt vettigt också! Nog mer viktigt faktisk.

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 20:56:52
av newbadboy
H.O det ser ut som jag glömt stänga av komparatorn. Programmet lirar inte helt hudnra än men det reagerar på pinnarna iaf :)

Icecap, bara för skojs skull så jag lär mig ngt. Vilka config pratar du om då?

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 21:30:19
av sodjan
> Vilka config pratar du om då?

Strunta vad Icecap sa, det finns ingen debug mode i denna processor...

Re: 12F675. Använda ISCP pinnar som GPIO

Postat: 2 oktober 2015, 21:31:39
av newbadboy
Tihi