关于单片机程序无法下载问题的总结
时间:04-10 11:33 阅读:862次
*温馨提示:点击图片可以放大观看高清大图
简介:今天维修了一个电源,别人告诉我是FLASH存取有问题。我的第一反应是 重新下载一次程序,因为之前遇到过一个产品数码管不显示,我重新下载之后就正常工作的情况。所以这一次我也想这样做。 但是很奇怪,程序无法下载。
于是我又想到用串口调试助手看一下能不能从芯片中读取出数据,以此判断FLASH的读取问题。测试后发现串口的输出是正常的,只是反应好像不灵敏。就是我输入的指令过快时,有时候会返回不了值,直到下一次重新发指令,再返回值。于是,我匆匆地换了一片232芯片,就上交了。跟经理说是232芯片有问题肯定是可以过关的。因为我证明了FLASH存取是没有问题的,只是不能下载而已。但我还是跟经理说了这个情况,经理让我再仔细查查清楚。
于是,下面的疯狂行为就开始了。我先是重新查了一下RX、TX的连接情况,证明是通的。然后我把单片机换了,下载,不行;把晶振换了,下载,不行;这下我慌了。因为糊弄不过去了。于是我又把那片扔了的芯片捡起来备用。然后我把带有芯片的板子和另一块下载板相连,下载,成了。于是我放心了,大不了就这样上交算了。但我还是觉得问题没有解决啊,于是,我 知道是下载板的问题。我又量了一下RX、TX的连接,没问题。我仔细一看板子,发现跟232相连的一个104电容断了一半,判断可能是它的问题,换芯片,下载,成功。
因为之前也遇到过程序无法下载的问题,所以这里把其原因总结一下(仅以我自己遇到的情况为主)。第一次是因为晶振有问题,所以无法起振,第二次就是上文提到的,max232的电容有问题。
所以下次再遇到这种类似的情况。我们要做的是:
一、 首先排除是USB转串口的下载线问题,我们可以换块其他的板子下载试一下;
二、 其次换一块底板看看能不能下载,判断一下是上面的板子有问题还是底板有问题。
三、 确定串口至max232的输入端线路没有问题,确定max232至单片机的RX、TX引脚没有问题;
四、 如果上诉情况排除后,依然不能下载,则需要考虑可能是晶振或者max232的电路有问题。因为一把情况下像单片机和MAX232是很少会出问题的。
五、 首先看晶振的问题,确定其相关的电容没有虚焊,或者换一个晶振。
六、 看一下与232连接的电容又没有虚焊。