Prepípal som to ked som spojíl piny 1a2 tak to pípalo


Na videu môžeš vidieť čo to ukazuje...
Vlastne vždy ked zmením polohu snimača teda výšku alebo ich pritlačím k tomu ukáže niečo iné

No kukni sa na to

http://youtu.be/Al9ZB0hsp-A
Kód: Vybrat vše
while(1)
{
// zakladni nekonecna smycka
if (cara_je(VLEVO)) led_on(LED_7|LED_8);
if (cara_je(UPROSTRED)) led_on(LED_7);
if (cara_je(VPRAVO)) led_on(LED_8);
}
}
Kód: Vybrat vše
if (cara_je(UPROSTRED)) led_on(LED_7|LED_8);
else if (cara_je(VLEVO)) { led_on(LED_7); led_off(LED_8); }
else if (cara_je(VPRAVO)) { led_off(LED_7); led_on(LED_8); }
Kód: Vybrat vše
u8 cara_je(u8 snimac) {
adc_channel_set(snimac);
adc_read(500);
return 0;
}
Kód: Vybrat vše
u8 cara_je(u8 snimac) {
adc_channel_set(snimac); // vyber ADC kanál pro "snimac" (viz náš testovací program)
u16 adc_res = adc_read(); // načti do pomocné proměnné aktuální hodnotu z ADC (viz náš testovací program)
if ([něco]>500) return 1; // pokud je změřená hodnota > 500 nastav návratovou hodnotu funkce na 1 (viz konec funkce "switch_read")
[co napsat sem abychom měli návratovou hodnotu 0?] // jinak nastav návratovou hodnotu funkce na 0 (viz konec funkce "switch_read")
}
Kód: Vybrat vše
u8 cara_je(u8 snimac) {
adc_channel_set(snimac);
u16 adc_res = adc_read();
if (switch_read(adc_res)>500) return 1;
if (switch_read(adc_res)>500) return 0;
}
Kód: Vybrat vše
u8 cara_je(u8 snimac) { // funkce vraci hodnotu 0 pokud cara neni pod snimacem "snimac" a 1 pokud cara je pod snimacem
adc_channel_set(snimac); // vyber AD prevodnik
u16 adc_res = adc_read(); // cti hodnotu z ADC
if (adc_res>500) return 1; // pokud je slaby odraz, je to cara, vracime 1
return 0; // jsme nad bilou, vracime 0
}