库函数中,可以调用函数 delay_cycles(xxx); 进行简单的延时。但是使用的时候,需要注意下面三点。
1、xxx使用的原型,不能简单的填数字,填这个数字的时候,数字必须是加括号的,比如delay_cycles(160000);是错误的。正确的应该是delay_cycles((160000));
2、delay_cycles(1);的时间是1个机器周期,如果主频是32M的,那么他的延时时间是1/32000000s,如果要延时5ms,那么xxx的值应该是(160000)。
3、要注意下面的函数解析中的典型方差这个概念,下面说的10 cycles不是指这个函数延时10个周期,是指他的方差是10个周期。
* Typical variance from this function is 10 cycles or
* less assuming that the function is located in flash and
* that caching is enabled. Disabling caching may result in
* wait-states when fetching from flash.
|