基于单片机的TTL集成电路芯片测试仪的设计(20210315221927)_第1页
基于单片机的TTL集成电路芯片测试仪的设计(20210315221927)_第2页
基于单片机的TTL集成电路芯片测试仪的设计(20210315221927)_第3页
基于单片机的TTL集成电路芯片测试仪的设计(20210315221927)_第4页
基于单片机的TTL集成电路芯片测试仪的设计(20210315221927)_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1摘要集成电路(IC)测试是伴随着电子技术的发展而来的,数字集成芯片在使用 过 程中容易被损坏,用肉眼不易观察。早期的人工测试方法对一些集成度高,逻辑复杂的数字集成电路显得难于入手,因而逐渐被自动测试所取代,因此很需要 设计一 种能够方便测试常用芯片好坏的仪器。本系统以单片机AT89C5为核心,由芯片测试插座、独立按键、 74HC573区动8位 数码管显示、5V直流电源控制模块等组成。根据数字集成芯片的引脚特性以 及集成 芯片的真值表编写测试程序。该系统能完成 14脚以内常用 TTL74、 54系列数字集成芯 片的功能测试。关键字:测试仪;数字集成电路;单片机2ABSTRACTIntegrat

2、ed circuit (IC) test is accompanied with the development of electronic tech no logy. Digital in tegrated chip is easily damagedduri ng use, and difficult to observe with the naked eye. Early manual test methods for some high integration, the logic of complex digital integrated circuits become diffic

3、ult , thus gradually replaced by automated testing, so it is necessaryto design a testing instrument to distinguish the Common chips is good orbadc onvenien tly.The system is with AT89C52 microcontroller at the core, including the chip test socket, the independentbutton, 74HC573rives an 8-bit digita

4、l display, 5V DC power supply control module and other components, etc. According to the characteristics of digital IC pins and the truth table write integrated chip test program. The system can be completedwith in 14 feet com mon TTL74, 54 seriesdigital in tegrated chipf un cti onal test.Keywords:

5、tester; digital integratedcircuit; microprocessor control unit33.4.2 独立按键扫描程序3.4.3.1174HC573 控制数码管显示程目录1 系统总体方案 .12系统硬件电路设计. 22.1硬件系统电路原理框图 .22.2硬件系统电路各模块设计 .22.2.1 MCS-52单片机最小系统.22.2.2独立按键模块 . 32.2.3芯片测试模块 . .42.2.4显示模块. 52.2.5电源供电模块 . 73系统软件设计. 83.1测试对象TTL74系列芯片简介 .83.2测试原理. 83.3程序流程图. 93.4模块程序关键代

6、码. 113.4.1主程序. 11序.153.4.4信号检测程序.174 系统仿真测试 . 19总结.21致谢.22参考文献.23附录.24附录A源程序 .24附录B元件清单 .35436附录C整体电路图-1 系统总体方 案在数字集成电路的设计、制造和应用阶段,不可避免地会出现故障,为了保 证 数字集成电路工作的可靠性,需要对其进行必要的测试。设计门电路自动测 试仪目 的在于能够方便检测数字集成芯片的好坏。然而,由于常用的 TTL 系列芯片种类繁多,不同型号的数字集成芯片其逻辑功 能不同、引脚排列不同、甚至哪些引脚作为输入,哪些引脚作为输出都不固定,也就是说,某个型号的集成芯片的其中一只引脚是

7、输入脚,而另一个型号的集成芯片的同一只引脚却可能是输出脚了。在进行硬件电路设计时,必须要有这样的接口电路:和集成芯片引脚连接的检测端口既可作为输入,又可作为输出。正由于上述原因,本方案设计一套数字集成电路测试装置,能够实现对指定 几 种14脚常见的 74系列数字电路测试。芯片有 74LS00、74LS04、74LS20、74LS74、74LS86。对数字系统进行测试基本方法是:从数字集成电路的原始输入端施加若干输入矢量作为激励信号,观察由此产生的输出响应,并与预期的正确结果进行比较 ,一致则表示芯片完好,不一致则表示芯片有故障。因此判断一个集成电路芯片是 否存在故障,可用该芯片被检测出来的功能

8、是否同设计规范的功能一致来判断。要 让测试结果直观明了,就需设计一个显示模块显示对应测试结果,在此系统中我选 用8位数码管来显示芯片型号和两个发光二极管显示测试结果。此外,由于集成芯片 的型号不同,为了提高测试的效率,还需设计一个独立按键模块用于输入检测芯片 的型号,方便操作。综合以上所涉及的几个问题,完整的门电路自动测试仪应包括按键输入模块 , 显 示模块,芯片测试插座模块,结合单片机最小系统来加以控制。在确立硬 件结构 的基 础上,结合软件完成。软件部分主要由数据检测程序和显示驱动程序, 以及按 键子程 序三大部分组成。在设计过程中,首先使用 Protel和Hoteus仿真软件作为开发 平

9、台来 进行硬件电路的设计,并运用软件 Keil uVision编写程序完成系统的仿真实现,结合软、硬件完成系统的整体调试。2他片料4芯片 测试 接口 口显ZF4接口显示2系统硬件电路设计2.1硬件系统电路原理框图该测试系统的原理框图如下图1所示图1测试仪原理框图此次所设计的数字集成电路检测系统由单片机控制单元,独立按键输入单元,信号检测单元,数码管显示单元和电源供电单元组成。2.2硬件系统电路各模块设计221 MCS-52单片机最小系统MCS-52单片机内部主要由CPU,存储器,可编程I/O 口,定时器/计数器, 串行口,中断控制系统,时钟电路等组成。52系列单片机应用广泛,成本低,控 制应用

10、等电路成熟。此系统中,我选择单片机 AT89C52最小系统进行控制,它的3cVCVC - Q fLfLJnH5050pl 224A-UEHL令f.ALEAP1.0H2 PI inJEX:一D6a:gPO、P1、P2、P3端口是准双向I/O 口:既可作为输入口,又可作为输出口 ,为信号 的检测控制奠定了重要的基础。其连接如图 2所示。AT84C52图2AT89C52单片机最小系统单片机在电路中起到控制整个系统的作用,无论是信号检测,还是数码管显示,都通过编程完成控制。2.2.2独立按键模块采用独立按键的优点是控制程序和硬件电路都很简单,缺点是如果每个按键都要占用一个I/O 口,当按键较多时占用I

11、/O 口较多。但考虑到本次设计只需要 三个按 键:检测型号键、复位键、自动检测键。因此在实际的测试中分别对应P3.0P3.1P3.2通过按键查询就可以简单的起到控制输入的目的。值得注意的是,在用单片机对按键处理的时候涉及到了一个重要的过程,那就是按键的去抖动。当用手按下一个键时,按键并不会立刻稳定地接通,在释放一个键时,也不会立刻断开。因而在闭合和断开的瞬间都会伴随着一连串的抖动。抖动的持续时间随按键材料和操作员而异,不过通常总是不5-10ms。这种抖动对于单片机来说是完全可以感觉到的,所以必须消除抖动。通常有两种方法可以消除 抖动,R110kVI 3HTAL1FO.DADL PC VAD1

12、P0.2JAD2 PD.如 J R1J.4/AD4 PO.EJAQfi H t.AH6 rc.7JAD?XTAL)P2.CUABP2 VA9 FZ.atfti o 3时P2咖2 P2 5/A13K沁 p?r/Ai sP3 0RbP3.1/TX2PM.环而 P3 3flNTTlP3JJT0P3.5/T1円6佩F3,7届vcc?ESPACkIf-2- 1 1 2 2 3 3 4 4Di2 24XTAL1XTAL2RSTPC.OUADOJPO.UAD1PC.3/AD3P0.4JAD4F0.5JAD6PC.6JAD6PO.7/AD7P2.O/A0fF2.WA9P2 2/A1UP8ENP2.3/A11A

13、LEP24/A12EAP2.5/A13P2 &/A14P2.7/A15P1 OrT2P3WRXDP1 1XT2EXP3.1/TXDP1 2P3.3flMT0P1P3.3flNT1PI 4ps.4mP1 P3.6/T1P1 fcP2.6MTRP1 7P3.7/RD4 *7 忆一种是硬件方法,需要硬件电路,另一种是软件方法,用软件方法可以很容易地解决抖动问题,只需通过延迟10ms来等待抖动消失这之后,在读入按编码值。所以, 我们采用软件消抖法。独立按键电路如图 3所示。2.2.3芯片测试模块结合单片机的I/O 口使用情况,以及设计的局限,在该系统中我选用了16脚的通用IC紧锁座作为芯片测试插座,能

14、够测试14脚以下的常用数字集成芯片。根据AT89C52中P0 口与P2 口的特点,本设计采用 AT89C52的P1 口和P2 口连接测 试芯片接口,单片机的 P0 口的P0.0 P0.7, P2 口中的P2.0 P2.5共14条通用I/O 线和检测插座构成了检测电路,其中, P2 口中P2.7用于控制14管脚电源地转换, 因为规则芯片的右上脚都为电源(Vcc),左下脚都为地(GND)。测试插座优先考虑14 脚的通用测试情况。单片机与测试插座之间的连接如图4所示。109I-L432 :10.;20亠违!25 ; py12 ; li :li:_HiAl圈凶-OHey;=li誣识别o o -key3

15、-I ErTheyl确认图3独立按键与单片机连接图O 1 I5L-1 RL丄VCCkXTALIifUUFOOiZO F51AC1 PQ.W2 丸袈心 PO 4ATK FQADS P0 6AD6 FQP2.Q/ASP2 2ZX1D 毗3魚1 P2412P2G/A13P2?i*l5R1 &?;.F3.1O4 _?r 仃P3iSlT PJ (/TO 的 5/Tl 円引更 P37/PD儿32补腳Z?P?S324站P占图4 单片机与测试插座连接图在单片机与紧锁座之间需串接470Q (或510Q)的电阻。串接电阻目是对AT89C5起限流保护作用,假设,P2.0输出高电平,此时,测试芯片又为非门,那么 将引

16、起灌电流现象,致使P2.0 口线上电流非常大,对AT89C5有害。2.2.4显示模块(1)数码管显示模块在系统中,由于系统的独立按键模块和测试插座模块已经使用了单片机的P1,P2和P3 口,只剩下一组I/O 口可供选择。74HC573是8数据锁存器。主要用于 数码管、按键等的控制,至此,我选用一块芯片74HC573直接控制8位数码管。有效的节省了单片机的I/O 口的使用,极大地简化了硬件电路。由 5片芯片74HC573 和4个7段共阴极数码管构成了显示电路,用于向用户提供按键输入信息及输出检测结果等。通过单片机的三个I/O 口来控制信号输入。74HC57与 AT89C5单片机的硬件连接如图6所

17、示,74HC57锁存器的数据输入端 连接单片机的P0口,P0口同时加了上拉电阻,数码管中的 C1,C2, C3, C4是它们的 位选端。14押盯试芯片插飓1L._ 12.ja9-pO Q-CI剧- - -吋62JJJ4ZO丁电口 11厂UEMWC57JYEJC”丄tEXTj图6 74HC573驱动8位数码(2)发光二极管显示模块为了使测试结果直观明了,分别在单片机的两个 I/O 口 P3.6和P3.7分别串接 两分别显示芯片好坏两种状态,发光二极管与单片机连接图个红、绿色发光二极管连接图如图7所示。SESSiSSgsJ43hS8色C3EtIC IS?4HC57-31EXT?-7卜5LJiiQ

18、-Mccs2 -图7发光LED指示灯与单片机连接图2.2.5电源供电模块在该设计系统中,所需电压都为直流 5V,它由电源变压器,桥式整流电路(4 个二极管D1D4构成),滤皮电容,防止自激电容和一只固定式三端稳压器 (LM7805)极为简捷方便地搭成的,为了保证输入LM7805电压的稳定性,在7805 之前我使用一只7812保证电流稳定输入12V。如图8所示,220V交流电通过电源变压 器变换成交流低压,再经过桥式整流电路 BR和滤波电容C6的整流和滤波,在固 定式三端稳压器LM781和LM7805勺Vin和GN两 端形成一个并不十分稳定的直流电压(该电压常常会因为市电电压的波动或负载的变 化

19、等原因而发生变化),此直流电压经过LM781和 LM7805勺稳压和C4,C5的滤波便在 稳压电源的输出端产生了精度高、稳定度好的直流输出电压。图8220V转5V直流电源连接图LM780用来给单片机等其它芯片供电,整流电路后的 C6为滤波电容,容量较 大, 输出端电容C4 C5主要是抑制高频干扰,此外还在两个稳压块中加散热片。3系统软件设计软件设计包括主程序模块,按键控制模块,芯片信号检测模块和数码管显示模块 等,下面将逐一介绍各个模块的详细设计过程。由于测试芯片种类繁多,在进行程序设计时首先需要分析常用数字集成芯片的一些规律,便于编程控制。TTL7係列作为两大主流集成芯片,地位和作用极其重要

20、,基于此,接下来就对测试对象中的常用系列数字集成电路进行分析。3.1测试对象TTL74系列芯片简介TTL电路以双极型晶体管为开关元件, 所以又称双极型集成电路,74系列的工作O厂fi-口8环境温度规定为O-70C,电源电压的工作范围为5V士5%。此外,为满足用户在提高工作速度和降低功耗这两方面的要求,继TTL74 54系列之后,又相继研制和生产了 74H系列、74S系列、74LS系列、74AS系列和74ALS系列, 以 及54H系列、54S系到、54LS系列、54ASS列和54ALS系列,就像74系列和54系列的 区别 那样,它们之间的区别也仅在于工作环境温度与电源电压工作范围不同。据于 设计

21、的局限及考虑到程序的繁琐,表1列举了 14脚以内的要测试TTL74芯片,本设计 中只实现 对指定几种14脚常见的74系列数字电路测试。芯片有74LS00 74LS04 74LS20 74LS74 74LS86表1 TTL74系列芯片列表(14脚以内)序号品种代号类别名称特征引脚数17400四2输入与非门1427404六反相器1437420二4输入与非门1447474二3输入或非门OC OD1457486四2输入异或门OC143.2测试原理对于逻辑芯片的检测,我们主要实现检测芯片逻辑功能好坏亦或是确定芯片的型号,由于主控单元采用AT89C5单片机,其I/O与TTL电平完全兼容,因而直接由单 片机

22、对芯片插座的引脚进行扫描,由于是固定的14脚芯片,为了编程方便,使芯片测试引脚17分别为P1.0P1.6,引脚148分别为P2.0P2.6。实现了通过单片机输出端口模拟芯片的各种输入状态,并通过单片机读回芯片的输出结果,通过与芯 片真值表的比较即可判断芯片逻辑功能的好坏的目的。在进行芯片扫描时,必须先 将芯片的输出引脚 I/O 置为高电平,然后对 芯片的输入引脚进行各种状态的扫描,通过单 片机读回芯片的输出,再依据芯片的真值表对其输出进相比较,不一致则说明 芯片的逻辑功能发生错误,断定芯片为坏的,若芯片的输出与真值表完全相符,则 说明芯片的逻辑功能正确,可以判断为好芯片。 然后再依据所检测的结

23、果,通过单片机 对芯片的逻辑功能加以详细测试,并对结果加以显示。在自动检测的时候,为 了提高准确度,我们编写了程序,采用对同一端口两次输入再两次读回其状态的比 较方法,来对芯片好坏进行准确测试,继而返回正确的芯片型号。此次在测试过程中我选用 7400来进行系统的调试。其中, 7400为四 2输入与 非 门,在编写测试程序时,主要从以下思路入手:首先,根据测试插座与单 片机的 各 I/O 口连接情况,分别送给测试芯片各引脚送值。送值的时候是将所有可 能出现 的各 9是坏的。 当然,种逻辑情况进行组合送入至芯片输入端,而输出端都给它置 1,并根据真值表 推断出 预期的正确结果先存于寄存器中,送值结

24、束后,读取芯片输出端的值 ,判断 输出是 否与预期的值相符,若一致则继续判断另一组输入逻辑值的情况,直 至每一 组都完成后对各组结果相与,逻辑为真则表示芯片是好的,若为假表示芯片 在测试时若遇其中一组的逻辑为假,则直接判断出芯片是坏的3.3 程序流程图流程图如图 9 所示。10显禾0000 程序初始化Fb图9程序流程图11123.4 模块程序关 键 代码3.4.1 主程序 在主程序中,需要完成对各状态的初始化,如单片机引脚,寄存器的初始化 、74HC573空制数码管显示的初始化、按键扫描,信号检测等工作。主程序将根据检测芯片的型号,按键的输入提示分别完成信号的测试比较、结果显示等不同 的操作。

25、 关键代码如下所示:int main()/ 主程序reset();/ 初始化while(1)/ 不停扫描按键keyscan();return 0;/ 结束程序3.4.2 独立按键扫描程序在按键控制时采用了全扫描方式,这种方式是直接在主程序中插入按键扫描子程序,主程序每执行一次则按键检测子程序被执行一次,对按键进行检测一次。如没有按键按下,则跳过键识别,直接执行主程序;如果有键按下,则通过按键扫描子程序识别按键,得到按键的编码值,然后根据编码值进行相应的处理,处理完成在回到主程序执行。另外我们采用软件消抖法,具体代码如下所示:void keyscan(void) / 键盘扫描函数 int i;u

26、nsigned char output1,output2;if(key1=0)/ 按键 1 的子程序delayms(10);/ 延时 10msif(key1=0)while(key1=0);/ 等待按键释放k=detect();display(namek);13 if(key2=o)/ 按键 2 的子程序 delayms(10);if(key2=0)(while(key2=0);/ 等待按键释放ledR = 1;/ 灭绿 led 灯ledG = 1;/ 灭红 led 灯 display(0);/ 数码管显示为 0000 if(key3=0)/ 按键 3 的子程序 delayms(10);if(

27、key3=0) while(key3=0);/ 等待按键释放 k=detect(); / 调用检测芯片型号子程序 delayms(100);if(k=0)/ 检测芯片好坏 for(i=0;i4;i+) input1=LS00i0; input2=LS00i1;delayms(500); output1=input1&0 x3f; output2=input2&0 x3f; if(output1!=LS00i2|output2!=LS00i3) ledR= 0;time=0;break;if(output1=LS00i2&output2=LS00i3)time+;if(time=4)ledG =

28、 0;display(name0);time=0;14if(k=1)for(i=0;i2;i+)input1=LS04i0;input2=LS04i1;delayms(500);output1=input1&0 x3f;output2=input2&0 x3f; if(output1!=LS04i2|output2!=LS04i3) ledR = 0;time=0;break; if(output1=LS04i2&output2=LS04i3) time+;if(time=2)ledG = 0; time=0;if(k=2)for(i=0;i16;i+) input1=LS20i0;input

29、2=LS20i1; delayms(500);output1=input1&0 x3f; output2=input2&0 x3f;if(output1!=LS20i2|output2!=LS20i3) ledR = 0;/ 点亮红 led time=0;break; if(output1=LS20i2&output2=LS20i3) time+;if(time=16)15ledG = 0;/ 点亮绿 led display(namek);/ 显示芯片型号 time=0;if(k=4)for(i=0;i4;i+)input1=LS86i0;input2=LS86i1; delayms(500)

30、;output1=input1&0 x3f;output2=input2&0 x3f;if(output1!=LS86i2|output2!=LS86i3) ledR = 0; time=0; break;if(output1=LS86i2&output2=LS86i3)time+;if(time=4)ledG = 0;display(namek);time=0;3.4.3 74HC573 控制数码管显示程序每个数码对应一个位选端。单片机可以控制锁存器的锁存端,进而控制锁存的数据输出,这种分时控制的方法便可方便地控制任意数码管显示任意数字。 在这里我们把数码管的显示部分写成了一个带参数的函数,

31、以便以后调用,另外我 们把这个要显示的参数分离成 4个一位数。void display(uint namex)/ 数码管显示子程序16uchar qian,bai,shi,ge;qian = namex/1000;/ 千位,把一个 4 位数分离后分别送数码管 显示bai = namex%1000/100;/ 百位shi = namex%100/10;/ 十位ge = n amex%10; 个位dula1 = 1;P0 = tableqian;/ 送段选数据dula1 = 0;P0 = 0 xff;/ 送位选数据前关闭所有显示delayms(500);/ 延时 500ms dula2 = 1;P

32、0 = tablebai;dula2 = 0;P0 = 0 xff;delayms(500);dula3 = 1;P0 = tableshi;dula3 = 0;P0 = 0 xff;delayms(500);dula4 = 1;P0 = tablege; dula4 = 0;P0 = 0 xff;delayms(500);P0 = 0 xff;wela = 1;P0 = 0 xc0;wela =0;while(1)if(key1=0) break;if(key2=0) break;173.4.4 信号检测程序 在信号检测部分,我们只对指定的 74 系列门电路芯片进行功能测试(完好 / 损坏)

33、,如74LSO0 74LS04 74LS20 74LS86并且能够自动检测指定的几种74系列门电路的型号。程序设计中需要考虑到芯片的引脚识别,芯片型号的检测程 序如下:unsigned char detect(void) /14 脚芯片识 别函数unsigned char i,output1,output2;/7474 的 检测P1=0 xff;/ 初始化测试端口P2=0 xff; input1=0 x3b; input2=0 x39; delayms(100);input1=0 x3f; / 上升沿 input2=0 x3d;delayms(100); output1=input1&0 x3

34、f; output2=input2&0 x3f;if(output1=0 x1f&output2=0 x2d)return (4);18P1=0 xff;P2=0 xff;通过&0 x3f取出/7400/04/20/86 的自动检测/ 初始化测试端口for(i=0;iM;i+)input1=ICi0;input2=ICi1;delayms(500);output1=input1&0 x3f; / 将芯片逻辑结果 input1 output2=input2&0 x3f;if(output1=ICi2&output2=ICi3)input1=ICi4;input2=ICi5;delayms(500

35、);output1=input1&0 x3f;output2=input2&0 x3f; if(output1=ICi6&output2=ICi7) return(i);194系统仿真测试系统设计完成后,将74LS0 0芯片放入测试插槽中进行测试,仿真测试结果所示:(1)当按下自动检测键key3后,测试结果如图10所示。图10按下自动检测键后的 测试结果(2)当按下复位键key2后,测试结果如下图11所示20(3)按下检测型号键keyl后,测试结果如下图12所示图12按下检测型键后的测试结果从测试结果可以看出,该系统能够实现对常用的 74 系列逻辑芯片进行逻辑功 能测试,确定芯片的型号,名称,

36、逻辑表达式,是否能够正常工作。操作简 单,测 试结果准确率咼。21总结此次毕业设计是我大学四年中最为系统的一次,它有效的把所学的专业知识 与 实际结合起来。在硬件电路中较有难度的单数数码管显示单元和测试插座的 控制上, 虽然之前做实验时有涉及到关于数码管显示的一些方案,但在这次所设计的 电路中, 由于顾及单片机I/O口的使用情况,最终选取锁存器74HC57芯片来驱动控制。当然, 使用这种方法在节省单片机I/O 口的同时,也为后面的编程增加了难度,要是选用 MAX721驱动8位数码管显示,该硬件电路设计和编程都会变得简单些。此外,程序设计是本次设计的一个难点,对不同类型的芯片,由于引脚、功能不一

37、,测试程序就得具体分析。而我在编程方面的能力又非常欠缺,在编写程序时显得不知所措,在指导老师的帮助下和自己的努力下,最终得以顺利完成。由 于时间和能力有限,我此次设计只实现了系统的基本功能,测试芯片种类比较单一,在有些地方还有待于改进。例如,要增加芯片的测试种类,可以对相应的引脚分别用一个继电器来控制,实现I/O线与电源间的自动切换;在显示部分,除了显示结果简 单信息外,还可以在测试结束后,让数码管显示字符“good”或“ bad”,结果将更加直观明了。这次设计使我收获颇多,在设计的过程中屡屡碰壁,对我自己算是一次小小 的 挑战。通过对设计方案的不断整改,电路调试运行,解决了问题,使我真正 认

38、识到 知行合一的重要性。在以后的日子的我会逐渐加强这方面的能力,不断 去提高 自己。作为一个当代大学生,仅仅学习理论知识是远远不够的,这次设计给 我们提 供了一次很好的理论联系实际的机会,使得我对专业方面的基础知识有了更 深刻的 认识,为即将走上工作岗位奠定了良好的基础。22致谢大学四年的学习生活即将结束,这篇论文作为我在校期间学习的最后一份答 卷, 在这里,我要向所有关心和帮助我的老师和同学们表示衷心的感谢。在这里尤其感谢我的指导老师罗雪莲老师,她在毕业设计过程中给予我 极 大的关心和帮助。从选题到开题报告,程序的编写设计以及论文的完成,罗 老师倾 注了大量的心血。本论文的写作是在罗老师的悉

39、心指导下完成的,她为我的 毕业设 计提出了许多宝贵的建议和给出了设计思路及资料,给予了细心的指导和不 懈的支 持。对我遇到的问题,循循善诱,谆谆教导,使我的设计和论文得以如期完 成。当 进行方案的选取时和论文的检查时,罗老师给了我的仔细检查和指导及改正 ,使设 计在最短的时间里顺利完成。罗老师的这种无私的敬业精神和责任感,令人 敬佩, 在此向尊敬的罗老师表示衷心的感谢。也感谢湖南工学院所有教导过我的老 师们, 谢谢您们四年来的悉心教导与关心爱护。时光匆匆,转眼便是毕业时节,离校日期已日趋临近,毕业论文的的完成也 随 之进入了尾声。从开始题到论文的顺利完成,一直都离不开老师、同学、朋 友给我 热

40、情的帮助,在这里请接受我诚挚的谢意!在设计和论文写作过程中,我还 参考了 有很多关的书籍和论文,在这里一并向相关的作者们表示感谢。23参考文献1 康华光. 电子技术基础模拟部分(第五版) . 北京:高等教育出版社, 2006 Kang huaguang.Basic electronic technology analog part ( Fifth Edition ). Beijing: Higher Education Press,20062阎石. 数字电子技术基础(第四版) . 北京:高等教育出版社, 1989 Yan shi.fundamentals of digital electron

41、ic technology ( Fourth Edition ). Beijing: Higher Education Press,19893宁武,唐晓宇,闫晓金 . 全国大学生电子设计竞赛基本技能指导, 2009 Ning wu,Tang xiaoyu,Yan xiaojin.National Undergraduate Electronic Design Contest of Basic Skills Guide,20094郭天祥编著.51单片机C语言教程.电子工业出版社,2009 Edited by Guo tianxiang.51 singlechip C language tutor

42、ial. Publishing House of electronics industry,2009刘海涛等编著 8051单片机C语言程序设计与实例解析清华大学出版社,2009Edited by Liu haitao and so on.8051 singlechip C language program design and case analysis. Tsinghua University Press,20096 科林,孙人杰编著.TTL、高速COM手册.电子工业出版社,2004Edited by Ke lin,Sun renjie.TTL 、 high-speed COMS Handb

43、ook. Publishing House of electronics industry,200424附录附录 A 源程序#include#include #i nclude 这是头文件/*= 宏定义=*/#define M4/要测试的芯片好坏的个数#defineN8#defineinput1 P1/用于检测的引脚#defineinput2 P2#define uchar unsignedchar#define uint unsignedintsbit key仁P3P; /选择检测芯片型号sbit key2=P3A1; / 复位sbit key3=P3A2; / 自动检测sbit ledR=

44、P3A7;/*红色发光 led 接单片机 P3.7*/sbit ledG=P3A6;/*绿色放发光LED接单片机P3.6*/sbit dula4=P2A6;/声明锁存器的锁存端sbit dula1=P3A3;sbit dula2=P3A4;sbit dula3=P3A5;sbit wela =P2A7;25*/ unsigned unsigned unsignedunsignedint name=7400,7404,7420,7486,7474,7492;uchar codetable =0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07, 0 x7

45、f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;共阴极数码管编码/*= 按键的标志位 = chartime=0;/用来标示某芯片各通道检测均完好的标志位chark=0;/返回自动检测后芯片序号在已定义的数组中的序号charcodeLS0044=0 x3f,0 x3f,0 x1b,0 x1b,/74ls000 x24,0 x24,0 x24,0 x24,0 x36,0 x36,0 x36,0 x36,0 x2d,0 x2d,0 x2d,0 x2d;unsignedcharcodeLS0424=0 x2a,0 x2a,0 x2a,0 x2a,/74ls040

46、 x3f,0 x3f,0 x15,0 x15;unsignedcharcodeLS20164=0 x24,0 x24,0 x24,0 x24,/74ls200 x25,0 x25,0 x25,0 x25,0 x26,0 x26,0 x26,0 x26,0 x27,0 x27,0 x27,0 x27,0 x2c,0 x2c,0 x2c,0 x2c,0 x2d,0 x2d,0 x2d,0 x2d,0 x2e,0 x2e,0 x2e,0 x2e,0 x2f,0 x2f,0 x2f,0 x2f,0 x34,0 x34,0 x34,0 x34,0 x35,0 x35,0 x35,0 x35,0 x36,

47、0 x36,0 x36,0 x36,0 x37,0 x37,0 x37,0 x37,0 x3c,0 x3c,0 x3c,0 x3c,0 x3d,0 x3d,0 x3d,0 x3d,0 x3e,0 x3e,0 x3e,0 x3e,0 x3f,0 x3f,0 x1f,0 x1f;26unsignedchar code LS8644=0 x24,0 x24,0 x00,0 x00, /74ls860 x36,0 x36,0 x36,0 x36,0 x2d,0 x2d,0 x2d,0 x2d,0 x3f,0 x3f,0 x1b,0 x1b;unsignedchar code ICMN=0 x24,0

48、x24,0 x24,0 x24,0 x3f,0 x3f,0 x1b,0 x1b, /7400 0 x3f,0 x3f,0 x15,0 x15,0 x3f,0 x3f,0 x15,0 x15, /7404 0 x3f,0 x3f,0 x1f,0 x1f,0 x3f,0 x3f,0 x1f,0 x1f, /7420 0 x3f,0 x3f,0 x1b,0 x1b,0 x3f,0 x3f,0 x1b,0 x1b/7486;void delayms(unsignedint z)/ 延时函数unsigned int x,y;for(x=z;x0;x-) for(y=110;y0;y-);/*=14 脚芯

49、片识别函数 =*/ unsignedchar detect(void) /14 脚芯片识别函数unsignedchar i,output1,output2;/7474的检测P1=0 xff;/初始化测试端口P2=0 xff; input1=0 x3b; input2=0 x39;27delayms(100); input1=0 x3f; input2=0 x3d;delayms(100);/上升沿output1=input1&0 x3f;output2=input2&0 x3f;if(output1=0 x1f&output2=0 x2d)return (4);P1=0 xff;P2=0 xf

50、f;for(i=0;iM;i+)input1=ICi0;input2=ICi1;delayms(500);output1=input1&0 x3f;output2=input2&0 x3f;/7400/04/20/86的自动检测/初始化测试端口/将芯片逻辑结果 input1 通过 &0 x3f 取出if(output1=ICi2&output2=ICi3)input1=ICi4;input2=ICi5;delayms(500);output1=input1&0 x3f;output2=input2&0 x3f;if(output1=ICi6&output2=ICi7) return(i);28

51、29void display(uint namex)/数码管显示子程序 ucharqian,bai,shi,ge;qian = namex/1000;/千位,把一个4位数分离后分别送数码管显示 bai = namex%1000/100;/百位shi = namex%100/10;/十 位 ge = n amex%10;/个 位dula1= 1;P0 =tableqia n;/ 送段选数据dula1= 0;P0 = 0 xff;送位选数据前关闭所有显示delayms(500);/延时 500msdula2= 1;P0 =tablebai; dula2= 0;P0 =0 xff;delayms(5

52、00);dula3= 1; P0 =tableshi; dula3= 0;P0 =0 xff;delayms(500);dula4= 1;P0 =tablege; dula4 = 0;P0 =0 xff; delayms(500);P0 = 0 xff;wela= 1;P0 = 0 xc0;wela =0;while(1)if(key1=0) break;if(key2=0) break; 30int reset(void)/数码管和发光led初始化ledR= 1; /led 初始化,都熄灭ledG =1;wela= 1;/数码管初始化,显示为 0000 P0 = 0 xc0;wela= 0; dula1=1; dula2=1; dula3=1; dula4=1;P0 = table0; dula1= 0; dula2= 0; dula3= 0; dula4= 0;void keyscan(void)键盘扫描函数 int i;unsignedcharoutput1,output2;if(key1=0)按键1的子程序delayms(10);if(key1=0)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论