基于单片机的ttl集成电路芯片测试仪的设计内容摘要:
if(output1!=LS20[i][2]||output2!=LS20[i][3]) { ledR = 0。 //点亮红 led time=0。 break。 } if(output1==LS20[i][2]amp。 amp。 output2==LS20[i][3]) { time++。 } } if(time==16) { ledG = 0。 //点亮绿 led display(name[k])。 //显示芯片型号 time=0。 15 } } if(k==4) { for(i=0。 i4。 i++) { input1=LS86[i][0]。 input2=LS86[i][1]。 delayms(500)。 output1=input1amp。 0x3f。 output2=input2amp。 0x3f。 if(output1!=LS86[i][2]||output2!=LS86[i][3]) { ledR = 0。 time=0。 break。 } if(output1==LS86[i][2]amp。 amp。 output2==LS86[i][3]) { time++。 } if(time==4) { ledG = 0。 display(name[k])。 time=0。 } } } } } 74HC573 控制数码管显示程序 每个数码对应一个位选端。 单片机可以控制锁存器的锁存端,进而控制锁存器的 16 数据输出,这种分时控制的方法便可方便地控制任意数码管显示任意数字。 在这里我们把数码管的显示部分写成了一个带参数的函数,以便以后调用,另外我们把这个要显示的参数分离成 4个一位数。 void display(uint namex)//数码管显示子程序 { uchar qian,bai,shi,ge。 qian = namex/1000。 //千位,把一个 4位数分离后分别送数码管显示 bai = namex%1000/100。 //百位 shi = namex%100/10。 //十位 ge = namex%10。 //个位 dula1 = 1。 P0 = table[qian]。 //送段选数据 dula1 = 0。 P0 = 0xff。 //送位选数据前关闭所有显示 delayms(500)。 //延时 500ms dula2 = 1。 P0 = table[bai]。 dula2 = 0。 P0 = 0xff。 delayms(500)。 dula3 = 1。 P0 = table[shi]。 dula3 = 0。 P0 = 0xff。 delayms(500)。 dula4 = 1。 P0 = table[ge]。 dula4 = 0。 P0 = 0xff。 delayms(500)。 17 P0 = 0xff。 wela = 1。 P0 = 0xc0。 wela =0。 while(1) { if(key1==0) break。 if(key2==0) break。 } } 信号检测程序 在信号检测部分, 我们 只 对指定的 74 系列门电路芯片进行功能测试(完好 /损坏),如 74LS00、 74LS0 74LS 74LS86。 并且能够自动检测 指定的几种 74 系列门电路的型号。 程序设计中 需要考虑到芯片的引脚识别 , 芯片型号的检测程序 如下: unsigned char detect(void) //14 脚芯片识别函数 { unsigned char i,output1,output2。 //7474 的检测 P1=0xff。 //初始化测试端口 P2=0xff。 input1=0x3b。 input2=0x39。 delayms(100)。 input1=0x3f。 //上升沿 input2=0x3d。 delayms(100)。 output1=input1amp。 0x3f。 output2=input2amp。 0x3f。 if(output1==0x1famp。 amp。 output2==0x2d) { return (4)。 } //7400/04/20/86 的自动检测 18 P1=0xff。 //初始化测试端口 P2=0xff。 for(i=0。 iM。 i++) { input1=IC[i][0]。 input2=IC[i][1]。 delayms(500)。 output1=input1amp。 0x3f。 //将芯片逻辑结果 input1 通过 amp。 0x3f 取出 output2=input2amp。 0x3f。 if(output1==IC[i][2]amp。 amp。 output2==IC[i][3]) { input1=IC[i][4]。 input2=IC[i][5]。 delayms(500)。 output1=input1amp。 0x3f。 output2=input2amp。 0x3f。 if(output1==IC[i][6]amp。 amp。 output2==IC[i][7]) { return(i)。 } } } } 19 4 系统 仿真 测试 系统设计完成后 ,将 74LS00 芯片放入测试插槽中进行测试, 仿真 测试结果所示: ( 1) 当按下自动检测键 key3 后,测试结果如图 10所示。 图 10 按下 自动检测键 后 的 测试结果 ( 2) 当按下复位键 key2 后,测试结果如下图 11 所示。 20 图 11 按下复位键后的测试结果 ( 3) 按下检测型号键 key1 后,测试结果如下图 12所示。 图 12 按下检测型 键后的测试结果 从测试结果可以看出,该系统能够实现对常用的 74 系 列逻辑芯片进行逻辑功能测试,确定芯片的 型号,名称,逻辑表达式,是否能够正常工作。 操作简单,测试结果准确率高。 21 总结 此次毕业设计是 我 大学 四年中最为系统的一次 , 它有效的把所学的专业知识与实际结合起来。 在 硬件电路 中较有难度的 单数 数码管显示 单元 和 测试插座的控制上 , 虽然之前做实验时有 涉及到 关于数码管显示的一些 方案 ,但在 这 次所设计的电路中,由于顾及单片机 I/O口的使用情况, 最终 选取 锁存器 74HC573芯片 来 驱动控制。 当然, 使用这种方法 在节省单片机 I/O口的 同时,也为后面的编程增加了难度 ,要是选 用MAX7219驱动 8位数码管 显示 ,该硬件电路设计和编程都会变得简单些。 此外, 程序设计是本次设计的一个难点, 对 不同类型的芯片, 由于 引脚 、 功能不一,测试 程序 就得具体分析。 而我在 编程 方面的能力 又 非常欠缺,在编写程序时 显得不知所措 ,在指导老师的帮助下 和自己的努力下 , 最终 得以顺利完成。 由于时间和能力有限, 我 此次设计 只实现了系统的基本功能,测试芯片种类比较单一,在有些地方还有待 于 改进。 例如,要增加芯片的测试种类,可以对相应的引脚分别用一个继电器来控制,实现 I/O线与电源间的自动切换 ;在显示部分,除了显示结果 简单 信息外,还可以在测试结束后,让数码管显示字符“ good”或“ bad”,结果将更加直观明了。 这次设计 使我收获颇多 ,在设计的过程中屡屡碰壁, 对我自己算是一次小小的挑战。 通过对设计方案的不断整改,电路调试运行 ,解决了问题,使我真正认识到‘知行合一’的重要性。 在以后的日子的我会逐渐加强这方面的能力,不断去提高自己。 作为一个当代大学生,仅仅学习理论知识是远远不够的,这次设计给我们提供了一次很好的理论联系实际的机会,使得我对 专业方面的基础知识 有了更深刻的 认识, 为即将走上工作岗位奠定了良好的基础。 22 致谢 大学四年的学习生活即将结束 ,这篇论文作为我在校期间学习的最后一份答卷,在这里,我要向所有 关心和帮助我的 老师和同学们 表示衷心的感谢。 在这里 尤其感谢我的指导老师 —— 罗雪莲 老师,她 在毕业设计过程中给予我极大的关心和帮助。 从 选题到开题报告, 程序的编写 设计 以及论文的完成 , 罗 老师倾注了大量的心血。 本 论文的写作 是在 罗 老师 的 悉心 指导下完成的 , 她为我的毕业设计 提出了许多 宝贵的 建议 和 给出了 设计思路及资料 , 给予了细心的指导和不懈的支持。 对 我遇到的 问题, 循循善诱, 谆谆教导, 使 我 的 设计和 论文得以如期完成。 当进行方案的选取时 和 论文 的 检查 时 , 罗 老师给 了 我的仔细检查和 指导及 改正, 使 设计 在最短的时间里 顺利完成。 罗 老师的这种无私的敬业精神和责任感,令人敬佩, 在此向尊敬的罗老师表示衷心的感谢。 也 感谢 湖南工学院 所有教导过我的老师 们 ,谢谢 您们 四年来的悉心教导与关心爱护。 时光匆匆,转眼便是毕业时节,离校日期已日趋临近,毕业论文的的完成也随之进入了尾声。 从开始题到论文的顺利完成,一直都离不开老师、同学、朋友给我热情的帮助,在这里请接受我诚挚的谢意。基于单片机的ttl集成电路芯片测试仪的设计
相关推荐
建模方式便于容纳多种技术,使网络规范与具体实施方法无关,使规范能保持相对稳定性。 这种功能分层模型摒弃了传统的面向传输硬件的网络概念,十分用于以业务为基础的现代网络概念,使传送网成为一个独立于业务和应用的动态灵活、高度可靠和低成本的基础网,而在此基础平台之上再组建各种各样的业务网,适应各式各样的业务和应用的需要。 (二) WDM 光网络的拓扑结构
数做出计划线 ,将 GPS 接收机天线安置于挖泥船的挖泥部 ,通过计算机就可随时掌握挖泥部的位置 ,确保航道养护工程在设计挖槽内进行 ,这样 ,即提高了工程作业的效率和质量 ,又减少了测量放线的工作量。 水深测量 由于航道建设工程隐蔽性高 ,绝大部分疏浚和整治工程均在水下进行 ,工程基本上不可视 ,因此水深测量是航道建设工程测量工作的重点。 一般采用 GPS 定位
用评估后价值,由于股改时普遍评估增值较大,会大幅增加商业银行房产税负担。 (4)在进行呆账准备计提的所得税纳税调整时,缺乏对以前年度税前扣除呆账准备余额的准确定义和具体计算公式,各地税务机关执行标准各异,各银行理解也大相径庭,准确确定纳税调整数额存在困难。 (5)理财产品是近年来我国商业银行着力发展的新业务之一。 由于理财产品多数包含衍生金融工具成分
(二).程序流程图 开始 SET按下 开始计时 RESET按下 R1=0 停止计时 Y Y Y N N N (三).程序 ORG 0000H JMP MAIN ORG 0003H JMP EX00 ORG 0013H JMP EX11 ORG 001BH JMP TT1 ORG 0030H MAIN:MOV SP,60H MOV DPTR,TABLE MOV TMOD,10H MOV P1
* * * * [硬件说明 ] * * 硬件环境 AVR At=Tmega8L * * 系统时钟 8M * * * ifndef _MACRODEFINITION_H_ define _MACRODEFINITION_H_ define Open_Light_1 PORTC|=BIT(2) define Open_Light_2 PORTC|=BIT(3) define Open_Light_3
11 P2=temp。 delay(1)。 P2=0xff。 temp=_crol_(temp,1)。 P0=0x40。 P2=temp。 delay(1)。 P2=0xff。 temp=_crol_(temp,1)。 P0=0x40。 P2=temp。 delay(1)。 P2=0xff。 temp=_crol_(temp,1)。 P0=0x40。 P2=temp。 delay(1)。