====== Espera ====== Esta parte da biblioteca contem funções que geram esperas (ou atrasos) no programa recorrendo a algoritmos de software ou tenporizadores de hardware. As esperas não bloqueiam as interrupções, e assim as interrupções interferem com as esperas implementadas em software. As funções de espera não são pré-compiladas para serem compatíveis com diferentes frequências de relógio. ===== Funções ===== * **//void sw_delay_ms(unsigned short count)//** \\ Espera de software em milisegundos. A função espera alguma optimização do lado do compilador. Parâmetros: * //count// - Tempo de espera em milisegundos. De 0 a 65535 ms. * **//void sw_delay_us(unsigned short count)//** \\ Espera de software em microsegundos. A função espera alguma optimização do lado do compilador. Parâmetros: * //count// - Tempo de espera em microsegundos. De 0 a 65535 μs. * **//void hw_delay_ms(unsigned short count)//** \\ Espera baseada num timer de hardware em milisegundos. As funções usam o timer 0 de 8 bits do ATmega128. Dependendo da frequência do relógio, um ero de vários milisegundos pode ocorrer. Parâmetros: * //count// - Tempo de espera em milisegundos. De 0 a 65535 ms. ===== Exemplos ===== Demonstração dos dois tipos de espera. #include int main(void) { // Software base delay of 100 ms. sw_delay_ms(100); // Hardware timer based delay of 100 ms. hw_delay_ms(100); }