1、检查供电:直接用万用表测量VCC和GND的电平,是否符合要求。如果VCC偏离5V或33V过多,检查7805或其他稳压、滤波电路的输出。
2、检查晶振:一般是多换几个晶振上电试试,反正石英晶振不值很多钱。
3、检查RESET引脚电平逻辑,注意所用机型是高电平复位还是低电平复位的,如果MCU一直处于反复被复位状态。
4、如果设计时,程序是从扩展的外部ROM开始运行的,还需检查EA脚。
5、检查MCU是否损坏或flash无法下载,最好换块新的芯片试试。
6、如果测试程序运行正常。那就基本确定是控制程序的问题了,在keil里反复跟踪调试程序,留意调用子程序后工作寄存器组、累加器、DPTR等是否为预期值。
请确保你电脑上的串口工作正常,测试方法,打开一个串口调试助手,短接串口线的TX和RX,然后串口调试助手发送一个字符,比如a,如果串口通信正常,你能在串口调试助手中收到a
请确保STM32上用于ISP的串口是串口1,IO是PA9,PA10,如果是STM32F2XX,也可以是串口3
请确保STM32在上电时两个BOOT引脚的电平正确(BOOT0=1,BOOT1=0貌似,看手册)
如以上条件满足,还是无法ISP,请调整串口波特率,比如9600,无校验
lpc824的管脚输出不为0的原因如下。
1、程序问题:可能是程序中的代码逻辑不正确导致输出不为0,需要检查程序代码并进行调试。
2、硬件问题:可能是硬件电路连接不正确,导致输出不为0,需要检查硬件电路连接是否正确。
3、MCU故障:可能是MCU本身出现了故障,需要更换MCU或者进行维修。
单片机程序,程序没问题,编译不出来怎么回事?
----
那就是“程序有问题”。
你项目中,包含了 startupa51,这也是一个汇编语言的程序。
你的程序,所储存的地址,与 startupa51 用的地址,有冲突。
最简单的解决方法,就是从项目中,删除掉 startupa51。
不删也行。只要把你的程序所用的地址,改一改,即可。
以上就是关于单片机上电后整个系统不能正常运行的检查步骤 越详细越好 谢了!!!!!全部的内容,包括:单片机上电后整个系统不能正常运行的检查步骤 越详细越好 谢了!!!!!、node mcu模块因为语法错误 再烧写别的程序一直提示错误、lpc824的管脚输出不为0等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)