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

2019-04-16 20:56

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

if(key1==0) {

if(flag==4) {

flag=0; }

flag++; switch(flag) {

case 1:charfill(' '); putstrxy(0,0,\

case 2:charfill(' '); putstrxy(0,0,\ case 3:charfill(' '); putstrxy(0,0,\ case 4:charfill(' '); putstrxy(0,0,\ }

} }

if(flag==1&&key2==0) {

for(i=0;i<4;i++) {

input1=LS00[i][0]; input2=LS00[i][1]; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1!=LS00[i][2]||output2!=LS00[i][3]) {

putstrxy(0,1,\,BAD CHIP!\ flag2=0; break; }

if(output1==LS00[i][2]&&output2==LS00[i][3]) {

flag2++; } }

if(flag2==4) {

putstrxy(0,1,\ flag2=0; } }

10

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

if(flag==2&&key2==0) {

for(i=0;i<2;i++) {

input1=LS04[i][0]; input2=LS04[i][1]; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1!=LS04[i][2]||output2!=LS04[i][3]) {

putstrxy(0,1,\,BAD CHIP!\ flag2=0; break; }

if(output1==LS04[i][2]&&output2==LS04[i][3]) {

flag2++; } }

if(flag2==2) {

putstrxy(0,1,\ flag2=0; } }

if(flag==3&&key2==0) {

for(i=0;i<16;i++) {

input1=LS20[i][0]; input2=LS20[i][1]; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1!=LS20[i][2]||output2!=LS20[i][3]) {

putstrxy(0,1,\,BAD CHIP!\ flag2=0; break; }

if(output1==LS20[i][2]&&output2==LS20[i][3]) {

flag2++;

11

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

} }

if(flag2==16) {

putstrxy(0,1,\ flag2=0; } }

if(flag==4&&key2==0)

} }

{

for(i=0;i<4;i++) {

input1=LS86[i][0]; input2=LS86[i][1]; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1!=LS86[i][2]||output2!=LS86[i][3]) {

putstrxy(0,1,\,BAD CHIP!\ flag2=0; break; }

if(output1==LS86[i][2]&&output2==LS86[i][3]) {

flag2++; } }

if(flag2==4) {

putstrxy(0,1,\ flag2=0; } } if(key3==0) {

k=detect(); charfill(' ');

putstrxy(0,0,\ putstrxy(2,5,name[k]); } 12

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

//延时函数

void delay(unsigned int z) {

unsigned int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }

/*============================14脚芯片识别函数=======================*/ unsigned char detect() //14脚芯片识别函数 {

unsigned char i,output1,output2;

//7474的检测

P1=0xff; //初始化测试端口 P2=0xff;

input1=0x3b; input2=0x39; delay(5);

input1=0x3f; //上升沿 input2=0x3d; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1==0x1f&&output2==0x2d) {

return (4); } //7400/04/20/86的自动检测 P1=0xff; //初始化测试端口 P2=0xff;

for(i=0;i

input1=IC[i][0]; input2=IC[i][1]; delay(5);

output1=input1&0x3f; //将芯片逻辑结果input1通过&0x3f取出 output2=input2&0x3f;

if(output1==IC[i][2]&&output2==IC[i][3]) {

input1=IC[i][4]; input2=IC[i][5]; delay(5);

13

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

output1=input1&0x3f; output2=input2&0x3f;

if(output1==IC[i][6]&&output2==IC[i][7]) {

return i; } } }

key4=0; //检测7492时,先用继电器江电源供电引脚切换 P1=0xff; //初始化测试端口 P2=0xff;

input1=0x3f; //7492的检测 input2=0x3f; delay(5);

output1=input1&0x3f; output2=input2&0x3f;

if(output1==0x3f&&output2==0x01) {

delay(100);key4=1;return (5); }

delay(100); key4=1; //测试结束,将电源供电引脚切换回原状态 return (6); }

//-------------------------------------------------------------------------------

void charfill(unsigned char c) //整屏显示A代表的ASCII字符子程序 { for(CXPOS=CYPOS=0;1;)

{ putchars(c); //定位写字符

charcursornext(); //置字符位置为下一个有效位置 if((CXPOS==0) && (CYPOS==0)) break; } }

//子程序名称:void putstrxy(unsigned char cx,unsigned char cy,unsigned char *s). //功能:在(cx,cy)字符位置写字符串.

//------------------------------------------------------------------------------- void putstrxy(unsigned char cx,unsigned char cy,unsigned char code *s)

{ //在(cx,cy)字符位置写字符串子程序 CXPOS=cx; //置当前X位置为cx CYPOS=cy; //置当前Y位置为cy

for(;*s!=0;s++) //为零表示字符串结束,退出 { putchars(*s); //写1个字符

charcursornext(); //字符位置移到下一个 }

14


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

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

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

马上注册会员

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