Bonjour a tous,

j'ai un problème avec mon pic au niveau de la programmation, je n arrive pas à programmer l'oscillateur interne du pic 16F628a.

je vous explique , je fais un thermostat pour l'ecole , capteur ds18s20,le pcb est bon , tout est bon sauf le code,j'utilise tous les port du pic en I/O donc je dois utiliser l'oscillateur interne du pic, je fais le code comme je le pense il fonctionne sur Proteus ( un logiciel de simulation ) mais ça ne fonctionne pas sur mon pic Alors je me dis que c est surement à cause de l'oscillateur mais comment faire ? j ai déjà regarde ce forum pour tester différents codes mais quand je compile ça ne fonctionne pas.


voici le schéma du thermostat :
************************

http://www.sonelec-musique.com/elect...ostat_001.html

le code:
******


int temp;
unsigned int temp2;
unsigned int hyst;
int consigne1;
int consigne2;
unsigned char consigne;



#define led_R RA1_bit
#define led_V RA2_bit
#define led_B RA3_bit
#define Rch RA4_bit

void main()
{
TRISA = 0b11100001;
TRISB = 255;
PORTA = 0;
PORTB = 255;

while(1)
{
Ow_Reset(&PORTA,0);
Ow_Write(&PORTA,0,0xCC);
Ow_Write(&PORTA,0,0x44);
Delay_us(120);

Ow_Reset(&PORTA,0);
Ow_Write(&PORTA,0,0xCC);
Ow_Write(&PORTA,0,0xBE);

temp = Ow_Read(&PORTA, 0) ;
temp = (Ow_Read(&PORTA, 0) << 8) + temp;
temp2 = ((int) temp) / 2;
hyst = (PORTA & 0b11000000) >> 6;
consigne = PORTB;
consigne1 = consigne+ hyst;
consigne2 = consigne -hyst;
if(temp2>= consigne1) // Trop chaud
{
led_B = 1;
led_V = 1;
led_R = 0;
Rch = 1;
}
else if(temp2<= consigne2) // Trop froid
{
led_B = 0;
led_V = 1;
led_R = 1;
Rch = 0;
}
else // Bonne temperature
{
led_B = 1;
led_V = 0;
led_R = 1;
Rch = 0;
}

Delay_ms(100);

}
}

d avance, merci