怎么理解12M晶振下 延时 n个10us的延时函数?怎么看出10us?

2024-12-16 19:52:25
推荐回答(4个)
回答1:

哈哈,c语言的这个延时函数的误差是很大的,我一般不会这样用。
说句实话这个你肉眼是看不去。你用那个编译器软件调试下,你要记得晶振一点好设置好,看看他运行一次这个程序用的时间是不是接近10ns,一般调试时间都是这样调的,你要不会的话加我qq,也可以交个朋友,我的名字就是qq号,加时说明下,谢谢

回答2:

延时前将一个IO口拉低,延时结束后再拉高,用示波器测量该IO管脚,看这个方波的宽度是否为10uS,考虑到IO操作本身也会占用周期,建议找个闲置的IO口做这个测试,然后程序就不要动了,留着这两句话也有利无害。

回答3:

c 语言是不好看出来的,这个只能看出 循环体内6个_nop_()用了6us
关键是 i-- i<0 还有 一个 跳到循环头用了多少us
这个可以看编译出来的汇编代码,数数它的指令时间

回答4:

这个是12M频点晶振的自带延时函数,看是看不出来的