====== Viide ====== Tegu on tarkvaraliste ja riistvaraliste viite tekitamise funktsioonide teegi osaga. Viite funktsioone välja kutsudes jääb programm neid ettenähtud ajaks täitma ja muu programmi, välja arvatud katkestuste, täitmine peatub. Viitefunktsioonid pole eelnevalt kompileeritud, sest mikrokontrolleri taktsagedus võib erinevates rakendustes erineda. Need kompileeritakse iga kord uuesti. ===== Funktsioonid ===== * **//void sw_delay_ms(unsigned short count)//** \\ Tarkvaraline viide millisekundites. Funktsiooni kasutamine eeldab kompilaatorilt optimeerimise kasutust. Parameetrid: * //count// - Viite aeg millisekundites. 0 kuni 65535 millisekundit. * **//void sw_delay_us(unsigned short count)//** \\ Tarkvaraline viide mikrosekundites. Funktsiooni kasutamine eeldab kompilaatorilt optimeerimise kasutust. Parameetrid: * //count// - Viite aeg mikrosekundites. 0 kuni 65535 mikrosekundit. * **//void hw_delay_ms(unsigned short count)//** \\ Riistvaraline taimeril põhinev viide millisekundites. Funktsioon kasutab ATmega128 8-bitist taimerit 0. Olenevalt taktsagedusest võib tekkida kuni mõne millisekundi suurune viga. Täpsema viite saaks teha 16-bitiste taimeritega, kuid neid on tavaliselt muuks otstarbeks vaja. Parameetrid: * //count// - Viite aeg millisekundites. 0 kuni 65535 millisekundit. ===== Näide ===== Mõlemat liiki viitefunktsioonide kasutamise näide: #include int main(void) { // Tarkvaraline viide 100 ms sw_delay_ms(100); // Riistvaraline viide 100 ms hw_delay_ms(100); }