IC芯片智能检测器.docx
《IC芯片智能检测器.docx》由会员分享,可在线阅读,更多相关《IC芯片智能检测器.docx(10页珍藏版)》请在冰豆网上搜索。
IC芯片智能检测器
IC芯片智能检测器
研究报告
宁夏大学物理电气信息学院王鹏
指导老师:
蔺金元教授
IC集成芯片在自动控制、无线电与通信、计算机应用、家用电器制造、机电一体化等领域,正获得越来越广泛的应用。
其中的74系列、CD4000系列集成芯片更成为两大主流芯片,每个系列较常见的芯片就有上千种型号,品种繁多。
常用的检测仪器,如万用表、欧姆表、摇表等,可以检测电阻、电容、二极管、三极管等电子元件的好坏,但要用它们来检测数字集成芯片则无能为力。
那么,应用如此广泛的数字集成芯片,有没有办法确定它们的好坏?
市面上是找不到这一类检测设备的,如果有这种检测设备,对电子技术人员、电子专业学生、电子技术爱好者等来说有很大意义。
为此作者设计并制作了“STU-I型数字集成芯片检测仪”。
本作品具有以下特点:
1.可以检测多种型号的数字集成芯片;
2.可以快速的检测出芯片的好坏;
3.将其检测功能加以利用,作为未知型号数字集成芯片的探测,可获得未知型号数字集成芯片的具体型号;
4.附加一些电子技术员常用的功能,如频率计、方波信号发生器、逻辑电平探测仪等;
5.操作简单,结果直观;
6.体积小,结构紧凑,携带方便;
7.有较强的保密性能,不易仿造;
8.成本低,可成为电子技术人员、电子专业学生、电子爱好者的常备工具,市场前景广阔。
1.基本原理
如前所述,这两个系列的芯片较常见的就有上千种之多,不同型号的数字集成芯片其逻辑功能不同、引脚排列不同、甚至哪些引脚作为输入,哪些引脚作为输出都不固定,也就是说,某个型号的集成芯片的其中一只引脚是输入脚,而另一个型号的集成芯片的同一只引脚却可能是输出脚了。
所以必须要有这样的接口电路:
和集成芯片引脚连接的检测端口既可作为输入,又可作为输出。
单片机89C51的P1、P3端口是准双向I/O口:
既可作为输入口,又可作为输出口;为检测奠定了重要的基础。
检测的基本原理是:
根据芯片的功能、引脚排列情况、以及各引脚的输入输出特性,向芯片的输入引脚发送输入信号,再由芯片的输出引脚接收输出(响应)信号,然后从输出信号的逻辑值与正确的结果是否相符来判断芯片的好坏。
2.检测仪的硬件设计
(1)主处理电路
由单片机89C51、晶体振荡器、复位电路构成了主处理电路;这部分电路作为检测仪的工作过程的“总指挥”,起着控制、计算、判断等主要作用。
(2)检测电路
单片机89C51的P1口、P3口中的P3.0—P3.5共14条通用I/O线和检测插座构成了检测电路,用来和待检测集成芯片接口。
(3)显示电路
由两片74LS273、8个9014三极管、两个4位LED(数码显示管)构成了显示电路。
用于向用户提供输入信息及输出信息、检测结果等。
(4)键盘电路
键盘包括了0—9,10个数字键和“查询”键、“功能”键;用来让用户输入要检测的芯片系列。
其操作步骤请参考《操作实例》。
(5)其它配合电路
包括了信号输入输出接口、继电器、蜂鸣器、变压器、稳压器等其它配合电路。
综合以上电路的分析、介绍,由于硬件电路设计的合理,以及选用的均是性能价格比非常高的元器件,既保证了产品质量又大大降低了整机成本。
当今的市场经济规律证明:
在激烈的市场竞争中,低成本而高质量的产品最具竞争性。
3.检测仪的软件设计
(1)概要
单片机89C51的软件用MCS-51汇编语言编制,89C51内部有4KB的FLASHROM(闪速EEPROM),所以单片机内部最多可以固化4KB的程序代码。
由于89C51具有强大的加密功能,其不可破译性保证了生产厂家的合法权益。
另外,由于检测程序的庞大,我们必须扩展程序存储器:
89C51的最大寻址空间为64KB,是绰绰有余的。
因此,作者将主处理程序和最常用芯片的检测程序固化到89C51的内部程序存储器中并加密,其它的检测程序模块则存储在扩展的外部程序存储器中。
这样,就算外部存储器中的程序被非法盗取也没问题:
主程序已经加密,没有主程序来调用的检测程序模块是没有任何意义的。
(2)程序流程图
程序流程图见附图3。
(3)检测程序模块的设计举例
(1)门电路集成芯片的检测
门电路集成芯片的检测比较简单,一般来说,一片门电路集成芯片包含若干个功能相同的逻辑门。
检测的时候,只需要根据芯片的功能、引脚排列情况以及各引脚的输入输出特性,向逻辑门的输入端口输入逻辑信号,再由逻辑门的输出端口接收输出信号,然后从输出信号的逻辑值与正确的结果是否相符来判断芯片的好坏。
以下程序段检测的是74LS00(4—二输入与非门):
ANLP1,#0E4H;使与非门的输入端都为
;逻辑“0”
ANLP3,#0C9H
ORLP1,#0E4H;拉高与非门输出端的
;电平
ORLP3,#09H
MOVA,P1;读入输出端的逻辑值
CJNEA,#0E4H,L00_ERR;判断输出端的逻辑
;值是否都
;为逻辑“1”,如果不
;为逻辑“1”,则为
;“坏芯片”处理
MOVA,P3
ANLA,#3FH
CJNEA,#09H,L00_ERR
.
.
.
L00_GO:
AJMPEND1;通过了所有步骤的
;检测,是好芯片
L00_ERR:
CLR72H;清除“好芯片”标志位
AJMPEND1
从程序段可以知道,检测门电路集成芯片,可以直接利用其真值表来判断。
(2)组合逻辑电路集成芯片的检测
组合逻辑电路芯片在检测的时候,只需要根据逻辑器件的功能、引脚排列情况、以及各引脚的输入输出特性,向输入端口输入逻辑信号,再由逻辑门的输出端口接收输出信号,然后从输出信号的逻辑值与正确的结果是否相符来判断芯片的好坏。
以下程序段检测的是74LS138(3—8译码器)。
L138_1:
ORLP1,#0F8H;向通用I/O口P1送逻辑值,
ORLP3,#3FH;再向通用I/O口P3送
;逻辑值,使芯片为
;“不选通”状态。
MOVA,P3
MOVC,P1.7
MOVACC.7,C
MOVC,P1.6
MOVACC.6,C;把所有的输出值送到
;累加器A。
CJNEA,#0FFH,J138_ERR;判断累加器的值是否
;正确,不正确则
;作为“坏芯片”处理。
.
.
.
ORLP1,#0E0H;往P1口送逻辑值,
ANLP1,#0E0H;使芯片为“选通”状态
;且输入值ABC=“000”。
MOVA,P3
MOVC,P1.7
MOVACC.7,C
MOVC,P1.6
MOVACC.6,C;将所有输出值送到
;累加器A。
CJNEA,#0DFH,J138_ERR;判断累加器的值
;是否正确,不正确
;则作为
;“坏芯片”处理。
.
.;继续检测,令ABC
.;为其它值
L138_GO:
AJMPEND1;通过了所有步骤的
;检测,是好芯片
L138_ERR:
CLR72H;清除“好芯片”标志位
AJMPEND1
(3)时序逻辑电路集成芯片的检测
时序逻辑电路由于其输出不仅和当时的输入逻辑状态有关,而且还和电路过去的状态有关。
另外,一般的时序逻辑电路集成芯片都具有一个或若干个时钟输入端,由于检测程序段中会多次使用时钟输入,为了编出可靠性高、结构紧凑的模块化程序,节约单片机中的程序存储器、数据存储器空间,编程的重点是:
将多次重复的部分合并为独立的子程序模块,多个子程序、中断程序嵌套时,事先要估计好堆栈段的大小,划分出足够的堆栈空间;认真分析时序逻辑器件的功能、引脚排列情况、以及各引脚的输入输出特性,根据芯片的功能表来进行时序逻辑操作,最后从输出信号的逻辑值与正确的结果是否相符来判断芯片的好坏。
以下程序段检测的是74LS164(8位移位寄存器)。
CLK164:
CLRP3.1;时钟发生子程序,
;状态:
时钟产
;生下降沿
NOP
NOP;空操作以产生延时效果
SETBP3.1;状态:
时钟产生
;上升沿
RET;子程序调用返回
L164_1:
ORLP3,#3FH;P3口送初值
ORLP1,#0FFH;P1口送初值,芯片
;状态清零
MOVA,P3
MOVC,P1.2
MOVACC.0,C
MOVC,P1.3
MOVACC.1,C
MOVC,P1.4
MOVACC.6,C
MOVC,P1.5
MOVACC.7,C;全部输出值送到
;累加器A
CJNEA,#00H,L164_ERR;判断输出是否为
;全“0”,不正确
;则作为
;“坏芯片”处理。
ANLP1,#0FCH;向输入端送“0”
ACALLCLK1;调用“时钟发生
;子程序”
ORLP1,#03H
ACALLCLK1;再一次调用
;“时钟发生子程序”
ANLP1,#0FFH
ACALLCLK1;再一次调用
;“时钟发生子程序”
.
.
.
ORLP1,#03H
ACALLCLK1;再一次调用
;“时钟发生子程序”
.
.
.
CJNEA,#55H,L164_ERR;判断累加器的值
;是否正确,不正确
;则作为
;“坏芯片”处理。
.
.;继续检测
.
L164_GO:
AJMPEND1;通过了所有步骤的
;检测,是好芯片
L164_ERR:
CLR72H;清除“好芯片”标志位
AJMPEND1
4.应用举例
1.检测74LS125(四总线缓冲门)、74LS04(六反相器)、CD4011
(四2输入与非门)各一片:
检测步骤:
(先以检测74LS125的全过程为例)
(1)接通检测仪的电源,数码管显示:
表示检测仪已经处于“等待输入”状态,可以按下键盘上的“1”键进行74系列数字集成芯片的检测,或按下键盘上的“2”键进行CD系列数字集成芯片的检测。
(2)按下“1”键,数码管显示:
提示用户输入要检测的芯片型号。
这时可以把芯片74LS125按下图位置放入检测槽中:
然后依次按下键盘上的“1”、“2”、“5”。
(3)接下来数码管将以下图来表示芯片的检测进度:
(4)最后,数码管将以下面三种显示方式来直观的表示“芯片是好的”、“芯片是坏的”、“对不起,芯片型号不存在或无法检测”:
表示“芯片是好的”
表示“芯片是坏的”
表示“对不起,芯片型号不存在或无法检测”
(5)这时按下“功能”键可以退出检测程序退回到“步骤
(1)”,按下“查询”键将自动再检测当前型号芯片。
对于74LS04,它在检测过程中与74LS125所不同的是:
芯片型号的输入数字位数不相等。
所以在“步骤
(2)”的芯片型号输入过程中应该依次按下键盘上的“0”、“4”、“查询”。
对于CD4011,在“步骤
(2)”的开始应选择键盘上的“2”键,数码管将显示:
提示用户输入要检测的芯片型号,这时可以把芯片CD4011放入检测槽中,然后依次按下键盘上的“0”、“1”、“1”进行检测。
2.检测一百片CD4076(四D型寄存器)
第一片的检测步骤和CD4011相同,第二片起就只需要从检测槽上更换芯片,再按下“查询”键就可以了,节约了其它的步骤。
由此可见,在数字集成芯片的批量检测上,“数字集成芯片检测仪”更表现出其“操作简单、检测速度快、结果直观”的优点。
附加功能:
“数字集成芯片检测仪”除了具备以上检测功能之外,还附加了以下功能:
仪器接通电源之后,显示
这时如果不按“1”键或“2”键,而是按动“0”键(翻页),则会依次显示以下菜单:
(查询未知数字集成芯片的具体型号)
(计数器功能)
(频率计)
(方波信号发生器)
(逻辑电平探测功能)
当处在某个菜单时,按下“查询”键可选中该功能,具体的操作说明请参阅“数字集成芯片检测仪操作说明书”。
6.结束语
IC芯片智能检测器的开发制作已经基本完成。
随着我国集成芯片行业的快速发展,将会有更多的人使用数字集成芯片。
事实将证明:
“IC芯片智能检测器”最终会和万用表一样成为小规模电子工厂、集成芯片供应商、电子器件店、电子技术工作人员、教学实验室、电子爱好者等单位或个人的必备工具。
[参考文献]
[1]清华大学电子学教研组编.阎石主编.数字电子技术基础(第四版).北京:
高等教育出版社,1998年.
[2]孙涵芳,徐爱卿.MCS-51/96系列单片机原理及应用(修订本)。
北京:
北京航空航天大学出版社,1996年.
[3]何立民.mcs-51系列单片机应用系统设计.北京:
北京航空航天大学出版社,1990年.
[4]周航慈.单片机应用程序设计技术.北京:
北京航空航天大学出版社,1992年.
[5]胡汉才编著.单片机原理及其接口技术.北京:
清华大学出版社,1996年.
[6][美]J.马库斯.电子电路大全,卷5数字电路.北京:
计量出版社,1985年.