单片机如何发生精确的38KHZ方波,com021@163.com
3个回答
展开全部
嘿嘿 还是俺来为你解答吧
1 造成误差较大的原因是计时精度不够。如果你使用51单片机 采用12MHZ的晶振 采用方式2定时 定时时间=(265-X)微秒 你 频率为38K 则需要定时的时间=周期/2=26.315/2=13.1575微秒 (取整 为13微秒) 结果造成定时误差(一个周期 有0.1575×2的误差)
即可以看出 采用12MHZ的晶振 采用方式2定时 计时精度为1微秒。
2 提高计时精度的方法 即需要提高晶振频率 如改为24MHZ 、则定时时间=(265-X)/2 微秒
计时精度为0.5微秒
如改为48MHZ 、 则定时时间=(265-X)/4 微秒 计时精度为0.25微秒
如改为96MHZ 、 则定时时间=(265-X)/8 微秒 计时精度为0.125微秒
如改为192MHZ 、则定时时间=(265-X)/16 微秒 计时精度为0.065微秒
3 解决的方法是你需要更换单片机 51单片机 目前晶振频率最高的是AT89S51 可以达到33MHZ
误差还是太大 可以选择与51相兼容芯片如STC89C51(由于是单时钟周期 晶振频率相当于400MHZ以上)完全可以满足你的要求。
4 你的程序不需要有太大的改动 只需要根据晶振频率的不同修改时间常数 就可以了
呵呵 就说这些吧 别忘给俺加分啊
1 造成误差较大的原因是计时精度不够。如果你使用51单片机 采用12MHZ的晶振 采用方式2定时 定时时间=(265-X)微秒 你 频率为38K 则需要定时的时间=周期/2=26.315/2=13.1575微秒 (取整 为13微秒) 结果造成定时误差(一个周期 有0.1575×2的误差)
即可以看出 采用12MHZ的晶振 采用方式2定时 计时精度为1微秒。
2 提高计时精度的方法 即需要提高晶振频率 如改为24MHZ 、则定时时间=(265-X)/2 微秒
计时精度为0.5微秒
如改为48MHZ 、 则定时时间=(265-X)/4 微秒 计时精度为0.25微秒
如改为96MHZ 、 则定时时间=(265-X)/8 微秒 计时精度为0.125微秒
如改为192MHZ 、则定时时间=(265-X)/16 微秒 计时精度为0.065微秒
3 解决的方法是你需要更换单片机 51单片机 目前晶振频率最高的是AT89S51 可以达到33MHZ
误差还是太大 可以选择与51相兼容芯片如STC89C51(由于是单时钟周期 晶振频率相当于400MHZ以上)完全可以满足你的要求。
4 你的程序不需要有太大的改动 只需要根据晶振频率的不同修改时间常数 就可以了
呵呵 就说这些吧 别忘给俺加分啊
广州晶晟电子
2023-10-12 广告
2023-10-12 广告
OSC有源晶振是一种电子元件,它需要接电源才能工作,一般有四个引脚,其中有两个是电源输入引脚,有正负极之分。它是石英晶体震荡器的简称,英文名为Crystal。石英晶体震荡器的应用范围非常广,包括通讯系统、时钟电路、显卡、网卡、主板等配件的各...
点击进入详情页
本回答由广州晶晟电子提供
展开全部
单片机如何发生精确的38KHz方波,近似精确,都是不可能的。
粗略的,都达不到。
只有使用外接的振荡器。
单片机发出40KHz,还勉强可以。
粗略的,都达不到。
只有使用外接的振荡器。
单片机发出40KHz,还勉强可以。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
更精确的延时需要更小的时钟周期,38K周期为26.315789uS。你的定时计需要精度计时到0.1uS才够精确。 用12M的晶振定时器时钟1T计时精度是88ns ,精度够高了啊
追问
给个具体的程序,谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询