简述PIC硬件死锁问题

发布者:黑白之间最新更新时间:2020-02-20 来源: eefocus关键字:PIC  硬件死锁  工控电路 手机看文章 扫描二维码
随时随地手机看文章

使用 PIC 单片机 去设计工控电路,最头痛的问题,就是 PIC 单片机在受干扰后经常硬件死锁,大部份人归咎于 “CMOS的可控硅效应” 因而产生死锁现象,一般都认为 ‘死锁后硬件复位都是无效的.只有断电。’ 但是一个成熟的商品,那须要你去断电呢? 就好像一台电冰箱,压缩机一启动,产生干扰, CPU 受干扰 因而 ‘硬件死锁’,死机在那儿,假如发现了,可以马上拔掉电源插头,隔几秒再插回,如此的动作 可以接受吗? 假如死机时没发现,死机几十天,你猜它会如何呢? -- 应该是 供给 CPU 电源的稳压 IC 烧毁了。


PIC 单片机为什么会硬件死锁,PIC 单片机在受干扰后经常硬件死锁,那么 PIC 要‘看门狗’ 有何用,有没有人深入去探讨其原因,在各 PIC 单片机 论坛 也提得很多,各有各的观点,总具体的原因不外是 “CMOS的可控硅效应” 而产生死锁现象, 依我各人的观点,应与 “CMOS的可控硅效应”无观,但很多大虾皆认为是 “CMOS的可控硅效应”所引起的,所以一直以来 我也不方便提出,说不定是我的观点错误,提出来 反而误了大家,但至今,针对 PIC 单片机 产生死锁现象,都还没有详细的原因说明及对应之道,在别的 PIC 单片机 论坛 也还在提此问题,我就将本人 找寻 pic ‘死锁现象’的经过提供大家参考。


许久年前,PIC16C5x 刚出产一两年,(PICxxxx 原先只有165x,属于 NMOS 结构,大量用于 通用-GI 的选台器、有线电视解锁器,后来改为 CMOS 结构,更名为16C5x),当时只有 16C54、55、56、57 四个型号,仿真器只有 顶尖公司 制造的 16C5x DOS版仿真器(第一代),它也是 Microchip 第一个 OEM 仿真器厂,Microchip 当时还隶属于 通用电子厂的子公司 -- 高雄电子厂,我当时也买一部仿真器,约人民币壹万五千元,16C5x 当年为最省电的OTP、QTP 单片机,价格又比其它的单片机便宜,只是它很容易受干扰死机,很多大厂不敢使用它,pic 我学了几个月后,有一天,有位朋友要我 兼差 帮他们公司设计汽车防盗器,当时市场上的汽车防盗器都还用 CD40xx的逻辑电路去设计,各个时控都须一组 RC 电路,电路板上十几个 IC (加上遥控解码 IC),至少有 7~8 个 VR,调整时 非常复杂,当时我就以 一个 16C55 + 一个 ULN2003 + 一个 解码 IC (当时技术未成熟,还没用 PIC 程序解码,后期的 已将 解码 IC 省略),总计三个 IC就解决,电路方面 有某些是依书本上的电路移植过来(重置电路也由一本 PIC 应用的书本移植过来),样品出来后,当时对方存着很多疑问,电路怎么这样简单,同时间内有4、5个'计时器'在计时,又要做那么多的 I/O 侦测工作,时控能准确吗? 性能如何呢? 稳定性? ....... 总体而言, CPU所设计的电路, 对于功能-绝对是比 逻辑电路所设计的好太多了,时控的准确性-我为它保证所有的时控误差在 1% 之内, 至于稳定性 ---- 当时的样品时常当机、死机,CPU 发烫,也就是大家所谈的 ‘ PIC 的硬件死锁’。............


为了此问题(大家最怕的问题),找遍所有的资料,都毫无所获,在PIC的书上都没有看到类似讯息,只好自己 单打独斗 的 去奋斗、去找原因,我发了几天的时间,模拟了各种状况,做了各式各样的实验,制造各种干扰,用示波器测量各点所发生的异常波形,其中一个简单的实验,(/MCLR 的接脚上,接一个提升电阻至 V+,接一个 0.1uf 至地,接一个'按键开关'至地),让我得到一个我所须要的答案,实验时 我多次的按 '按键开关',应该只是'重置'而已,但很容易进入 所谓的 ‘硬件死锁’,连续测试,都会重覆发生,机率非常高,最后得到一个答案,PIC 晶片的 MCLR 硬件设计有问题,与其他 I/O 脚无关联,不是 I/O 脚受干扰, 而是 /MCLR 在重置或受干扰时,/MCLR 脚 会产生一个 振荡信号,当 /MCLR 脚的外部接有电容时,它就永在发振,而PIC晶片内部某种硬件原因,导致于 VDD 与 VSS 之间 产生很大的电流,所以 VDD 与 VSS 像短路一样,CPU 因而发烫,当把电容移开后, CPU 就重新工作,耗电流也就恢复正常了,所以我就认为 PIC 它不是 硬件死锁 ,它没有 “CMOS的可控硅效应”,可能是大家还没找出原因,而怀疑是 PIC内部 “CMOS的可控硅效应”。而此问题解决方式,我当时也反应给 Microchip 公司反应,之后 Microchip 晶片内部有无修改 就 不得而知。


问题找出之后,赶紧通知 '汽车防盗器制造公司',修改了硬件电路,顺利的将 PIC 控制的 '微电脑汽车防盗器'上市,这也就是 台湾 第一部由 CPU 控制的 汽车防盗器 (这是我朋友所说的),之后,其他公司也深受压力,赶紧跟于后面,使出各种方法 陆续的推出 '微电脑汽车防盗器',而我以后所做的 PIC 控制电路,也就不曾有过 ‘硬件死锁’。


结尾 给大家一个建议,一般书本上的电路图及程序,有很多错误,只让你去参考,不能太过于信任,要多参考几样,不要原版照抄,否则出问题 也无法解决。

关键字:PIC  硬件死锁  工控电路 引用地址:简述PIC硬件死锁问题

上一篇:HI-TECH PICC 编译器如何生成库文件
下一篇:PIC单片机的抗干扰能力强还是AVR单片机的强

推荐阅读最新更新时间:2024-11-17 10:06

PIC单片机设计的SPWM控制技术
本文采用软硬件结合设计的方法,利用面积等效法,并且基于PIC单片机实现对试验逆变系统的SPWM控制。 目前SPWM的产生方法很多,汇总如下: 1)利用分立元件,采用模拟、数字混和电路生成SPWM波。此方法电路复杂,实现困难且不易改进; 2)由SPWM专用芯片SA828系列与微处理器直接连接生成SPWM波,SA828是由规则采样法产生SPWM波的,相对谐波较大且无法实现闭环控制; 3)利用CPLD(复杂可编程逻辑器件)设计,实现数字式SPWM发生器; 4)基于单片机实现SPWM,此方法控制电路简单可靠,利用软件产生SPWM波,减轻了对硬件的要求,且成本低,受外界干扰小。 在UPS等电力电子设备中,控制方法是核心技术。早期的控制方
[单片机]
<font color='red'>PIC</font>单片机设计的SPWM控制技术
MOS管使PIC单片机不能正常运行
程序: #include led.h void InitLed(void) { TRISB &= ~0x70; ANSELB &= ~0x70; } void LedBlink(void) { u8 i; for(i=0;i 3;i++){ LED0 = 1;LED1 = 1;LED2 = 1; delay_10ms(400); LED0 = 0;LED1 = 0;LED2 = 0; delay_10ms(400); } } void main() { InitLed(); LedBlink(); while(1) { LED
[单片机]
MOS管使<font color='red'>PIC</font>单片机不能正常运行
PIC 单片机485通信 接收机
#include pic.h #include math.h #include stdio.h #define uchar unsigned char #define uint unsigned int __CONFIG(WDTDIS & HS & PWRTDIS & BORDIS);//设置配置位 // WDTDIS : disable watchdog timer // LVPDIS : low voltage programming disabled // HS : high speed crystal/resonator // PWRTDIS : disable power up timer // BORDIS
[单片机]
PIC单片机开发需了解的简单问题
简介:PIC单片机在国内日益流行,本文介绍Microchip PIC系列单片机开发过程中软、硬件设计的一些经验、技巧。 由美国Microchip公司生产的PIC系列单片机,由于其超小型、低功耗、低成本、多品种等特点,已广泛应用于工业控制、仪器、仪表、通信、家电、玩具等领域,本文总结了作者在PIC单片机开发过程中的一些经验、技巧,供参考。 1 怎样进一步降低功耗 功耗,在电池供电的仪器仪表中是一个重要的考虑因素。PIC16C××系列单片机本身的功耗较低(在5V,4MHz振荡频率时工作电流小于2mA)。为进一步降低功耗,在保证满足工作要求的前提下,可采用降低工作频率的方法,工作频率的下降可大大降低功耗(如PIC16C××在3V
[单片机]
PIC单片机定时中断
#INCLUDE P16F877.inc ORG 000H GOTO A1 ORG 004H;定时中断入口地址 GOTO ZD01; ORG 0CH A1 MOVLW 1;位1显示数 MOVWF 50H; MOVLW 2;位2显示数 MOVWF 51H; MOVLW 3;位3显示数 MOVWF 52H; MOVLW 4;位4显示数 MOVWF 53H; MOVLW 4;显示位数 MOVWF 40H; MOVLW B'00000001';位码 MOVWF 41H; MOVLW 50H; MOVWF FSR ;间接寻址 BSF ST
[单片机]
采用PIC单片机芯片的三相半控整流电路设计
  三相半控整流桥电路结构是一种常见的整流电路,其容易控制,成本较低。本文中介绍了一种基于 PIC690单片机与专用集成触发芯片TC787的三相半控整流电路,它结合专用集成触发芯片和数字触发器的优点 ,获得了高性能和高度对称的触发脉冲。它充分利用单片机内部资源 ,集相序自适应、系统参数在线调节和各种保护功能于一体,可用于对负载的恒电压控制。主电路采用了三相半控桥结构,直流侧采用LC滤波结构来提高输出的电压质量。      系统总体设计   本系统通过PIC690单片机作为主控制芯片,用晶闸管作为主要开关器件。设计的目标是保持输出的直流电压稳定,输出电压纹波小,交流输出测电流THD较低,性能可靠。   系统主要电路包括:三相
[单片机]
采用<font color='red'>PIC</font>单片机芯片的三相半控整流<font color='red'>电路</font>设计
PIC单片机扩展8255A并口
#include p IC .h __CONFIG(0x3B31); #define A0 RB0 #define A1 RB1 #define CS RB2 #define LE RD0 #define WR RD6 #define RD RD7 const unsigned char tab ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff};//0-F-全灭-共阳极 数码管 unsigned char tmp ={0,0,0,0,0,0,0,0}; void delay1ms(unsigned i
[单片机]
PIC: 在中国电源管理芯片领域的持久战
我的父母都是大陆培养的第一届半导体毕业生。与王阳元院士、中国半导体协会的俞忠瑜理事长等是同班同学。我在孩童期间就曾有幸见识过王守武、王守觉等院士的风采,也深为这些大师的学养和谦虚的精神所折服。有这些让我高山仰止的前辈在,本无能力也无胆量来谈论方向性的问题。只是近日无论是朋友聚会、还是平日闲聊,实实在在感受到本土的集成电路设计圈子中的一种悲观、迷茫、甚至绝望的气氛。不觉想说说自己的一管之见。由于个人从未接触过电力电子或电源管理之外的课题,所述也仅限电源管理IC (以下简称PIC) 的范畴。 中国的IC设计业曾经经历了几家公司冲上纳斯达克前后的小小辉煌,恰似台儿庄之后速胜论的抬头。随后我们听到的仿佛都是坏消息:IC价格下
[焦点新闻]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved