关于C8051F340

[复制链接]
1445|13
 楼主| lordma 发表于 2016-4-18 14:32 | 显示全部楼层 |阅读模式
想做一个软件精确延时1US 10MS,请教一下怎么做,用的是内部最高频振荡12兆 ,内核是CIP-51
void Delay10us(void)
          {
           unsigned char i;
       
           for(i=120;i>1;i--);
          }
这样是不是延时了10us
123654789 发表于 2016-4-18 14:42 | 显示全部楼层
这些问题   你自己拿个示波器 测量一下。
 楼主| lordma 发表于 2016-4-18 14:44 | 显示全部楼层
123654789 发表于 2016-4-18 14:42
这些问题   你自己拿个示波器 测量一下。

暂时没这个条件,所以只能车来问问了
123654789 发表于 2016-4-18 15:03 | 显示全部楼层
有多少个技术人员去深入研究他的指令周期啊??

所以,这些问题   你自己拿个示波器 测量一下。
123654789 发表于 2016-4-18 15:14 | 显示全部楼层
有多少个技术人员研究单片机,研究得那么细致,去深入研究他的指令周期啊??
即使别人把答案告诉你,也不一定准确。
所以,这些问题   你自己拿个示波器 测量一下。
ningling_21 发表于 2016-4-18 15:42 | 显示全部楼层
lordma 发表于 2016-4-18 14:44
暂时没这个条件,所以只能车来问问了

那干脆研究一下汇编指令的周期和CIP51的指令时间,算一算就知道了
yjj909334873 发表于 2016-4-18 20:24 | 显示全部楼层
精确延时不是用定时器更好吗
menfiss 发表于 2016-4-18 22:36 来自手机 | 显示全部楼层
到底是延时10ms还是10us,这是个问题。
yhn1973 发表于 2016-4-19 09:42 | 显示全部楼层
想精确,只能看编译后的汇编语言了
yhn1973 发表于 2016-4-19 09:50 | 显示全部楼层
用for(i=120;i!=0;i--),循环一次要5个时钟
大秦正声 发表于 2016-4-19 10:50 | 显示全部楼层
用nop指令!
robter 发表于 2016-4-19 13:56 | 显示全部楼层
最好还是编一段测试程序,用示波器测量时间
 楼主| lordma 发表于 2016-4-19 15:27 | 显示全部楼层
yjj909334873 发表于 2016-4-18 20:24
精确延时不是用定时器更好吗

是这样,想简单点,要求也不是很高
 楼主| lordma 发表于 2016-4-19 15:29 | 显示全部楼层
menfiss 发表于 2016-4-18 22:36
到底是延时10ms还是10us,这是个问题。

这个我算不出
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

29

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部