0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机不能正常工作的原因

GReq_mcu168 来源:玩转单片机与嵌入式 作者:玩转单片机与嵌入 2022-06-20 09:47 次阅读

拿到设计的电路板后,一般会先下载单片机程序验证一下硬件功能是否正常,但有时也会出现程序不运行的情况,本文我们就介绍一下针对硬件测试时程序不运行的排查思路。

一:确定软件还是硬件问题?

首先进行软硬件交叉对比测试;将程序下载到其他板子上(最好是可确定硬件无问题的开发板上),验证程序是否有问题?

若程序在开发板上可正常运行,基本可确定是硬件的问题,可继续排查硬件原因。

若程序在开发板上也不能正常运行:先使用开发板调试出至少可正常运行的程序

二:单片机可运行的最小条件

针对常用单片机,正常运行的条件至少包括:电源、晶振、复位三部分;针对例如STM32单片机还涉及到Boot模式选择;

发现单片机不工作时,使用排除法,对上面的条件进行逐一排除即可。

01

检查VCC电压

使用万用表测量单片机VCC的电压是否正常、稳定;电压范围是否正常:若电压不在单片机的正常工作范围内,单片机肯定就不能正常工作。此时需要检查电源部分的电路,排查电源输出电压不正确的原因;电压是否稳定:若电压不稳定,波动较大也可能导致单片机不能正常工作; 02

检查晶振电路

振荡源作为单片机正常运行的“心脏脉搏”,是至关重要的。震荡源存在问题肯定单片机也不能正常工作;

3924e296-f036-11ec-ba43-dac502259ad0.png

若使用的内部晶振:检查程序中关于内部晶振的配置是否正确;

若使用外部晶振:使用示波器测量晶振引脚的波形,观察晶振是否正常起振;(关于晶振部分的电路欢迎关注本公众号关于晶振详解的文章)

03

检查复位电路

用示波器测量复位电路有没有给单片机提供上电复位信号

检查复位电路所用的电阻电容设计是否合理?

高电平复位or低电平复位是否符合单片机的要求?

3942925a-f036-11ec-ba43-dac502259ad0.png

04

检查Boot设置

针对STM32单片机,程序运行的条件还会涉及到Boot引脚的选择。如下图所示:

396d873a-f036-11ec-ba43-dac502259ad0.png

三:总结

单片机不能正常工作的原因还有很多,以上仅仅列出了比较方便排查并且比较重要的几个因素。欢迎在留言区留言讨论。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620821
  • 晶振
    +关注

    关注

    32

    文章

    2473

    浏览量

    66849

原文标题:下载程序后,单片机不工作?

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32L151 Jlink能正常烧写程序,但stm32就是不能正常工作是为什么?

    新做了块板子,用的是STM32L151,用J-Link能正常连接,烧录程序。但MCU就是不工作。用示波器量了晶振的波形,没有波形,应该是晶振根本没有起振。单片机上的3.3V电压供应正常
    发表于 04-22 07:14

    FIFO为什么不能正常工作

    FIFO为什么不能正常工作?复位信号有效长度不够,接口时序不匹配,可看下面这篇文章。 本文将介绍: 非DFX工程如何确保异步FIFO自带的set_max_delay生效? DFX工程如何确保异步
    的头像 发表于 11-02 09:25 566次阅读
    FIFO为什么<b class='flag-5'>不能</b><b class='flag-5'>正常</b><b class='flag-5'>工作</b>?

    单片机的电流消耗正常却没正常工作是什么情况?

    单片机的电流消耗正常却没正常工作是什么情况
    发表于 10-31 08:12

    单片机额定输入电流是多少啊?

    我记得以前查过51单片机最大的输入电流不能超过20MA左右,但是我在用的啥时候直接用P口引脚做负极,正极全接电阻接到VCC了我查过LED灯发光时好像电流有几毫安,但是我同时点两个256个灯,按理来说总的输入电流早就超过20MA了,但是
    发表于 10-27 08:01

    求助,单片机串口收发数据的问题?

    不到,当把单片机发送数据屏蔽了,又能正常接收数据,我想谘询一下是什么原因,或者有没有相关的例子介绍推荐一下,谢谢!
    发表于 10-23 06:39

    单片机异常复位原因 简述单片机如何复位

    单片机异常复位原因 简述单片机如何复位  单片机异常复位是指在正常运行期间,单片机出现了不可恢复
    的头像 发表于 10-17 16:44 2300次阅读

    引起单片机晶振不起振的原因有哪些呢?

    遇到单片机晶振不起振是常见现象,那么引起晶振不起振的原因有哪些呢? (1) PCB板布线错误; (2) 单片机质量有问题; (3) 晶振质量有问题; (4) 负载电容或匹配电容与晶振不匹配或者电容质量有问
    发表于 10-13 11:45 941次阅读

    单片机与labview做的上位通信,labview的数据无法给到单片机原因

    [i]​我用labview做了一个上位波形显示的界面,用串口助手与labview通信时,数据可以正常收发,用单片机与串口助手通信时,数据也可以正常收发,但是当
    发表于 09-28 06:08

    单片机写芯片超时是什么原因

    ,可能会导致程序崩溃或片内资源的浪费,并对系统的正常运行产生负面影响。那么单片机写芯片超时发生的原因是什么呢? 1.硬件问题:单片机与芯片进行通信的接口线路不畅或者出现了错误,导致数据
    的头像 发表于 09-13 10:43 4080次阅读

    单片机时钟电路的概念/工作原理/基本结构/作用

    单片机时钟电路是指用于控制单片机工作频率的电路,其主要作用是为单片机提供稳定的时钟信号,保证单片机正常
    发表于 09-08 17:08 2868次阅读

    ML51单片机INT1将单片机从掉电模式唤醒后定时器工作正常怎么解决?

    在ML51TC0AE试验板和NuMaker-ML51PC开发板上试验,新唐ML51单片机INT1将单片机从掉电模式唤醒后定时器工作正常。定时器是在唤醒后才初始化的,唤醒后其它程序都能
    发表于 06-14 09:14

    仿真正常,下载后不能正常工作是什么原因

    仿真正常,下载后不能正常工作是什么原因
    发表于 06-13 09:41

    单片机正常工作的基本条件及其时钟系统

    单片机正常工作需要满足三个条件:1) 给单片机供电 2) 单片机复位电路 3)单片机时钟电路。满
    发表于 06-12 14:40 4072次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>正常</b><b class='flag-5'>工作</b>的基本条件及其时钟系统

    简述恒温恒湿试验箱不能正常加湿原因

    不能正常加湿的原因,帮助及时解决问题。1、检查水箱中是否缺水。如果水箱中缺水,就会导致试验箱不能正常进行加湿。处理方法就是直接往水箱中进行灌
    的头像 发表于 06-09 11:31 382次阅读
    简述恒温恒湿试验箱<b class='flag-5'>不能</b><b class='flag-5'>正常</b>加湿<b class='flag-5'>原因</b>

    怎么防止电源线正负接反烧坏单片机呢?

    我用单片机做了一个小的系统,供电是用5V开关电源,为了防止接线的时候正负接错烧掉单片机,我在进线侧加了个二极管,这样接反就不会导通了,但是这个时候单片机不能
    发表于 05-09 16:10