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

单片机容易受干扰 死机 是什么原因啊

单片机控制电路   控制气体放电灯  有触发器  启动时产生高压脉冲   电路就死掉了  不知如何是好
全部回复(20)
正序查看
倒序查看
xinxi
LV.4
2
2006-08-31 21:35
加光偶隔离,cpu放在单独小板上,软件开门狗复位时自动跳回到北干扰的程序
0
回复
2006-09-01 00:13
@xinxi
加光偶隔离,cpu放在单独小板上,软件开门狗复位时自动跳回到北干扰的程序
已经加了光耦隔离    并且用了分开的独立电源    采用的是电容电阻复位
0
回复
2006-09-01 00:17
@曾经心痛
已经加了光耦隔离    并且用了分开的独立电源    采用的是电容电阻复位
软件开门狗复位时自动跳回到北干扰的程序   这个不知道如何执行
0
回复
xinxi
LV.4
5
2006-09-01 10:01
@曾经心痛
软件开门狗复位时自动跳回到北干扰的程序  这个不知道如何执行
给每个子程序设一个特征码,比如 延时 子程序特征码为01H,乘法子程序特征码为02H,在RAM,固定的2-3个地方放置这个特征码,多放几个地方可以防止特征码被干扰改写,如果执行延时子程序时就把RAM的特征码写成01H,依此类推.看门狗复位时,读这几个特征码,并比较这几个是否都相等,不等可以进行纠错.并根据特征码的值跳回到那个子程序执行.特征码可以设的非常详细,但程序开销就大了.最好是把控制板和驱动板分开.
0
回复
2006-09-01 10:15
@xinxi
给每个子程序设一个特征码,比如延时子程序特征码为01H,乘法子程序特征码为02H,在RAM,固定的2-3个地方放置这个特征码,多放几个地方可以防止特征码被干扰改写,如果执行延时子程序时就把RAM的特征码写成01H,依此类推.看门狗复位时,读这几个特征码,并比较这几个是否都相等,不等可以进行纠错.并根据特征码的值跳回到那个子程序执行.特征码可以设的非常详细,但程序开销就大了.最好是把控制板和驱动板分开.
非常感谢楼上的!  
    程序开销大是指程序很庞大吗   还是指对存贮器要求容量高   还是说指令特别多?
0
回复
xinxi
LV.4
7
2006-09-01 10:33
@曾经心痛
非常感谢楼上的!      程序开销大是指程序很庞大吗  还是指对存贮器要求容量高  还是说指令特别多?
占用程序存储空间,具体要多少程序空间容量,就要你编好程序才知道.不知道你用什么CPU,如果空间够用的话,可以在子程序里面加入特征码判断,例如:在执行乘法(特征02H)子程序后要跳转到延时,这是你可以先把特征改成01H再执行跳转,延时子程序一开始就判断特征码是否和自己的特征码符合,如果符合就运行,不符合就跳到相应特征码的程序.这样可以防止在某个子程序执行一半的时候被干扰,跳到别的子程序中去,而没有被看门狗复位,即使这样也会被另一个子程序尽可能的 “拉”回来.我以前在强干扰电路应用里面,加特征码防干扰后,程序稳定多了,但是还会出错.最好是硬件解决干扰.
0
回复
ppp123456
LV.5
8
2006-09-02 20:14
你的电源设计有问题
0
回复
2006-09-05 14:48
@ppp123456
你的电源设计有问题
楼上的朋友
个人认为即使你的程序完全正确,你还是不能正常控制气体放电灯.
这种情况在实际应用中我也碰到.

主要的问题是忽略了一点,单片机的驱动能力是很差的,每个并口的
输出电流最大也不过20mA,全部输出一般都不会超过50mA

如果说楼主要用7,8个光耦 驱动 可控硅或是继电器 是不能正常控制灯的.

最好的办法是用 并口负电平驱动,光耦.
0
回复
myh101
LV.1
10
2006-09-05 15:57
@ppp123456
你的电源设计有问题
消除感应雷残余电压干扰,接触器、电机、电器通/断电干扰,内燃机点火爆破干扰,无线电射频干扰;使普通单片机、微电脑、工控机、PLC控制的电子设备的脉冲群、浪涌抗扰度达到2、3、4级,在瞬态电压1、2、4KV时仍可正常运行,不发生误复位、死机、误操作、显示错乱等莫名其妙故障,避免快速电老化击穿、成倍延长工作寿命.本产品自身吸收干扰而不向大地排泄,无须接地,国际领先,使雷电干扰和电器接地故障干扰无法经公共地线闯入电脑,实现彻底保护,为我国智能设备的运行可靠性超过英美法德奠定了基础
地址361009厦门留学人员创业园昂业楼; 传真0592-5774847;电话0592-5774847、3923851、13110935416;上网检索词:厦门超力电子有限公司;网址:www.CLDZ.diytrade.com;电子邮箱:MYH801@163.com
500) {this.resized=true; this.width=500; this.alt='这是一张缩略图,点击可放大。\n按住CTRL,滚动鼠标滚轮可自由缩放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/45/1157442989.jpg');}" onmousewheel="return imgzoom(this);">
0
回复
曾经心痛
LV.10
11
2006-09-05 17:35
@纷扰之中
楼上的朋友个人认为即使你的程序完全正确,你还是不能正常控制气体放电灯.这种情况在实际应用中我也碰到.主要的问题是忽略了一点,单片机的驱动能力是很差的,每个并口的输出电流最大也不过20mA,全部输出一般都不会超过50mA如果说楼主要用7,8个光耦驱动可控硅或是继电器是不能正常控制灯的.最好的办法是用并口负电平驱动,光耦.
是用的负电平驱动
0
回复
libaomin
LV.6
12
2006-09-05 20:31
@曾经心痛
是用的负电平驱动
加硬件看门狗,光耦控制固态继电器,固态继电器控制电压单独供电,与主板不共地.继电器板与CPU板分开设计,各自独立,连线用扁平电缆加磁环.CPU板供电加EMI滤波器,电源变压器与CPU板脱离.CPU板与外部的接口全部加装RC滤波电路,引线加磁环.弱电强电分开布线,外壳接地.你试试吧,但不行你可别找我.
0
回复
曾经心痛
LV.10
13
2006-09-05 23:34
@libaomin
加硬件看门狗,光耦控制固态继电器,固态继电器控制电压单独供电,与主板不共地.继电器板与CPU板分开设计,各自独立,连线用扁平电缆加磁环.CPU板供电加EMI滤波器,电源变压器与CPU板脱离.CPU板与外部的接口全部加装RC滤波电路,引线加磁环.弱电强电分开布线,外壳接地.你试试吧,但不行你可别找我.
CPU板与外部的接口全部加装RC滤波电路,这个怎么加呀  怎么取值呢
0
回复
zjman
LV.5
14
2006-09-13 16:23
@曾经心痛
CPU板与外部的接口全部加装RC滤波电路,这个怎么加呀  怎么取值呢
你用哪个mcu做??
0
回复
曾经心痛
LV.10
15
2006-09-13 16:51
@zjman
你用哪个mcu做??
89C51   9S51   2051
0
回复
zl8864
LV.6
16
2006-09-17 17:41
@xinxi
占用程序存储空间,具体要多少程序空间容量,就要你编好程序才知道.不知道你用什么CPU,如果空间够用的话,可以在子程序里面加入特征码判断,例如:在执行乘法(特征02H)子程序后要跳转到延时,这是你可以先把特征改成01H再执行跳转,延时子程序一开始就判断特征码是否和自己的特征码符合,如果符合就运行,不符合就跳到相应特征码的程序.这样可以防止在某个子程序执行一半的时候被干扰,跳到别的子程序中去,而没有被看门狗复位,即使这样也会被另一个子程序尽可能的“拉”回来.我以前在强干扰电路应用里面,加特征码防干扰后,程序稳定多了,但是还会出错.最好是硬件解决干扰.
Xinxi先生你好
能举一个例子说明判断特征码是否和自己的特征码符合
你这种特征码防止死机很有创意.
0
回复
xinxi
LV.4
17
2006-09-18 15:43
@zl8864
Xinxi先生你好能举一个例子说明判断特征码是否和自己的特征码符合你这种特征码防止死机很有创意.
我是在编程序的时候就把特征码固定分配了,不是CPU自动生成特征码的.
0
回复
zl8864
LV.6
18
2006-09-19 10:51
@xinxi
我是在编程序的时候就把特征码固定分配了,不是CPU自动生成特征码的.
我想是这样的,在跳转前,给X寄存器定义Y值,跳转后,查X寄存器内容是否为Y值,若是就是正确跳转,否则程序初始化.是这样吗?但不应初始化,有些初始后程序会有出问题的,但你所说不知,不初始化能找到特征码,我想只能在各子程序中一个一个子程序头几行里找.
0
回复
南阳玉
LV.5
19
2006-09-19 11:56
@myh101
消除感应雷残余电压干扰,接触器、电机、电器通/断电干扰,内燃机点火爆破干扰,无线电射频干扰;使普通单片机、微电脑、工控机、PLC控制的电子设备的脉冲群、浪涌抗扰度达到2、3、4级,在瞬态电压1、2、4KV时仍可正常运行,不发生误复位、死机、误操作、显示错乱等莫名其妙故障,避免快速电老化击穿、成倍延长工作寿命.本产品自身吸收干扰而不向大地排泄,无须接地,国际领先,使雷电干扰和电器接地故障干扰无法经公共地线闯入电脑,实现彻底保护,为我国智能设备的运行可靠性超过英美法德奠定了基础地址361009厦门留学人员创业园昂业楼;传真0592-5774847;电话0592-5774847、3923851、13110935416;上网检索词:厦门超力电子有限公司;网址:www.CLDZ.diytrade.com;电子邮箱:MYH801@163.com[图片]500){this.resized=true;this.width=500;this.alt='这是一张缩略图,点击可放大。\n按住CTRL,滚动鼠标滚轮可自由缩放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/45/1157442989.jpg');}"onmousewheel="returnimgzoom(this);">
很好
0
回复
zl8864
LV.6
20
2006-09-19 15:25
@myh101
消除感应雷残余电压干扰,接触器、电机、电器通/断电干扰,内燃机点火爆破干扰,无线电射频干扰;使普通单片机、微电脑、工控机、PLC控制的电子设备的脉冲群、浪涌抗扰度达到2、3、4级,在瞬态电压1、2、4KV时仍可正常运行,不发生误复位、死机、误操作、显示错乱等莫名其妙故障,避免快速电老化击穿、成倍延长工作寿命.本产品自身吸收干扰而不向大地排泄,无须接地,国际领先,使雷电干扰和电器接地故障干扰无法经公共地线闯入电脑,实现彻底保护,为我国智能设备的运行可靠性超过英美法德奠定了基础地址361009厦门留学人员创业园昂业楼;传真0592-5774847;电话0592-5774847、3923851、13110935416;上网检索词:厦门超力电子有限公司;网址:www.CLDZ.diytrade.com;电子邮箱:MYH801@163.com[图片]500){this.resized=true;this.width=500;this.alt='这是一张缩略图,点击可放大。\n按住CTRL,滚动鼠标滚轮可自由缩放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/45/1157442989.jpg');}"onmousewheel="returnimgzoom(this);">
一只元件需要一百元吗?
0
回复
lighting_88
LV.2
21
2006-09-19 16:11
硬件延时.让汽泡触发后完全亮起来单片机才工作不就OK了.我们做舞台灯光的都是这样做的,其他的都不太适用.
0
回复