单片机小白学步系列(十五) 单片机程序下载失败总结
前面介绍了点亮第一个LED的全过程,很多人可能很幸运的点亮了LED,然而也很可能不少人非常不幸没有把程序下载进去。初学者常会遇到程序无法下载的情况,很多人在尝试多次未果后比较受打击,因此放弃了学习,实在太可惜了。鉴于此,这里列举了单片机程序下载失败的各种出错原因、判断方法和解决方法,是前人所遇到的种种原因的总结。
STC单片机下载程序主要分为三部分:单片机最小系统、下载电路、计算机端。下载失败一般主要就从这三个方面来解决问题。
快速排错方法
如果你有或者能向别人借到一套可以正常下载程序的电脑、单片机下载线、开发板全套装备,依次换用别人的下载线,电脑,和单片机系统板进行下载。如果换别人电脑下载就成功了,说明问题在于你的电脑。通过这种控制变量的方法,就能快速判断出问题出在哪个环节。
也可对照下面列举的问题,逐条检查错误所在。星号标出的是最常见的一些问题。
一、最小系统的问题
1*、不是STC系列单片机。
如果是AT或其他品牌单片机,通常下载方式与STC不同。
2*、单片机损坏。
有的单片机内由于ISP系统引导码出错,能运行之前已经下载进的程序,但不能下载程序;或者单片机已完全损坏,比如电源电压过高、电源接反导致烧坏。
3*、晶振的问题。
没有晶振,晶振放在插座上接触不良。如果是自己搭建的电路,还有可能是电路设计时,晶振引脚离单片机距离太远不起振,或者没有起振电容。有条件可以用示波器观察晶振引脚有没有输出波形;或用频率计测量是否有输出频率;另外也可以用万用表测量单片机的时钟管脚电压,约为电源电压的一半。
4、最小系统电路的其他接线错误问题,包括还会有人因为太激动等原因忘了给单片机上电(^_^)。
如果是最小系统的问题,需要更换或者添加相应的器件,或重新设计电路。
二、下载电路的问题
1*、接线错误。
如:串口的TXD、RXD接反,没有接GND等。应该将下载线TXD连接单片机RXD,RXD连TXD,然后下载线的GND和单片机GND连接。有些不规范的下载线,可能把TXD和RXD标反了,可以交换一下再试试。
2*、USB接口松动,下载线断路,排针或插座松动。
3、下载芯片损坏(一般下载涉及的芯片有PL2303、CH341、MAX232)。
4、如果是自己设计的PL2303下载器,下载器上面的晶振应该是12M。
怎么判断是不是下载电路部分的问题,最好能换别的下载线或借别人的下载线用一下试试。如果损坏了,不容易修好,最好换新的。
三、计算机端的问题
1*、软件出错、驱动出错的情况比较常见。
可以尝试重启一下STC_ISP,换USB口或串口,重启电脑。
2、下载软件的问题。
最好在宏晶官网下载STC_ISP最新版本,在Win7/Win8系统中初次使用可能要以管理员身份运行。
3*、驱动的问题,没有安装或者安装出错。
如果设备管理器中有COM口“USB-to-Serial”且无黄色感叹号,一般驱动就没有问题,但是还是可以重装驱动试试;安装的驱动要与系统对应(Windows7 32位、64位或者Windows XP等)。
4、COM口设置错,一般下载时会提示打开串口失败。
5、单片机的型号设置错,一般下载时会提示不是此型号的单片机。
6*、波特率太高。
STC-ISP下载软件的波特率设置太高,适当调低一点或许有用,可以把最高、最低波特率都选为1200试一试。
计算机端的问题比较复杂,有些原因很难追根求源。如果判断出是电脑的问题,但是花费了比较多的时间还是没能解决,可以考虑重装系统。
四*、操作步骤的问题
注意先点电脑上的下载按钮后给单片机上电;或者电脑上点击下载,关掉单片机电源再打开。有时下载不了,可以多试几次。
下载程序顺序如下:
1、设置单片机型号,COM口,波特率等参数。
2、装载好要烧的单片机程序HEX文件,如果是修改程序,并进行了重新编译,也需要重新打开HEX文件。
3、关闭单片机电源,点击“下载”,再给单片机上电。
4、下载软件显示“正在下载”,稍后即可下载完成。
不知道读者是否已经按照这节内容,解决了自己所遇到的问题呢?
=======================================================
《单片机小白学步》系列教程(原名《单片机入门指南》)介绍
本系列教程从最基本的入门知识开始,逐步深入介绍单片机系统设计,内容包括:
1、入门篇:单片机等基本概念、各种电子设计基本知识
2、思想篇:单片机/计算机系统设计的工程思想
3、学习篇:单片机学习过程、方法和技巧,以51单片机为例介绍,并推广到其他单片机
4、应用篇:遵循规范的工程方法,设计单片机系统实例(计划设计的系统有:计算器、电子表、密码锁、简易手机,具体看有没有时间再确定)
5、原理篇:从模拟电路、数字电路开始,逐步深入介绍单片机/计算机系统原理,并自行设计简易的CPU(由于个人水平有限,这部分没有把握写好,具体内容视情况而定)
教程特点
1、技术知识点全面,从入门到精通
包含了各种基本知识,尤其是对单片机基本概念的介绍、为什么要用单片机等,在很多同类书籍教程中都被忽略了。同时也包含了一些深入的知识,包括原理篇考虑对单片机的基本原理进行介绍,有助于深入理解单片机。
本系列教程以51单片机为例进行介绍。通过51介绍完单片机的基本知识,我会再把430进行简要介绍,尤其是对比两者之间的优缺点,让大家很快感受到430的巨大优势,而学习51正好为快速了解430打下了坚实的基础。
2、除了单片机知识,还有思想、方法、技巧的介绍
本系列教程中,介绍单片机各种模块编程知识的主要是学习篇,而学习篇只是整个教程的一部分。在学习篇中我会贯穿各种方法技巧,如何理解一些模块功能,怎么看时序图,严格遵守工程思想进行编程,程序发生了错误怎么调试等等。而在思想篇中会总体介绍很多重要的思想,为后面的学习做好准备工作。
3、知识先后顺序的设计
单片机学习过程中,涉及大量的知识,而且很多知识之间相互依赖,关联很强。
本系列教程对知识的先后顺序进行比较明确的规划,尽最大可能符合人的认知过程。但是实际规划时发现,无论怎么调整知识的顺序,总有一些知识之间相互依赖,关系复杂。例如开始讲IO口的时候肯定会提到寄存器,而寄存器这个词的理解,需要深厚的背景知识。但是这些背景知识在没有进行实践的时候也很难理解。
初学者常常就会在这样的地方感觉疑惑不解,不知所措。而每次遇到类似这样的知识,我会向初学者指出,应该如何对待。这个知识是应该自己去学习补充,还是等到学完原理篇再做理解,而现在又应该怎么去看待这个名词。
另外,在整个教程的学习前,需要掌握一定的C语言等基础知识,具体可参考教程第〇篇《序》中的相关说明
http://www.hainter.com/mcu-primer-0
4、语言通俗易懂
本系列教程力求语言通俗易懂,而不会用一堆新手不懂的词语去解释另一个不懂的词语。但是受限于个人语言表达能力,可能有些地方表述的比较繁琐,或者不清楚,希望大家能够帮忙指出。
其他问题
如果觉得我写的对你有帮助,欢迎多多反馈,包括写的不正确、不合理、不太明白都可以指出来,这样方便我对其进行完善。
更多可参见:《如何以学习单片机为契机,逐步成为优秀的工程师》
http://www.hainter.com/mcu-engineer
本系列教程首发于我的个人主页,欢迎访问(由于是国外服务器,速度稍微有点慢):
http://www.hainter.com/category/hacker/mcu-primer
同时会将其转发到CSDN、电子发烧友等站点,欢迎关注。
CSDN专栏网址 http://blog.csdn.net/column/details/mcu-introduction.html
电子发烧友论坛 http://bbs.elecfans.com/zhuti_mcu_1.html
本文首发自我的个人主页, 转载请注明来源:http://www.hainter.com/mcu-primer-15
单片机小白学步系列(十五) 单片机程序下载失败总结相关推荐
- 单片机小白学步系列(五) 集成电路、封装相关知识
在前文大家都有见到集成电路的图片,其外形有很多种.在这些芯片中真正起作用的部分是集成在硅片上的晶体管.而我们看到的样子,则是在其外部用外壳进行封装.把硅片上的电路管脚,用导线接引到外部接头处,以便于其 ...
- 单片机小白学步系列(十四) 点亮第一个LED的程序分析
本篇我们将分析上一篇所写的程序代码.未来学习单片机的大部分精力,我们也将放在程序代码的编写上.但是不用担心,我会非常详细的介绍每个程序的编写思路和各种注意事项等. 之前我们写的程序如下: #inclu ...
- 单片机小白学步系列(十) 单片机程序下载相关知识
注:本篇在写<单片机入门指南系列>之前就已经写过,现在发现这篇比较合理的位置,应该是放在<单片机入门指南系列(六) 单片机最小系统--麻雀虽小,五脏俱全>之后的,但是由于之前考 ...
- 单片机小白学步系列(十六) 单片机/计算机系统概述:模块化思想
截至目前,单片机入门篇的介绍就告一段落了.从本文开始将进入思想篇的学习. 思想篇对后面的具体知识学习进行整体的框架介绍,解释一些基础名词,以及对学习思想方法进行总结.思想篇的内容,对于后面的学习有很大 ...
- 单片机小白学步系列(二十) IO口原理
IO口操作是单片机实践中最基本最重要的一个知识,本篇花了比较长的篇幅介绍IO口的原理.也是查阅了不少资料,确保内容正确无误,花了很长时间写的.IO口原理原本需要涉及很多深入的知识,而这里尽最大可能做了 ...
- 单片机小白学步系列(十九) 单片机/计算机系统概述:扩展模块
本篇简单介绍各种单片机外设模块,目前考虑不全,可能会在后期进一步修改完善. ==================================== 前面介绍的核心模块,是微机系统中比较重要甚至是必不 ...
- 单片机小白学步系列(十八) 单片机/计算机系统概述:通信接口与协议
前面说了信息与数据的概念,这里要说的是与之关系密切的问题--通信. 通信 何为通信?在英文中,通信用Communication表示,这个词也有交流的意思.实际上,通信和交流确实是一样的意思.不过在汉语 ...
- 单片机小白学步系列(十二) Proteus仿真软件简介
Proteus软件是英国Labcenter electronics公司出版的EDA工具软件.常用于单片机等数字电路仿真,分为ISIS和ARES两个程序,前者用于仿真,后者用于设计PCB.我们常使用IS ...
- 单片机小白学步系列(十三) 点亮第一个LED——好的開始,成功的一半
前面介绍了非常多概念知识.做了非常多准备工作,从这一节開始,我们正式開始单片机的学习.我们将使用单片机完毕一项非常easy的工作:点亮一个发光二极管(即LED:Light-Emitting Diode ...
最新文章
- 电信天翼3G上网卡在Lenovo笔记本电脑windows7系统正常运行方法
- 重磅!深入调研证券行业,神策数据发布《财富管理数字化转型现状与趋势洞察》报告...
- javaweb 解决请求相应的乱码问题
- CDH集群调优:内存、Vcores和DRF
- java/05/(Swing包)窗体,组件,布局管理器,面板,监听事件
- js小数运算出现多为小数问题_js小数计算小数点后显示多位小数的实现方法
- MySQL String Functions and Operators(字符串处理)
- linux中的住设备号和次设备号
- iOS应用不同状态下收到推送的处理
- 5元以下纯铜小摆件_下一轮牛市即将在2020年登陆?现在能否买入5元以下低价股一直持有到牛市结束?出乎意料...
- android service莫名启动问题
- 容器技术Docker K8s 8 容器服务ACK Pro版集群
- 贪心背后的故事Codeforces 995B(Suit and Tie)
- TIA博途中分布式IO ET200SP的使用方法
- 尾递归优化 - 尾递归优化
- 会计专业为什么要学python-财务人要学Python吗?
- 【图像分割】基于snake模型的图像分割matlab 源码
- 超额准备金 超额备付金_销售不足和超额投放
- 第五届湖南省机器人大赛暨第十四届湖南省智能汽车大赛名单
- kurento 6.6.0 安装部署 + 运行官网demo