• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

抗干扰求助

我是一个新手,最近做了一个智能充电机的充电程序,程序的抗干扰能力很差,但是我也采取了看门狗,软件陷阱,数据保护等手段,但作用不是太明显,当充电电流达到50安时,程序就完全不能工作,我用的是at89c52单片机,程序失控时,看门狗x5045输出复位端不停的给单片机复位,但是复位后单片机还是乱的.
还有,在初始上电时,经常显示乱码(正常情况下,显示充电电压)
我试了很多种方法,都解决不了,于是我怀疑我的程序构架有问题,
请问一个相对复杂的单片机程序应该怎样构架才会提高抗干扰能力?
全部回复(17)
正序查看
倒序查看
专业芯
LV.2
2
2006-07-06 15:25
怎么不用PIC带有抗干扰内核的单片机

哈哈!!
0
回复
linepro
LV.7
3
2006-07-06 22:44
用AVR,只有他可以.我的程序不用任何抗干扰,都可以的
0
回复
ppp123456
LV.5
4
2006-07-06 23:57
这首先是硬件问题,你的电源根本没有作处理,仅仅这一点就可以使你的系统当机.
0
回复
xdgcs
LV.2
5
2006-07-07 10:17
@ppp123456
这首先是硬件问题,你的电源根本没有作处理,仅仅这一点就可以使你的系统当机.
请问我的电源应该怎么处理呢?
我这个电源最大能输出72v/120a,我是新手,请教???
0
回复
xdgcs
LV.2
6
2006-07-07 10:20
@专业芯
怎么不用PIC带有抗干扰内核的单片机哈哈!!
我是新手
刚毕业,只会89c52
请问pic跟52差不多吗,写好的程序能不能直接移制到pic上
0
回复
2006-07-07 11:18
这么大的电流,应该还要看看你的PCB LAYOUT,布线等等,我想硬件问题应该占主要成分.
0
回复
2006-07-08 09:13
软件抗干扰用在这种场合基本上没有作用,要用好一点的单片机,像PIC、现代都可以啊
0
回复
xdgcs
LV.2
9
2006-07-08 16:57
@chengkai422
这么大的电流,应该还要看看你的PCBLAYOUT,布线等等,我想硬件问题应该占主要成分.
可是我没经验啊,我不知道我的pcb有没有问题
0
回复
dadodo
LV.7
10
2006-07-09 14:31
@linepro
用AVR,只有他可以.我的程序不用任何抗干扰,都可以的
赞同!
0
回复
2006-07-09 16:23
用同样的程序,换一种单片机试试看:STC5404,51内核.具有强抗干扰功能.
0
回复
xdgcs
LV.2
12
2006-07-10 10:18
@普通百姓
用同样的程序,换一种单片机试试看:STC5404,51内核.具有强抗干扰功能.
我在网上怎么查不到这种型号的单片机啊,可以直接把52的程序移植过去吗?
请问你有这种单片机的资料吗?我想看一下,多谢多谢
0
回复
专业芯
LV.2
13
2006-07-10 12:10
@xdgcs
我在网上怎么查不到这种型号的单片机啊,可以直接把52的程序移植过去吗?请问你有这种单片机的资料吗?我想看一下,多谢多谢
呵呵!能是能往里烧程序
不过肯定不能用的
0
回复
ppp123456
LV.5
14
2006-07-12 00:01
@xdgcs
我在网上怎么查不到这种型号的单片机啊,可以直接把52的程序移植过去吗?请问你有这种单片机的资料吗?我想看一下,多谢多谢
别相信所谓的更换单片机就能解决问题的言论,这对于你的情况没有任何帮助.
    楼主首要的问题是加强单片机电源的滤波,因为单片机电源上的瞬间过高的尖峰会造成单片机可靠性降低甚至直接烧坏单片机(任何单片机都如此);过低的尖峰会立即造成单片机死机.
    然后是考虑克服空间电磁干扰.
    如果楼主解决了上述2个问题,则使用任何单片机都没有问题了.
0
回复
2006-07-15 17:50
@ppp123456
别相信所谓的更换单片机就能解决问题的言论,这对于你的情况没有任何帮助.    楼主首要的问题是加强单片机电源的滤波,因为单片机电源上的瞬间过高的尖峰会造成单片机可靠性降低甚至直接烧坏单片机(任何单片机都如此);过低的尖峰会立即造成单片机死机.    然后是考虑克服空间电磁干扰.    如果楼主解决了上述2个问题,则使用任何单片机都没有问题了.
0
回复
inherit
LV.5
16
2006-07-19 10:03
绝对的干扰,因数很多.另外提醒你注意看门狗的电压波动范围
0
回复
rlling
LV.3
17
2006-07-19 13:30
初始上电时显示乱码,可能是你的程序中有关定时的处理没有处理好.在初始化时,可以将一些延时参数延长一些.另外,关于单片机复位的问题,最好你在出现不停复位的情况下用示波器看看单片机的电源输入端的波形,这是很直接的.如果波形不好的话,在电源上加上一个大的电容作滤波看看效果.各个牌子的单片机,抗干扰的性能还是有差别的.
0
回复
xdgcs
LV.2
18
2006-07-25 17:30
@rlling
初始上电时显示乱码,可能是你的程序中有关定时的处理没有处理好.在初始化时,可以将一些延时参数延长一些.另外,关于单片机复位的问题,最好你在出现不停复位的情况下用示波器看看单片机的电源输入端的波形,这是很直接的.如果波形不好的话,在电源上加上一个大的电容作滤波看看效果.各个牌子的单片机,抗干扰的性能还是有差别的.
现在问题解决了,采取了很多措施,加滤波,最主要的是尽量减少io口输出高频信号
0
回复