ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:16.62KB ,
资源ID:14534731      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14534731.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(辽宁科技大学单片机考试题库.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

辽宁科技大学单片机考试题库.docx

1、辽宁科技大学单片机考试题库辽宁科技大学单片机考试题库1 第一题 #include sbit P1_0=P10; sbit P1_1=P11; sbit P1_2=P12; sbit P1_3=P13; sbit P1_7=P17; unsigned char ID; void delayms(unsigned char i) unsigned char j; for(i;i0;i-) for(j=1000;j0;j-); void main(void) while(1) if(P1_7=0) delayms(100); if(P1_7=0) ID+; if(ID=4) ID=0; while(

2、P1_7=0); switch(ID) case 0: P1_0=P1_0; P1_1=1;P1_2=1;P1_3=1; delayms(100); break; case 1: P1_1=P1_1; P1_0=1;P1_2=1;P1_3=1; delayms(100); break; case 2: P1_2=P1_2; P1_0=1;P1_1=1;P1_3=1; delayms(100); break; case 3: P1_3=P1_3; P1_0=1;P1_1=1;P1_2=1; delayms(100); break; 2. 串行通信 #include #include #defin

3、e uchar unsigned char uchar code Table18=1,3,7,0x0f,0x1F,0x3F,0x7F,0xff,0xFE, 0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0,0xFF,00; void Delay(unsigned int time); void main() unsigned int i,a; TMOD=0x20; TL1=0xF4; TH1=0xF4; TR1=1; PCON=0x00; SCON=0x50; while(1) for(i=0;i18;i+) SBUF=Tablei; while(TI!=1); /*发送数据完成

4、标志*/ TI=0; /*清除发送标志*/ while(RI!=1); /*接收到数据标志*/ RI=0; /*清除接收标志*/ a=SBUF;/*接收数据*/ P1=a; Delay(200); /*彩灯状态保持一段时间*/ void Delay(unsigned int x) uchar i; while(x-) for(i=0;i125;i+) ; 3.五人表决器 #include sbit RST = P17; sbit K1 = P10; sbit K2 = P11; sbit K3 = P12; sbit K4 = P13; sbit K5 = P14; sbit led= P16

5、; unsigned char count; void delay(unsigned k) unsigned int i,j; for(i=0;ik;i+) for(j=0;j=3) led=led; delay(200); if(RST=0) delay(40); if(RST=0) count=0; P1=0xFF; 4.A/D转换 法一 #include #include #define CS273 XBYTE0xCFA0 #define IN7 XBYTE0xCFAF void Delay(int U); void Display(); unsigned char code table

6、17=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,0x00; unsigned BUF2=0,0; unsigned char k,sn; void main() unsigned char i; IE=0x81;IT0=1; while(1) IN7=i; sn=1; while(sn); Display(); void INT_0(void) interrupt 0 k=IN7;sn=0; void Display() unsigned char i,j; BUF0=k/16

7、; BUF1=k%16; while(j-) CS273=tableBUF0; P1=0xFE; Delay(2); CS273=tableBUF1; P1=0xFD; Delay(2); void Delay(int U) unsigned char i; while(U-) for(i=0;i62;i+) ; A/D 法二 /* * *文件名:sy8.c *版 本:V1.0_C *功 能:AD0809通道0采集数据,并有四个数码管显示 *注 意:实验时,拔掉LED_JUMP跳帽 *创 建:吴文波 * */ #include #include #define AD0809_0 XBYTE0x

8、CFA0 #define CS273 XBYTE0xCFA8 /*分别控制4位数码管的位码*/ sbit P10=P10; sbit P11=P11; sbit P12=P12; sbit P13=P13; /*共阴极数码管显示数据:0-9 A-F 黑屏*/ table17=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F, 0x77,0x7C,0x39,0x5E,0x79,0x71,0x00; unsigned char dispbuf4; unsigned char sn; unsigned int idata BUF8; /* * *函数

9、名:INIT0_FUNC *功 能:外部中断0服务函数,实现AD0809通道0数据采集 *输 入:无 *返 回:AD0809通道0数据 * */ void INIT0_FUNC(void) interrupt 0 BUF0=AD0809_0; sn=0; /* * *函数名:Delay *功 能:Delay实现延时约1ms*temp(晶振6M) * for循环执行一次需:(12*(1/6M)*8s *输 入:延时时间 temp *返 回:无 * */ void Delay(unsigned char temp) unsigned int j; while(temp-) for(j=0;j62;

10、j+); /* * *函数名:Display *功 能:进行AD0809通道0数据的显示 *输 入:k-AD0809通道0、BUFk-AD0809通道0数据 *返 回:无 * */ void Display(unsigned char k) unsigned int t,j=10; while(j-) t=(double)BUFk/255*500; /? dispbuf0=t%10; dispbuf1=t/10%10; dispbuf2=t/100%10; dispbuf3=t/1000; P10=0; /*第1位数码管位选通*/ P11=1; P12=1; P13=1; CS273=tabl

11、edispbuf0; /*第1位数码管段码*/ Delay(2); P10=1; P11=0; /*第2位数码管位选通*/ P12=1; P13=1; CS273=tabledispbuf1; /*第2位数码管段码*/ Delay(2); P10=1; P11=1; P12=0; /*第3位数码管位选通*/ P13=1; CS273=tabledispbuf2|0x80; /*第3位数码管段码*/ Delay(2); P10=1; P11=1; P12=1; P13=0; /*第4位数码管位选通*/ CS273=tabledispbuf3; /*第4位数码管段码*/ Delay(2); /*

12、* *函数名:INIT0Init *功 能:外部中断0初始化 *输 入:无 *返 回:无 * */ void INIT0Init() IT0=1; EX0=1; EA=1; /* * *函数名:main主函数 *功 能:实现AD0809采集通道0数据并由4位数码管显示其值 *说 明:无 * */ void main(void) INIT0Init(); /*外部中断0初始化*/ while(1) AD0809_0=0; /*启动通道0采集*/ sn=1; while(sn); Display(0); /*AD0809通道0数据显示*/ 5. 抢答器(加数码管和LED灯) #include #i

13、nclude #define cs273 XBYTE0xCFA0 sbit RST = P17; sbit K1 = P10; sbit K2 = P11; sbit K3 = P12; sbit P1_6=P16; sbit led1=P13; sbit led2=P14; sbit led3=P15; unsigned char code table4=0x06,0x5b,0x4f,0x3f; void delay(unsigned k) unsigned int i,j; for(i=0;ik;i+) for(j=0;j62;j+); main() while(1) start: P1_

14、6=0; if(K1=0) delay(30); if(K1=0) cs273=table0;led1=0;led2=1;led3=1;while(1)if(RST=0)led1=1;led2=1;led3=1;cs273=table3;goto start; else if(K2=0) delay(30); if(K2=0) cs273=table1;led1=1;led2=0;led3=1;while(1)if(RST=0)led1=1;led2=1;led3=1;cs273=table3;goto start; else if(K3=0) delay(30); if(K3=0) cs27

15、3=table2;led1=1;led2=1;led3=0;while(1)if(RST=0)led1=1;led2=1;led3=1;cs273=table3;goto start; 6. 跑马表 #include #include #define CS273 XBYTE0xcfa0 sbit SP1=P17; unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f; unsigned char count,keycnt,second; void delay(unsigned char i) un

16、signed j; for(i;i0;i-) for(j=62;j0;j-); void Timer0_INTI() TMOD=0x01; TH0=(65536-10000)/256; TL0=(65536-10000)%256; TR0=0; ET0=1; EA=1; void Timer0() interrupt 1 using 0 TH0=(65536-1000)/256; TL0=(65536-1000)%256; count+; if(count=100) second+; if(second=60) second=0; void main(void) Timer0_INTI(); while(1) CS273=tablesecond/10; P1=0xFB;delay(1); CS273=tablesecond%10; P1=0xFD;delay(1); if(SP1=0) delay(5); if(SP1=0) while(SP1=0); keycnt+; switch(keycnt) case 1: TR0=1; break; case 2: TR0=0; break; case 3: keycnt=0; second=0; break;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2