微机接口技术课程设计 - 图文 联系客服

发布时间 : 星期三 文章微机接口技术课程设计 - 图文更新完毕开始阅读54684f7327d3240c8447ef31

微机接口技术课程设计

源程序如下:

//*-------------------------------------------------------*/

//* Cexp2.cpp(声-光报警器接口实验) */ //* 声-光报警器 Source File */ //* Copyright (c) 2001 by HUST */ //*------------------------------------------------------*/ #include //getvect(); setvect(); #include //kbhit(); #include //exit(0); #include //printf();

void main() { int xu[8]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};//LED发光顺序 unsigned long int i=0,j=0; char a; printf(\ printf(\ outportb(0x303,0x83);//初始化 outportb(0x300,0x00);//LED全灭 outportb(0x303,0x0c);//关闭SPK do{ }while((0x04&inportb(0x302))!=0);//查SW按下 do{ a=getch(); switch(a) { case '1': do{ outportb(0x300,xu[0]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30);

}

10

微机接口技术课程设计

}while(!kbhit()); break; case '2': do{ outportb(0x300,xu[1]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '3': do{ outportb(0x300,xu[2]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '4': do{

11

微机接口技术课程设计

outportb(0x300,xu[3]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '5': do{ outportb(0x300,xu[4]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '6': do{ outportb(0x300,xu[5]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音

12

微机接口技术课程设计

delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '7': do{ outportb(0x300,xu[6]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

for(j=0;j<=10;j++) { outportb(0x303,0x0d); delay(30);//令PC6=1,发低频音 outportb(0x303,0x0c);//令PC6=0,消音 delay(30); } }while(!kbhit()); break; case '8': do{ outportb(0x300,xu[7]); for(j=0;j<=100;j++) { outportb(0x303,0x0d);//令PC6=1,发高频音 delay(1); outportb(0x303,0x0c);//令PC6=0,关闭SPK delay(1); }

13