搜索

一直没想通 :单片机的定时计数 是否准确的问题 仰天长啸: 请高

gecimao 发表于 2019-06-29 21:50 | 查看: | 回复:

  一直没想通 :单片机的定时计数 是否准确的问题 仰天长啸: 请高手分析 请高手分析啊

  一直没想通 :单片机的定时计数 是否准确的问题 仰天长啸: 请高手分析 请高手分析啊

  先看哈一般单片机讲定时/计数的时候常举的一种例子:例子:生成周期500微秒的等宽正方波。解:分析机器晶振6MHZ。使用T1以方式0工作,由P1.0输出,机器周期2微秒,定时时间250微秒。每...

  解:分析 机器晶振6MHZ。使用T1以方式0工作,由P1.0输出 ,机器周期2微秒,定时时间250微秒。每250微秒翻转在P1.0端交替输出高低电平。

  第一:当SETB TR1执行后,开始定时 到LOOP1时,表示250微秒已经到了,那8, 9,10,11句运行也要至少4个机器周期(本题花8微秒),那这样算岂不是在P1.0口输出要晚8微妙,以后每次输出的将都有问题,也不会出现整体向后推迟,而是输出的电平不是以500微秒为周期。这问题很关键,特想知道

  第二:SETB TR1后,定时是一直都在加1,当溢出后等CPU处理的线句的样子,那在这个时间段(有好几个微秒)它处于什么状态?

  第三:请教 CPL P1.0 输出的时候,此句用时2微秒,如题中,是否要让它在248微秒的时候运行。

  第四:如果 第一个问题存在,那当要输出6微秒的正方波 那咋整呀?程序从发现溢出,到执行到输出到P1.0,时间都错过了 ,那岂不是输出都是错误的。

  这四个问题有联系,也各有不同,着重点不同,最好不要笼统解释 ,非常感谢了!!

  走过路过的 各位老师,高手,朋友们请你们一定帮忙回答下。特别是老师 你们教学生的时候是如何解释这些东西的啊!!!帮忙解释哈 感谢了!

  现在太可怜了,在学校的时候有老师没问题,现在在社会上光问题没老师啊!!!

  (额 偶现在在自学51,可能有些问题问的很SB,请各位末BS我呀!!!)展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部答1:确实存在这个问题,要精确的话,延时循环LOOP中就要减去后面指令执行花费的时间.如您叙述的线:它是指什么?CPU还是引脚还是定时器??CPU就是在执行6-10的语句.51单片机是顺序执行的,在某一时刻它只会执行一个指令.此时,引脚P1.0保持原状态(在执行CPL P1.0时改变)定时器则停止计数,处于等待状态.

  答3:这里不可能那么精确了.248的时候执行也许会准确点.所谓系统误差吧.如果硬要抠这点时间,那只有建议更换更精确的CPU了.

  答4:是的.您所想要的6us的周期,是6MHz单片机办不到的.单片机不是倍频器哦.

  综述:以上解答也是本人凭空所想,可能是开黄腔的.学习单片机要以实践为准,最好搭个电路试一试,自己印象也很深刻.另外,51单片机也叫微控制器,不是拿来产生波形的,它的定时器也不会很精确的,一般应用在ms级,us级都是硬着头皮上了.况且您还只给了它6M的晶振....(换12M或24M吧)

  建议更换单片机,AVR可以.CPLD/FPGA就可以有更高的频率,也可以更精确,那东西就是把晶振倍频了在分频,精确就不说了,还可以加锁相环,跑不脱的.已经超出单片机定时器的讨论范围咯....

  展开全部这些问题,都可以在 KEIL 软件里面进行仿真调试。在屏幕上清楚的看到,到底定时了多少时间,可以当场修改、解决。

  展开全部你要想精确输出方波的线的单片机用AVR的吧,直接将定时匹配输出与OCRx引脚连接,

本文链接:http://kingstonflowers.net/dingshifenxi/733.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部