毕业设计课题——数字集成电路测试仪_第1页
毕业设计课题——数字集成电路测试仪_第2页
毕业设计课题——数字集成电路测试仪_第3页
毕业设计课题——数字集成电路测试仪_第4页
毕业设计课题——数字集成电路测试仪_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

2011 年绍兴文理学院校大学生电子设计竞赛 数字集成电路测试仪 参赛组别参赛组别 小组成员小组成员 2011 年 6 月 5 日 2011 年绍兴文理学院校大学生电子设计竞赛 1 目录目录 一 任务一 任务 2 二 方案设计与论证比较二 方案设计与论证比较 2 2 12 1 显示模块显示模块 2 2 22 2 输入模块输入模块 3 2 32 3 电源模块电源模块 3 2 42 4 继电器模块继电器模块 3 三 芯片检测的基本原理三 芯片检测的基本原理 3 四 系统的整体设计四 系统的整体设计 3 五 系统功能测试及结果五 系统功能测试及结果 4 5 15 1 测试方法测试方法 4 5 25 2 测试结果测试结果 4 六 设计过程总结与体会六 设计过程总结与体会 4 参考文献参考文献 5 附件一附件一 系统电路图系统电路图 5 附件二附件二 实物照片 实物照片 6 附件三 附件三 7 2011 年绍兴文理学院校大学生电子设计竞赛 2 摘要 摘要 在当今社会中 电子技术发展迅速 数字集成电路的应用广泛 而 74 系列逻辑芯片在 数字电路中又有着非常广泛的应用 因而数字电路设计中必须要求所用的数字电路芯片逻 辑功能完整 但在数字电路芯片测试中又有很多不便 实际测试较繁琐 针对上述需要 我们针对常用的 74 系列逻辑芯片设计了一种数字电路芯片测试仪 用来检测常用 74 系列 芯片的型号和逻辑功能的好坏 从而给数字电路的设计 制作带来方便 关键词 关键词 74 系列逻辑芯片 AT89C52 自动识别型号 一 任务一 任务 设计一套数字集成电路测试装置 能够实现对指定几种 14 脚常见的 74 系列数字电路 测试 芯片有 74LS00 74LS04 74LS20 74LS74 74LS86 74LS92 基本要求 1 设计数字集成电路测试仪器硬件 包含自制电源 MCU 控制电路 键盘 显示器等 2 能够对指定的 74 系列门电路芯片进行功能测试 完好 损坏 74LS00 74LS04 74LS20 74LS86 发挥部分 1 能够自动识别指定的几种 74 系列门电路的型号 74LS00 74LS04 74LS20 74LS86 2 能够自动识别指定的 74 系列触发器 计数器电路的型号 74LS86 74LS92 二 方案设计与论证比较二 方案设计与论证比较 2 12 1 显示模块显示模块 显示模块主要实现对芯片检测结果的显示 包括芯片型号及芯片功能是否完好 同时 也要给用户提供必要的提示信息 提高系统界面的友好性 2 1 1 方案一 采用数码管显示 由于所有芯片均为 74 系列 因而只显示最后两位编号即可实现对芯片型号的显示 但 由于数码管显示效果较差并且动态扫描时会占用很多 CPU 时间 因而舍弃该方案 2 1 2 方案二 采用点阵显示 采用有二极管构成的 16 16 点阵 通过主控单元的控制可以实现汉字及英文字符的显 示 可以显示芯片型号以及芯片功能完整性 采用点阵显示的优点是显示内容可以随意控 制 显示内容丰富 但点阵显示也存在占用 I O 口较多并且会占用大量 CPU 时间的缺点 另外 在使用点阵显示是还要存储大量的字模信息 而由于本系统需要扫描大量的逻辑芯片 为节约成本又未扩展程序存储区 因而考虑到所用主控单元 I O 口资源有限和对程序存储区 容量的限制 舍弃该方案 2 1 3 方案三采用 1602 模块显示 2011 年绍兴文理学院校大学生电子设计竞赛 3 1602 液晶为字符型液晶 可以显示 16 2 共 32 个字符 不仅可以显示芯片型号及判 断结果 并且还可以在程序运行过程中为用户提供必要的提示信息 提高了系统的交互性 并且 1602 液晶占用 CPU 时间较少 虽然显示能力较弱 仅能显示英文字符 但基本能满足 设计的要求 因而本设计采用 1602 液晶作为显示输出设备 2 22 2 输入模块输入模块 采用独立按键的优点是控制程序和硬件电路都很简单 缺点是如果每个按键都要占用 一个 I O 口 当按键较多时占用 I O 口较多 但考虑到本次设计只需要三个按键 完好 损 坏键 确认键 自动识别键 因此在实际的测试中分别对应 P3 0 P3 1 P3 2 通过按键查询 就可以简单的起到控制输入的目的 2 32 3 电源模块电源模块 本设计电路模拟部分较少 电源主要用于驱动单片机 液晶以及待检测的 74 逻辑芯片 由于都是数字电路 对于电源的要求较低 故采用比较简单的基于 LM7805 芯片的电源 电 源的输出为 5V 刚好满足电路各部分的供电要求 2 42 4 继电器模块继电器模块 由于 74LS92 芯片的引脚中 5 脚为电源 10 脚为地 而 74LS00 74LS04 74LS20 74LS74 74LS86 芯片 的引脚都是 14 脚为电源 7 脚为地 因此在实际 的测试过程中 我们需要对电源实现正确的切换 设计思路是 默认芯片测试引脚中是 14 脚为电 源 7 脚为地 用户按下自动识别的按键后 程 序依次扫描前五个 扫到一个后就退出扫描程序 后返回扫描结果 如果没扫到单片机通过 P3 6 脚控制继电器实现换挡后 使芯片测试引脚中 5 脚为电源 10 脚为地 再继续执行扫描任务确定这特殊的 74LS86 由于是实现 5V 控制 我们选择 ATQ209 双刀开关 三 芯片检测的基本原理三 芯片检测的基本原理 对于逻辑芯片的检测 我们主要实现检测芯片逻辑功能好坏亦或是确定芯片的型号 由于主控单元采用 STC89c52 单片机 其 I O 与 TTL 电平完全兼容 因而直接由单片机对芯 片插座的引脚进行扫描 由于是固定的 14 脚芯片 为了编程方便 使芯片测试引脚 1 7 分 别为 P1 0 P1 6 引脚 14 8 分别为 P2 0 P2 6 实现了通过单片机输出端口模拟芯片的各 种输入状态 并通过单片机读回芯片的输出结果 通过与芯片真值表的比较即可判断芯片 逻辑功能的好坏的目的 在进行芯片扫描时 必须先将芯片的输出引脚 I O 置为高电平 然后对芯片的输入引脚进行各种状态的扫描 通过单片机读回芯片的输出 再依据芯片的 真值表对其输出进相比较 不一致则说明芯片的逻辑功能发生错误 断定芯片为坏的 若 芯片的输出与真值表完全相符 则说明芯片的逻辑功能正确 可以判断为好芯片 然后再 依据所检测的结果 通过单片机对芯片的逻辑功能加以详细测试 并对结果加以显示 在 自动识别的时候 为了提高准确度 我们编写了程序 采用对同一端口两次输入再两次读 回其状态的比较方法 来对芯片好坏进行准确测试 继而返回正确的芯片型号 2011 年绍兴文理学院校大学生电子设计竞赛 4 四 系统的整体设计四 系统的整体设计 系统流程图系统流程图 五 系统功能测试及结果五 系统功能测试及结果 5 15 1 测试方法测试方法 对每一种芯片我们设计了唯一的输入状态并读回 P1 P2 口的数据与真值表比较 如果 有查到一个表符合要求就记录返回值后显示 在测试的整个过程中 实现了对芯片完好 损 坏功能的测试 用户按完好 损坏键并按确认键后可以看到测试显示结果为 OK GOOD CHIP 或者 SORRY BAD CHIP 当然如果用户不知道芯片是何种型号 就可以按自动 识别键自动识别上述 74 系列门电路的型号 T 返回结果为 This is 74 用户操 作的过程和显示的结果实时动态显示在液晶显示器中 以告知用户测试结果 5 25 2 测试结果测试结果 对于 74LS00 04 20 86 芯片进行实物测试 可以自动识别芯片型号及其好坏情况 测 试结果满足要求 对 74LS74 92 芯片进行实物测试 可以自动识别其芯片型号 通过模拟 芯片错误 均可完成正确测试 六 设计过程总结与体会六 设计过程总结与体会 通过这次电子设计竞赛 我们小组成员齐心协力 自己动手设计制作完成了一个数字 集成电路测试仪 这期间我们虽然也遇到了不少的困惑 但通过老师的指导和自己的思考 2011 年绍兴文理学院校大学生电子设计竞赛 5 这些问题一一得到解决 这次竞赛中学到了很多解决实际问题的方法 而且动手能力又得 到了很大的提升 对于这个设计来说 我们总结了以下几点经验和教训 第一 电路板的总体布局十分 重要 一个好的线路布局不仅会使电路板外观整齐 而且在之后的电路调试和线路错误检 查中亦能有一个清晰的思路 可以提高工作效率 第二 C 程序的调试工作在本次设计作 品中非常重要 因为本次 C 代码较长 所以整个程序的前后统筹调试中要很细心 乃至一 个很小的标量也要重视 在完成了该电子设计后 我们觉得这个设计还有可以改进和完善之处 比如 可以通 过修改代码 使得在按下某按键后可以自动检测所有芯片的型号以及其好坏情况 而且 可以加入 LED 指示灯或者蜂鸣器 来更加直观地显示或提醒电路工作状况和芯片检测结果 参考文献参考文献 1 康华光 电子技术基础模拟部分 第五版 北京 高等教育出版社 2006 2 阎石 数字电子技术基础 第三版 北京 高等教育出版社 1989 3 宁武 唐晓宇 闫晓金 全国大学生电子设计竞赛基本技能指导 2009 附件一附件一 系统电路图系统电路图 2011 年绍兴文理学院校大学生电子设计竞赛 6 P1 0 T2 1 P1 1 T2EX 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 RST 9 P3 0 RxD 10 P3 1 TxD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 5 T1 15 P3 6 WR 16 P3 7 RD 17 XTAL2 18 XTAL1 19 VSS 20 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 P2 7 A15 28 PSEN 29 ALE 30 EA VPP 31 P0 7 AD7 32 P0 6 AD6 33 P0 5 AD5 34 P0 4 AD4 35 P0 3 AD3 36 P0 2 AD2 37 P0 1 AD1 38 P0 0 AD0 39 VCC 40 U3 AT89C52 P3 0 P3 1 P3 2 P3 3 P3 4 P3 5 P3 6 P3 7 12 Y1 12M C 22 C 22 4 7k R 22uF 25v VCC 5v SW LCD E LCD RW LCD RS LCD DB 7 0 LCD LIGHT 2 x 16 Liquid Crystal Display 1VSS 2VCC 3WEE 4RS 5R W 6E 7D0 8D1 9D2 10D3 11D4 12D5 13D6 14D7 15L 16L LCD1602个个个个 Header 16 GND VCC 10K R110 R2 GND GND P3 5 P3 4 P3 3 P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 1 2 3 4 5 6 7 14 13 12 11 10 9 8 个个个个个个 Header 7X2A P1 0 P1 1 P1 2 P1 3 P1 4 个个个个51 51 R1 Q1 9015 VCC TQ2 5V S1 SW DPDT 3 8 2 4 9 7 1 51 10 VCC GND 14 7 5 10 2 7 9 4 P3 6 1 2 3 4 5 6 7 8 9 个个 VCC P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 P1 5 P2 0 P2 1 P2 2 P2 3 P2 4 P2 5 P1 1 15 14 13 39 38 37 36 35 34 33 32 VCC 1 2 3 4 5 6 21 22 23 24 25 26 27 e b c 16 01 个个个 个个 个个 个个 2 个个个个 S0 SW PB S1 SW PB S2 SW PB GND P3 0 P3 1 P3 2 10 11 12 附件二附件二 实物照片 实物照片 2011 年绍兴文理学院校大学生电子设计竞赛 7 附件三 附件三 数字集成电路芯片测试仪 C 程序 清单 程序组 陈辰灿 王海 贺星辰 修改时间 2011 06 05 include include include 这是头文件必须包含 宏定义 define LCD data P0 数据口 define M 4 要测试的芯片好坏的个数 define N 8 define input1 P1 用于检测的引脚 define input2 P2 液晶宏定义 初始化引脚 void delay unsigned int z 延时函数 2011 年绍兴文理学院校大学生电子设计竞赛 8 void charfill unsigned char c 整屏显示 A 代表的 ASCII 字符子程序 void putstrxy unsigned char cx unsigned char cy unsigned char code s 在 cx cy 字符位置写 字符串子程序 void putstr unsigned char code s 定位写字符串子程序 void putchars unsigned char c 在 CXPOS CYPOS 字符位置写字符子程序 unsigned char getchars void CXPOS CYPOS 字符位置读字符子程序 void charlcdpos void 设置 CXPOS CYPOS 字符位置的 DDRAM 地址 void charcursornext void 置字符位置为下一个有效位置子程序 void lcdreset void SMC1602 系列液晶显示控制器初始化子程序 void delay3ms void 延时 3MS 子程序 void lcdwc unsigned char c 送控制字到液晶显示控制器子程序 void lcdwd unsigned char d 送控制字到液晶显示控制器子程序 unsigned char lcdrd void 读数据子程序 void lcdwaitidle void 忙检测子程序 unsigned char data CXPOS 列方向地址指针 用于 CHARLCDPOS 子程序 unsigned char data CYPOS 行方向地址指针 用于 CHARLCDPOS 子程序 sbit RSPIN P3 5 RS 对应单片机引脚 sbit RWPIN P3 4 RW 对应单片机引脚 sbit EPIN P3 3 E 对应单片机引脚 宏定义 unsigned char detect 自动检测引脚 定义按键 sbit key1 P3 0 选择检测芯片 sbit key2 P3 1 确定选择的芯片 sbit key3 P3 2 自动检测 sbit key4 P3 6 继电器的切换 unsigned char name 7400 7404 7420 7486 7474 7492 ERROR 按键的标志位 unsigned char flag 0 要选择的芯片型号在已定义字符数组中的序号 unsigned char flag1 0 unsigned char flag2 0 用来标示某芯片各通道检测均完好的标志位 unsigned char k 0 返回自动检测后芯片序号在已定义的数组中的序号 unsigned char code LS00 4 4 0 x3f 0 x3f 0 x1b 0 x1b 74ls00 0 x24 0 x24 0 x24 0 x24 0 x36 0 x36 0 x36 0 x36 0 x2d 0 x2d 0 x2d 0 x2d unsigned char code LS04 2 4 0 x2a 0 x2a 0 x2a 0 x2a 74ls04 0 x3f 0 x3f 0 x15 0 x15 2011 年绍兴文理学院校大学生电子设计竞赛 9 unsigned char code LS20 16 4 0 x24 0 x24 0 x24 0 x24 74ls20 0 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 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 unsigned char code LS86 4 4 0 x24 0 x24 0 x00 0 x00 74ls86 0 x36 0 x36 0 x36 0 x36 0 x2d 0 x2d 0 x2d 0 x2d 0 x3f 0 x3f 0 x1b 0 x1b unsigned char code IC M N 0 x24 0 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 main unsigned char i output1 output2 lcdreset 液晶显示控制器初始化 putstrxy 0 0 PLEASE CHOOSE 74LS CHIP 显示欢迎界面 while 1 if key1 0 2011 年绍兴文理学院校大学生电子设计竞赛 10 delay 100 if key1 0 if flag 4 flag 0 flag switch flag case 1 charfill putstrxy 0 0 NOW 7400 break case 2 charfill putstrxy 0 0 NOW 7404 break case 3 charfill putstrxy 0 0 NOW 7420 break case 4 charfill putstrxy 0 0 NOW 7486 if flag 1i 4 i input1 LS00 i 0 input2 LS00 i 1 delay 5 output1 input1 output2 input2 if output1 LS00 i 2 output2 LS00 i 3 putstrxy 0 1 SORRY BAD CHIP flag2 0 break if output1 LS00 i 2 if flag2 4 putstrxy 0 1 OK GOOD CHIP flag2 0 2011 年绍兴文理学院校大学生电子设计竞赛 11 if flag 2i 2 i input1 LS04 i 0 input2 LS04 i 1 delay 5 output1 input1 output2 input2 if output1 LS04 i 2 output2 LS04 i 3 putstrxy 0 1 SORRY BAD CHIP flag2 0 break if output1 LS04 i 2 if flag2 2 putstrxy 0 1 OK GOOD CHIP flag2 0 if flag 3i 16 i input1 LS20 i 0 input2 LS20 i 1 delay 5 output1 input1 output2 input2 if output1 LS20 i 2 output2 LS20 i 3 putstrxy 0 1 SORRY BAD CHIP flag2 0 break if output1 LS20 i 2 if flag2 16 putstrxy 0 1 OK GOOD CHIP flag2 0 if flag 4i0 x for y 110 y 0 y 14 脚芯片识别函数 unsigned char detect 14 脚芯片识别函数 unsigned char i output1 output2 7474 的检测 P1 0 xff 初始化测试端口 P2 0 xff input1 0 x3b input2 0 x39 delay 5 input1 0 x3f 上升沿 input2 0 x3d delay 5 output1 input1 output2 input2 if output1 0 x1f 7400 04 20 86 的自动检测 P1 0 xff 初始化测试端口 P2 0 xff for i 0 i15 字符位置 CXPOS 15 表示要换行 CXPOS 0 置列位置为最左边 CYPOS 行位置加 1 CYPOS 字符位置 CYPOS 的有效范围为 0 到 1 子程序名称 void lcdreset void 功能 液晶显示控制器初始化 void lcdreset void SMC1602 系列液晶显示控制器初始化子程序 1602 的显示模式字为 0 x38 lcdwc 0 x38 显示模式设置第一次 delay3ms 延时 3MS lcdwc 0 x38 显示模式设置第二次 delay3ms 延时 3MS lcdwc 0 x38 显示模式设置第三次 delay3ms 延时 3MS lcdwc 0 x38 显示模式设置第四次 delay3ms 延时 3MS lcdwc 0 x08 显示关闭

温馨提示

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

评论

0/150

提交评论