Motion Sensor katt leksak (oändligt roligt... bokstavligen) (4 / 7 steg)
Steg 4: Steg 6 mer information om koden
Mikrokontroller pseudo kod
Fördröjning på 42 sekunder i början (7, 6 andra förseningar)
Hamn 4 (motor) är produktionen
Port 3 är indata (rörelsesensor)
Om rörelsesensorn = 5 V, snurra motorn för 12 sekunder
Sedan stänga av
C koden
#include < avr\io.h > / / include indata- och instruktioner
#define F_CPU 1000000UL / / processorhastighet är 1 MHz
#include < util\delay.h > / / include dröjsmål funktion
int main(void)
{
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
DDRB | = (1 << 4); definiera PORTB 4 som en utgång, resten ingångar
While(1)
{
om (PINB & 0x08) / / om rörelse registreras på PORTB3
{
PORTB | = (1 << 4); vända motor på
_delay_ms(6000); fördröjning på 6 sekunder
_delay_ms(6000); fördröjning på 6 sekunder
PORTB = 0X00; vända motor off
}
}
}