Bonjour,
Je me permets de poster sur le forum après avoir fait le tour sur le net sans succès de trouver de solution à mon petit problème.
Je me me suis mis récemment à la programmation PIC et notamment PIC12F683.
le souci que je rencontre est que je n'arrive pas à capter l'état de la broche en entrée (GP0).
En effet, le test consiste en le clignotement d'une Led (broche GP4 en sortie) une fois que le bouton poussoir (GP0) est appuyé, avec un pull down.
Sans la condition la Led clignotte bien, mais dès que je mets la condition pour vérifier si l'entrée (GP0) est haute, il y a plus rien qui se passe (voir le code ci-dessous).
#define _XTAL_FREQ 4000000
#pragma config FOSC = INTOSCIO // Oscillator Selection bits (INTOSCIO oscillator: I/O function on RA4/OSC2/CLKOUT pin, I/O function on RA5/OSC1/CLKIN)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
#pragma config MCLRE = OFF // MCLR Pin Function Select bit (MCLR pin function is digital input, MCLR internally tied to VDD)
#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled)
#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled)
#pragma config BOREN = OFF // Brown Out Detect (BOR disabled)
#pragma config IESO = OFF // Internal External Switchover bit (Internal External Switchover mode is disabled)
#pragma config FCMEN = OFF // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is disabled)
#include <xc.h>
void main(void)
{
TRISIO = 0b11101111;
while(1)
{
if(GP0 == 1){
GP4 = 0b00000001;
__delay_ms(150);
GP4 = 0b00000000;
__delay_ms(150);
}
}
}
Merci pour votre aide.
Cordialement,
Az.