arm7tdmi 发表于 2013-7-17 13:10:34

stc12c5a16s2做485通信,有时候丢程序,如何解决呀?

用stc12c5a16s2做的小板,测量用的,有485通信功能,有的放室内,有的放室外,有时候会丢程序,重新下载程序后,整个板可以正常运行。
丢程序原因不明,以前碰到过在室外放置的类似的丢程序,重新下载就好了,貌似是雷击什么的引起的,不确定。
刚才查帖子,"设置P10,P11为0才能下载就不会丢程序了",
是不是平时P10,P11平时拉高,下载时接地?
或者有其它办法避免丢程序问题吗?
谢谢。

wajlh 发表于 2013-7-17 13:16:03

stc就这鸟样了

hpdell 发表于 2013-7-17 17:01:18

看看是不是复位有问题??

或者供电是否有问题

zuu0 发表于 2013-7-17 17:34:19

碰到不止一二次了

arm7tdmi 发表于 2013-7-17 18:48:02

丢程序这事我忽然间悟了:
STC肯定知道他的单片机在某种情况下,有一定几率会丢失程序,但是他不敢明说,说了谁敢买他芯片呀。于是他隐晦的提出了解决方案,在程序下载的时候,加个判断条件,让P1.0/P1.1都等于0,才能下载。要不然,为什么别的单片机不提供这么一个功能呢?当初就是没往深处想。
P1.0/P1.1平时拉高,下载板上要多1根控制线,让其接GND,下载时,这根控制线连接P1.0/P1.1。
估计这样丢程序几率会更低,接近不丢程序。
擦,我准备新板就这么设计,只是不兼容旧板了。

arm7tdmi 发表于 2013-7-17 18:49:38

高手们,是不是这么个理儿?

xpxp 发表于 2013-7-17 20:46:30

    不知道什么原因。我在某款电动车上设计的电量显示板使用STC15F204EA,通讯用HDQ16协议,很稳定。烧录时也没有特意指定P10、P11为0时才能下载。看中的是该芯片1%的频率稳定度及方便的编程工具。
   不知道你的这个RS485通讯是否使用了单片机的内置晶振?
   "设置P10,P11为0才能下载“的作用,我的理解是因为P30、P31是串口IO,在某些情况下用作串口通讯时会误入编程状态,所以设此功能以策安全。如果不用作串口通讯,可以不用设这个。这个在手册上有说明。

arm7tdmi 发表于 2013-7-18 08:32:55

串口烧写程序带来了方便,也带来了误编程隐患。

huaxiling 发表于 2013-7-18 10:33:01

stc做485用了不少,从不指定什么P1.0P.1才能下载,从没出现过丢程序,还是多检查软硬件吧。

ayumi8 发表于 2013-7-18 10:52:04

首先单片机这样设计肯定是没问题的

我这边马路上十字路口都是STC 单片机每次过马路都能看到坚挺的很呢。

串口下载程序当然也有可能遇到下载假象掉程序的隐患。{:titter:} 使用的时候注意下就好了   

mbass51 发表于 2013-7-18 11:19:23

主力用485沒問題,數量幾千粒

linlh 发表于 2013-8-23 00:24:30

我们公司用STC都几万片了,下载只用VCC,RXD,TXD,GND4个脚,没用P10,P11,从来都没有出现过问题,至于加P10,P11判断来下载程序,现在很多单片机也有类似的做法,比如ST公司的,芯唐的,如果用ISP也有按下复位键或者别的什么管脚的要求。楼主还是检查自己的板子和出现吧。

wangyy@dianzi 发表于 2013-8-23 08:40:15

arm7tdmi 发表于 2013-7-17 18:48 static/image/common/back.gif
丢程序这事我忽然间悟了:
STC肯定知道他的单片机在某种情况下,有一定几率会丢失程序,但是他不敢明说,说 ...

楼主你说的不对吧,这个只是为了防止误下载程序而设定的,或者批量下载用。芯片没问题,看看你的硬件配置和设置,我用STC+485做了很多项目都很稳定,没出现过大的问题。一般的都是自己的硬件设计导致的,或者自己写的程序有BUG。

huangyiting1990 发表于 2015-3-17 20:43:58

朋友,问题解决了吗?我遇到了相同问题,你是怎么解决的?
页: [1]
查看完整版本: stc12c5a16s2做485通信,有时候丢程序,如何解决呀?