毕业设计课题 - 数字集成电路测试仪 - 图文(2)

2019-04-16 20:56

2011年绍兴文理学院校大学生电子设计竞赛

对于这个设计来说,我们总结了以下几点经验和教训。第一,电路板的总体布局十分重要。一个好的线路布局不仅会使电路板外观整齐,而且在之后的电路调试和线路错误检查中亦能有一个清晰的思路,可以提高工作效率;第二,C程序的调试工作在本次设计作品中非常重要。因为本次C代码较长,所以整个程序的前后统筹调试中要很细心,乃至一个很小的标量也要重视。

在完成了该电子设计后,我们觉得这个设计还有可以改进和完善之处。比如,可以通过修改代码,使得在按下某按键后可以自动检测所有芯片的型号以及其好坏情况。而且,可以加入LED指示灯或者蜂鸣器,来更加直观地显示或提醒电路工作状况和芯片检测结果。

参考文献

[1] 康华光.电子技术基础模拟部分(第五版).北京:高等教育出版社,2006 [2] 阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989 [3] 宁武,唐晓宇,闫晓金.全国大学生电子设计竞赛基本技能指导,2009

附件一 系统电路图:

5

2011年绍兴文理学院校大学生电子设计竞赛

实物照片:

6

附件二

2011年绍兴文理学院校大学生电子设计竞赛

附件三:

/*-----------------------------数字集成电路芯片测试仪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);*延时函数*/

void charfill(unsigned char c); //整屏显示A代表的ASCII字符子程序

7

2011年绍兴文理学院校大学生电子设计竞赛

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[]={\

/*==============================按键的标志位=========================*/ unsigned char flag=0; //要选择的芯片型号在已定义字符数组中的序号 unsigned char flag1=0; unsigned char flag2=0; //用来标示某芯片各通道检测均完好的标志位 unsigned char k=0; //返回自动检测后芯片序号在已定义的数组中的序号 unsigned char code LS00[4][4]={

0x3f,0x3f,0x1b,0x1b, //74ls00 0x24,0x24,0x24,0x24, 0x36,0x36,0x36,0x36, 0x2d,0x2d,0x2d,0x2d, };

unsigned char code LS04[2][4]={ 0x2a,0x2a,0x2a,0x2a, //74ls04 0x3f,0x3f,0x15,0x15, };

8

2011年绍兴文理学院校大学生电子设计竞赛

unsigned char code LS20[16][4]={

0x24,0x24,0x24,0x24, //74ls20 0x25,0x25,0x25,0x25, 0x26,0x26,0x26,0x26, 0x27,0x27,0x27,0x27, 0x2c,0x2c,0x2c,0x2c, 0x2d,0x2d,0x2d,0x2d, 0x2e,0x2e,0x2e,0x2e, 0x2f,0x2f,0x2f,0x2f, 0x34,0x34,0x34,0x34, 0x35,0x35,0x35,0x35, 0x36,0x36,0x36,0x36, 0x37,0x37,0x37,0x37, 0x3c,0x3c,0x3c,0x3c, 0x3d,0x3d,0x3d,0x3d, 0x3e,0x3e,0x3e,0x3e, 0x3f,0x3f,0x1f,0x1f, };

unsigned char code LS86[4][4]={

0x24,0x24,0x00,0x00, //74ls86 0x36,0x36,0x36,0x36, 0x2d,0x2d,0x2d,0x2d, 0x3f,0x3f,0x1b,0x1b, };

unsigned char code IC[M][N]={

0x24,0x24,0x24,0x24,0x3f,0x3f,0x1b,0x1b, //7400 0x3f,0x3f,0x15,0x15,0x3f,0x3f,0x15,0x15, //7404 0x3f,0x3f,0x1f,0x1f,0x3f,0x3f,0x1f,0x1f, //7420 0x3f,0x3f,0x1b,0x1b,0x3f,0x3f,0x1b,0x1b, //7486 };

void main() {

unsigned char i,output1,output2;

lcdreset(); //液晶显示控制器初始化 putstrxy(0,0,\ //显示欢迎界面 while(1) {

if(key1==0) {

delay(100);

9


毕业设计课题 - 数字集成电路测试仪 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:人教版三年级期末语文质量检测试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: