本帖最后由 yuyiyekong 于 2013-4-3 09:40 编辑
本人想用
ARM裸机编程18b20,所以需要很精准的时序来实现对温度传感器的控制,请问各位高手怎样能精准的延时,本人使用的
开发板是mini2440,12M晶振,设置FCLK频率为405MHZ,HCLK为1/2FCLK,PCLK为1/8FCLK,单算使用GPIO的引脚去控制,GPIO的时钟是PCLK=50.625MHZ,所以就是arm的机器周期是T=1/50.625M,但是利用一个for循环来延时由于不知道for循环++1的指令执行需要多少个机器周期,需要考虑5级流水线吗?所以不能对18b20写读指令,我在网上查看很多是使用驱动编程来控制,由于本人是驱动编程的新手,所以不知道驱动编程控制18b20的原理是什么,求高手帮助。由于
单片机的机器对18b20有教程,所以时序控制还是相对简单,但是在arm就不会精准延时控制18b20.,arm编程中是否可用__asm{nop};来延时,nop是延时一个周期吧,这里相当于一个T=1/50.625M吧?
for循环开始前起动,因为循环结束后关闭,通过定时器跑了多少个数不就知道for循环的执行时间了……
这个建议不错,可以尝试一下,谢谢你,如果还有其他好的办法说错来
一周热门 更多>