Cortex-A8怎么写延时函数
1、如果延时精度要求高,建议用定时器。
2、可以在某个管脚定时拉高拉低,然后用示波器测量。
不带操作系统的话,可以使用如下代码,但是要求你知道,处理器的机器周期
,一般看看 data sheet 和 系统时钟寄存器之后,就可以知道系统时钟了,这个
是基本要求。
/*************************************/
/*with out optimize cycle */
/*next : nop 1 */
/* ... ... */
/* mov r2,r1 1 */
/* subs r1,r1,#1 1 */
/* cmp r2,#0x00 1 */
/* bne next 3 */
/*************************************/
while (delay_count--) {
__nop();
__nop();
__nop();
__nop();
};
处理器的频率是1GHZ的,是不带系统的,这个_nop()是自己另外用汇编写的?
你用ARM给的任何编译器,它都支持这个东西。
定时器我用过,但是没有成功,不知道问题出在哪。示波器用来测量倒是挺不错的,只可惜现在没有
哦 我试试看 谢谢
你要根据时钟计算插入的NOP数量,明白汇编的话。