打开关电源的时候程序PC指针跑飞

[复制链接]
 楼主| peache 发表于 2011-4-19 19:22 | 显示全部楼层 |阅读模式
用C8051F020做的系统,AD采样和其他信号采集。当中有个采220V交流开关通断的信号。  防真的时候发现打220V开关的时候,程序的PC值乱跳,程序跑飞,或是直接复位。  怎么解决啊??? 急!!
 楼主| peache 发表于 2011-4-19 19:23 | 显示全部楼层
220V开关电源采样信号是经过光藕隔离了的才送给单片机,且打开关的时候看过送到单片机的信号,无杂波,/RST脚也无干扰。单片机电源也稳定
pa2792 发表于 2011-4-19 19:45 | 显示全部楼层
C8051F020需要高手,反正我水平有限,C8051F020做的板子都是无缘无故死机重启,用示波器去测电路也会引起C8051F020重启;非得把示波器先压在电路上,再上电。
原野之狼 发表于 2011-4-19 20:27 | 显示全部楼层
嘿嘿 俺也在C8051上栽过  现象基本和LS一样 至今木有搞明白
pa2792 发表于 2011-4-19 20:29 | 显示全部楼层
还以为是我RP大有问题,原来还有同道中人。:D
 楼主| peache 发表于 2011-4-19 20:48 | 显示全部楼层
我的问题啊....怎么搞。  EMC通不过?
pa2792 发表于 2011-4-19 20:54 | 显示全部楼层
当然过不了了,上面的未知问题就是严重的问题,不解决未知问题,EMC能过吗?
mmax 发表于 2011-4-19 21:13 | 显示全部楼层
觉得LZ仿真,还有pa用示波器看波形。
都是调试系统(单板、电源、示波器、仿真器、电脑)的地回路问题
金戈铁马 发表于 2011-4-19 21:34 | 显示全部楼层
关注下,楼主有结果了来说下
hsb.siq 发表于 2011-4-19 23:06 | 显示全部楼层
反正我拒绝C8051
linqing171 发表于 2011-4-20 07:29 | 显示全部楼层
人品急需提升啊。

如果Reset和Vcc都没有问题,难道是从空气辐射过去的?
其他管脚有无毛刺?
ayb_ice 发表于 2011-4-20 08:25 | 显示全部楼层
利用JTAG调试的MCU在调试时都有这样的问题,很多这样的MCU我都遇到过的,比如430,AVR,RENESAS,
正常运行就好了,至于用示波器测量时一定要接好地线,否则高压串进来,别说MCU了,人都有麻手的感觉.
我用C8051F很多年了,没有什么大问题啊,参考开发板的电路设计即可,特别是电源和复位部分
aderson1234 发表于 2011-4-20 09:54 | 显示全部楼层
汗,我也遇到同样问题了,我用的是C8051F120,不过不是很严重,每次我启动变频器的时候,板子的指示都会不对,但是之后就没什么问题了!
yewuyi 发表于 2011-4-20 10:52 | 显示全部楼层
C8051比较娇惯,难伺候一点,比MSP430还要更娇惯一点,但只要熟悉脾性,严格设计,也还是可以用的
caner_hn 发表于 2011-4-20 12:31 | 显示全部楼层
这个问题其实很普遍.
当我们用MCU控制其他电源时,除非两个电源完全独立,否则会有一个很难消除的尖峰电压串到MCU的电源上,如果MCU抗干扰能力不够强的话,轻则引起MCU复位,重则引起MCU死锁,前者可以通过看门狗等恢复,后者通常复位无效.
该尖峰电压可以用数字示波器抓获(单次触发).
解决该问题的方法有两种:一是改进电路结构.二换是抗干扰能力更强的MCU.
据我测试,STM8S不咋样,STM32比STM8S好,但两者都不如EMC,也不如AVR,C8051暂未测试.
lbxiand 发表于 2011-4-20 16:32 | 显示全部楼层
晶振移远点CPU。强弱电分开布。变压器地线连电容,桥堆连电容。好好布线。。。唉。。。
dqyubsh 发表于 2011-4-20 18:01 | 显示全部楼层
我也拒绝这款CPU,找不到能代替AVR的理由。
 楼主| peache 发表于 2011-4-21 10:29 | 显示全部楼层
问题找到,复位后,通过查看复位寄存器看到有时候是看门狗,有时候是/RST。  看门狗是因为程序里做了中断嵌套。且是在中断里等另外个中断响应,超过喂狗的时间了,程序关看门狗。 /RST开始没重视,后来还是偶尔复位,直接把/RST拉到电源上,问题解决。

做硬件很是要靠经验啊,打电话问一同事,他没来现场,通过我的描述。提供了几个解决方案,最后这个/RST直接拉电源解决了问题。感谢下!
ayb_ice 发表于 2011-4-21 10:44 | 显示全部楼层
问题找到,复位后,通过查看复位寄存器看到有时候是看门狗,有时候是/RST。  看门狗是因为程序里做了中断嵌套。且是在中断里等另外个中断响应,超过喂狗的时间了,程序关看门狗。 /RST开始没重视,后来还是偶尔复位 ...
peache 发表于 2011-4-21 10:29

事实胜于雄辩
yewuyi 发表于 2011-4-21 14:44 | 显示全部楼层
呵呵,EMC也敢拿上来算道菜!?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

85

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部