关于keil延时函数的问题,和硬件不一致
现在要编写一个硬件的程序,对时序要求很高,因此需要较为精确的延时函数,由于要用很多,所以不用定时器,用延时函数。不过在用keil仿真我的延时函数的时候我发现一个问题,就是...
现在要编写一个硬件的程序,对时序要求很高,因此需要较为精确的延时函数,由于要用很多,所以不用定时器,用延时函数。不过在用keil仿真我的延时函数的时候我发现一个问题,就是用keil软件仿真出来的时间和用硬件仿真出来的时间不一致,同样都是12MHZ,但是用硬件仿真出来的时间是用软件仿真出来时间的两倍。不要跟我说keil仿真时间不准确,应该不是这个原因,呵呵。也就是说是2倍关系,由此我又拿来12MHZ下C的标准延时1us的函数_nop_()来试,软件是0.5us,而硬件才是1us.这是为什么啊???回答满意,另有追分!
谢谢一楼的回答,你说的很正确,但这也正是我当时提这个问题的原因,就是因为keil仿真出来的是0.5us,而硬件仿真出来的是1us。虽然你没有解答我的问题,但还是感谢你。我后来同多询问客服找到问题的答案了,就是我买的这套硬件仿真器,针对我用的p87c591的型号,他又两种时钟模式可选,这个可以在keil中进行设置。他们出场的仿真器默认的是12时钟模式,还有一种是6时钟模式。当设置成6模式时,就可以完全模拟该片子的真是情况了。由此keil和硬件的仿真结果也就一致了. 展开
谢谢一楼的回答,你说的很正确,但这也正是我当时提这个问题的原因,就是因为keil仿真出来的是0.5us,而硬件仿真出来的是1us。虽然你没有解答我的问题,但还是感谢你。我后来同多询问客服找到问题的答案了,就是我买的这套硬件仿真器,针对我用的p87c591的型号,他又两种时钟模式可选,这个可以在keil中进行设置。他们出场的仿真器默认的是12时钟模式,还有一种是6时钟模式。当设置成6模式时,就可以完全模拟该片子的真是情况了。由此keil和硬件的仿真结果也就一致了. 展开
2个回答
北京康思
2018-09-20 广告
2018-09-20 广告
1、基本功能。市面上的电子负载均有基本的四项功能:恒流、恒压、恒阻和恒功率(安捷伦没有恒功率)。在功能基本相同,精确度相差不大的情况下,怎么判断是否符合要求呢?CHROMA和博计的电子负载只有一套工作电路,就是恒流功能。其他功能是根据欧姆定...
点击进入详情页
本回答由北京康思提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询