W
wazzaw
Guest
Salut je suis nouveau sur les microcontrôleurs.
J'ai un projet à faire qui est un capteur de lumière qui est l'épargne durant la journée toute la lumière doit être éteint, et pendant la nuit seulement quand il ya des gens dans la salle, il s'allume.
pour détecter une personne d'entrer et de quitter quelqu'un que j'ai utilisé 2 détecteurs de mouvement (2 cellules avec faisceau laser), mais le problème est dans le programme mikroC
les capteurs 2 sont connectés à la sortie PORTB PORTC.F4 et PORTC.F5, j'utilise PIC16F877A le programme que j'ai écrit est:
int compteur = 0;
void main () (
ADCON1 = 0;
TRISB = 0b00000000;
TRISC = 0b11111111;
PORTB = 0;
while (1) (
if (PORTC.F4 == 0 & & PORTC.F5 == 0)
PORTB = 0;
if (PORTC.F4 == 1) (
delay_ms (10000);
if (PORTC.F5 == 1) (
COUNTER = 1 compteur![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
)
else if (PORTC.F5 == 1) (
delay_ms (10000);
if (PORTC.F4 == 1) (
Compteur = COUNTER-1![Wink ;) ;)](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
)
if (compteur> = 1)
PORTB = 1;
)
)
Merci pour l'aide à l'avance.
J'ai un projet à faire qui est un capteur de lumière qui est l'épargne durant la journée toute la lumière doit être éteint, et pendant la nuit seulement quand il ya des gens dans la salle, il s'allume.
pour détecter une personne d'entrer et de quitter quelqu'un que j'ai utilisé 2 détecteurs de mouvement (2 cellules avec faisceau laser), mais le problème est dans le programme mikroC
les capteurs 2 sont connectés à la sortie PORTB PORTC.F4 et PORTC.F5, j'utilise PIC16F877A le programme que j'ai écrit est:
int compteur = 0;
void main () (
ADCON1 = 0;
TRISB = 0b00000000;
TRISC = 0b11111111;
PORTB = 0;
while (1) (
if (PORTC.F4 == 0 & & PORTC.F5 == 0)
PORTB = 0;
if (PORTC.F4 == 1) (
delay_ms (10000);
if (PORTC.F5 == 1) (
COUNTER = 1 compteur
)
else if (PORTC.F5 == 1) (
delay_ms (10000);
if (PORTC.F4 == 1) (
Compteur = COUNTER-1
)
if (compteur> = 1)
PORTB = 1;
)
)
Merci pour l'aide à l'avance.