User Manual

88
Obsluha události se může samozřejmě vedle textového výstupu dále rozšiřovat tj. domníváme
se, že robot zastaví a couvá/začí. To se ak neprovádí ve vlastní obsluze události, ale někde
jinde v programu. V obsluze události mož nastavíte proměnno příkazu, která se kontroluje
v hlavním programu pro identifikaci možného pohybu. Vždy se snažte, aby byla obsluha
události co nejkratší.
V obsluze události můžete použít echny funkce z knihovny RP6Library, ale u funkcí očení
a pohyb musíte být opatrní probereme to v dalších kapitolách. V obsluze události NIKDY
nepoužívejte režim blokování těchto funkcí (opakované stisknu razníků například nebude
příliš prac).
Základní mlenka obsluhy událos se také používá v řadě dalších funkcí. Například ACS
které má velmi podobné používání voláním obsluhy události při kaž změně stavu snímač
předmětů.
Obsluhu události používáme také při příjmu kódů RC5 z dálkového ovladače. Libovolný příjem
signálu kódovaného systémem RC5 inicializuje volání přísluš funkce obsluhy události. Pro
tuto činnost není třeba používat obsluhu události samozřejmě můžete pro kontrolu změn
jednoduše použít podmíněný příkaz, ale obsluha události zjednoduší návrh programu.
Opakování je matka moudrosti.
Doporučení: CD nabízí řadu podrobných ukázkových programů na toto téma.
4.6.5. Čtení ADC hodnot (baterie, proud motorů a snímače osvětlení)
Jak bylo popsáno v kapitole 2, je k ADC (analogově číslico převodník) připojeno několik
snímačů. Knihovna RP6Library samozřejmě poskytuje funkci pro čtení naměřených ADC
hodnot:
uint16_t readADC(uint8_t channel)
Tato funkce vrací 10-bitovou hodnotu (0...1023) a pro hodnoty snímačů vyžaduje 16-bitovou
proměnnou. Je možčíst sledující kanály:
ADC_BAT --> Snímač napětí baterie
ADC_MCURRENT_R --> Snímač proudu pravého motoru
ADC_MCURRENT_L --> Snímač proudu levého motoru
ADC_LS_L --> Levý snímač osvětlení
ADC_LS_R --> Pravý snímač osvětlení
ADC_ADC0 --> Volný ADC kanál pro individuální snímače
ADC_ADC1 --> Volný ADC kanál pro individuální snímače
Doporučení: dva konektory volných ADC kanálů nejsou obsazeny. Můžete
sem zapájet konektory se standardní roztečí 2,54 mm a mož přidat dva
kondenzátory 100 nF a pokud snímač (např. IR snímač vzlenosti SHARP)
potřebuje vyšší napájecí proud, tak ještě vel elektrolytický kondenzátor
470µF.
To vyžaduje určité zkušenosti s jením! Pokud zkušenosti nemáte, může být
lepší řešení v použití rozšiřujícího modulu.