数字锁相环(DPLL)

xingtianxixi 2011-04-20 10:12:58
我现在要设计一个数字锁相环,进入单片机(INT1脚)的信号是47.6--52.4Hz的方波信号,再由单片机产生一个已输入信号Tin一直的输出信号Tout,用51实现。

本人刚接触51不久,请各位多多指教。
...全文
286 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianxingzhizun 2011-12-27
  • 打赏
  • 举报
回复
锁相环作业纠结啊
bsnow 2011-05-03
  • 打赏
  • 举报
回复
我看了下 89C52不能进行上升沿触发。 如果要实现你所做的东西,可以提供一种简单的思路。
如果你说要相差90度,那么意味着输入信号的占空比是一定的,假设为50%。
这个时候你用中断下降沿触发中断,在中断中进行计时,这样你可以知道信号的周期,也就等于知道了信号频率(周期倒数)。如果你知道信号的频率,要产生一个相应的相差90度的信号也就不难了。
我的方法是:
有下降沿触发->打开定时器1计数->下降沿触发->停止计数得到计数值M
打开定时器2计数值为M/4,这样定时器2第一次(奇)触发时输出电平0,第二次(偶)触发不处理....
这样用2个定时器就可以实现。这样的缺点就是,精度依赖于你89C52时钟的快慢。
bsnow 2011-04-20
  • 打赏
  • 举报
回复
你这个不叫锁相环吧。。。。 51实现真正的锁相速度上有问题。 如果你要输入的方波完全输出,你可以在中断程序中 拉GPIO就可以了。 先 用上升沿触发中断 然后拉GPIO高,改下降沿触发中断 GPIO拉低就可以了。
xingtianxixi 2011-04-20
  • 打赏
  • 举报
回复
抱歉抱歉,由于赶时间没看清楚。
应该是
我现在要设计一个数字锁相环,进入单片机(INT1脚)的信号是47.6--52.4Hz的方波信号,再由单片机产生一个和输入信号Tin一致的输出信号Tout,用51实现。
bsnow 2011-04-20
  • 打赏
  • 举报
回复
没说清楚,"再由单片机产生一个已输入信号Tin一直的输出信号Tout"是什么意思?
xingtianxixi 2011-04-20
  • 打赏
  • 举报
回复
新手,请问上升沿触发具体怎么设啊,我在51的书里只看到了电平触发(IT0=0)和下降沿触发(IT0=1)的设置方法。
还有,如果这样做的话,没办法有效的进行滤波。一旦有干扰,波形就会乱套。
51在处理50Hz左右的信号,速度上是可行的。

我在简单阐述一下我要做的东西,一起探讨一下:
一个47.6Hz~52.4Hz的外来方波信号,由51单片机(我用的STC89C52)产生一个方波信号,与外来信号的频率一致,相位相差90度,单片机产生的信号要实时跟踪外来信号,变化范围为47.6Hz~52.4Hz。

1,068

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧