Étape 4: Étape 6 plus d’informations sur le code
Microcontrôleur pseudo-code
Retard de 42 secondes au début (7, retarde de 6 secondes)
Port 4 (moteur) est la sortie
Port 3 correspond à l’entrée (détecteur de mouvement)
Si le détecteur de mouvement = 5 V, faire tourner le moteur pendant 12 secondes
Puis éteindre
Le code C
#include < avr\io.h > / / inclure des instructions d’entrée et de sortie
#define F_CPU 1000000UL / / vitesse du processeur est de 1 MHz
#include < util\delay.h > / / include fonction de retard
int main (void)
{
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
DDRB | = (1 << 4) ; define PORTB 4 en tant que sortie, entrées de repos
while(1)
{
Si (PINB & 0 x 08) / / si un mouvement est détecté sur PORTB3
{
PORTB | = (1 << 4) ; tourner le moteur sur
_delay_ms(6000) ; retard de 6 secondes
_delay_ms(6000) ; retard de 6 secondes
PORTB = 0 X 00 ; tourner le moteur éteint
}
}
}