Table of Contents

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 <homelab/delay.h>
 
int main(void)
{	
	// Tarkvaraline viide 100 ms
	sw_delay_ms(100);
 
	// Riistvaraline viide 100 ms
	hw_delay_ms(100);
}
et/software/homelab/library/delay.txt · Last modified: 2020/07/20 09:00 by 127.0.0.1
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0