如何判断单片机是否起振,我分为两种情况。
一、外接晶体振荡器情形
这种情况可以用示波器直接抓取波形。值得注意的是,探头及示波器的带宽是否超过晶振的振荡频率。同时示波器探头要打到X10档位,以增加探头带宽和减少探头电容对振荡电路的影响。并且探头地线要改用地线弹簧。
二、单片机内部RC振荡
这种情况下,一般无法直接测试,只能通过其它手段。
比如我经常使用的方法就是接一个LED指示灯。可作为电源指示灯,可作为状态指示灯,可调试单片机。
调试阶段,雅帆使LED每1秒闪烁一次。当然,只要能正常闪烁就说明单片机工作了。同时还能防止单片机看门狗设置不正确造成的复位(雅帆会改成2秒翻转一次,如果不是这个周期,说明看门狗复位了)。
调试完成我就改成电源和状态指示灯了。比如0.5秒闪烁表示工作正常。2短1长的亮表示有故障等。
怎么判断单片机是否起振?其实就是想办法判断单片机是否能够正常工作即可。判断单片机内的程序是否能够正常运行即可知道单片机是否起振,若单片机有外部看门狗信号,直接用示波器测量单片机给外部看门狗输入信号的引脚,观察其是否有波形输出,且波形周期是否与设计值相吻合,若没有波形输出,则单片机没有正常工作,程序没有正常运行;若有相应的波形输出,则证明单片机程序是在正常工作的。
若单片机没有外部看门狗信号,可利用单片机未使用的一个I/O口进行测试,测试步骤如下:(1)更改单片机程序,初始化设置该I/O口为输出引脚,在主函数上使该引脚为周期翻转的输出波形,翻转周期最好2ms以内,这样使用示波器监测波形时可更准确测量出单片机异常的时间;(2)将改好的程序烧录进单片机后重新上电,用示波器测量该I/O口的输出波形,若输出一直为持续的周期波形,且周期与设计值相符合,说明单片机正常工作,晶振也没有异常;若输出波形不对,比如周期波形持续一段时间后,有一段高电平,然后才恢复周期波形,可测量这段高电平的时间,猜测该高电平时间单片机在复位,可检查单片机的外部复位引脚是否异常;若无异常,检查程序初始化时钟配置等是否正确;程序内部看门狗是否开启。
-
单片机
+关注
关注
6029文章
44480浏览量
631602 -
晶体振荡器
+关注
关注
9文章
612浏览量
29003
发布评论请先 登录
相关推荐
评论