《技能抽考试题》由会员分享,可在线阅读,更多相关《技能抽考试题(19页珍藏版)》请在金锄头文库上搜索。
1、试题3.21 按键控制彩灯软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写完整程序实现如下模拟彩灯,开发板从左至右4个按键分别为S1-S4,从上至下8个灯为L1-L8,按下S1键8只LED小灯以1HZ频率闪烁,按下S2键8只灯奇偶交替点亮,间隔0.5S,按下S3键,L1-L4与L5-L8灯交替点亮,间隔0.5s,按下S4键熄灭所有灯。试题3.22 计数器软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写完整程序实现如下模拟计数器功能,开发板4个按键从左至右分别为S1-S4,开发板上电复位后显示0,按下S3显示数据加1,按下S4数据显示减1,当计数小于0时显示0
2、,大于9时,显示9。#includesbit speak=P16;unsigned char seg_dm 10=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;unsigned char bit_line8=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;unsigned char data_display5;int dat_count=0;void delay(unsigned char time)unsigned char i,j;for(i=0;itime;i+)for(j=0;j120;j+)void
3、 data_change(void)data_display0=dat_count%10; void INT0_init(void)IT0=1;EA=1;EX0=1;void INT1_init(void)IT1=1;EA=1;EX1=1;void display(unsigned char dat,unsigned char bit_code)P2=0xff;P0=seg_dmdat;P2=bit_code;delay(5);main()unsigned char i;INT0_init();INT1_init();while(1) data_change(); for(i=0;i1;i+)
4、 display(data_displayi,bit_linei); void Init0() interrupt 0 using 0EX0=0;if(dat_count0)dat_count-;speak=1;elsedat_count=0;speak=0; EX1=1; 试题3.23 按键控制组合灯软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写完整程序实现如下功能,4个按键分别控制2个灯,4个按键从左至右分别称为S1-S4,单片机引脚1、2所接灯分别为LED1、LED2,按下S1控制LED1亮灭变化(当前灭则点亮,当前亮则变灭),S2控制LED2亮灭变化,S3开所有灯,
5、S4关闭所有灯。#includesbit LED1=P10;sbit LED2=P11;sbit S1=P30;sbit S2=P31;sbit S3=P32;sbit S4=P33;unsigned char key;void key1();void key2();void key3();void key4();void delay(unsigned char x)int i,j;for(i=0;ix;i+)for(j=0;j120;j+);void main()while(1)if(P3!=0xff)delay(10);if(P3!=0xff)key=P3;while(P3!=0xff);
6、switch(key)case 0x01:key1();key=0xff;break;case 0x02:key2();key=0xff;break;case 0x04:key3();break;case 0x08:key4();break;void key1()LED1=!LED1;void key2()LED2=!LED2;void key3()LED1=0;LED2=0;void key4()LED1=1;LED2=1;试题3.24计数器软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序,实现如下功能:对外部的方波信息进行099循环计数,每来一个脉冲计数加1,并将计数
7、结果显示在数码管上。试题3.25 小型电子产品软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序实现如下功能,单片机开发板上从左至右4个按键分别为S1-S4,按下S1从单片机第1个引脚上输出频率为1KHz的方波,再按下S1则停止输出方波;方波频率误差小于2%。试题3.26 秒表软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序如下功能,开发板上4键从左至右为S1-S4,上电后,开始时显示“00”;利用S1按键后启动计时;S2按键后停止计时;S3按键后计时归零;最大计时为99秒。计时误差小于0.5秒,显示稳定。试题3.27 倒计时秒表软件开发一、任务在下列
8、开发板硬件(原理图见pdf文档)基础上,编写程序,使秒表在上电/复位后,具有:开始时显示“99”并开始倒计时,当计时到0S时,数码管显示“00”,同时蜂鸣器报警长鸣,倒计时误差小于0.5秒。#includeunsigned char duanma=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;unsigned char dat_display2;unsigned char bit_array2=0xfe,0xfd;unsigned char seconds=99,count;sbit speak=P16;void delay(unsigne
9、d int time)int i,j;for(i=0;itime;i+);for(j=0;j120;j+);void T0_init(void)TMOD=0x01;TH0=(65536-10000)/256;TL0=(65536-10000)%256;TR0=1;void int_init(void)EA=1;ET0=1;void dat_change(void)dat_display1=seconds/10;dat_display0=seconds%10;void display()P2=0xff;P2=0x01;P0=duanmaseconds%10;delay(2);P2=0x02;P0
10、=duanmaseconds/10;delay(2);void seconds_01(void)if(count=10)count=0;seconds-;void seconds_99(void)if(seconds=0)TR0=0;void main()T0_init();int_init();while(1) seconds_01();seconds_99();dat_change();if(seconds=0)P2=0xff;delay(4000);speak=0;delay(3000);speak=1; display();void time_t0() interrupt 1TH0=(
11、65536-10000)/256;TL0=(65536-10000)%256;count+;试题3.28 游客流量计数器设计一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序,实现游客流量计数器功能,要求如下:用数码管理显示3数组2位数,分别表示进入人数、出去人数、滞留人数,当按下S1键进入人数加,S2键按下出去人加1,同时出入人数有变化对应的滞留人数也应更新,数值显示结果要与实际应用相结合。试题3.29单片机与PC机通信软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编程实现如下功能:利用给定的初始化串口程序,编程实现在单片机上以9600的波特率循环向串口发送字符0
12、9,并利用USB转232串口线和电脑串口调试助手软件,在电脑上显示接收数据。试题3.30 单片机与PC机通信软件开发一、任务在下列开发板硬件(原理图见pdf文档)基础上,编程实现如下功能:利用给定的初始化串口程序,编程实现单片机接收电脑串口发送的数字(09),并开发板上用一位数码管显示当前接收到的数据,波特率为9600。试题3.31 多种特效流彩灯设计一、任务在下列开发板硬件(原理图见pdf文档)基础上,利用P1口的8个LED灯,编写程序实现3种特效的彩灯,采灯效果分别为:LED单灯流水左移、LED单灯流水右移、LED从左至右逐个点亮,3种特效循环循环切换。试题3.32 按键发音程序设计一、任务在下列开发板硬件(原理图见pdf文档)基础上,利用2个按键S1、S2,在开发板上编写程序实现如下功能,当按下S1、S2时蜂鸣器发出“哆”、“唻”的声音。试题3.33 温度计程序设计一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序实现如下功能,利用给定的读温度函数,编写程序在数码管上显示实时温度,当温度大于35度时,开启蜂鸣器报警(长响)。试题3.34 时钟程序设计一、任务在下列开发板硬件(原理图见pdf文档)基础上,编写程序实现如下功能,利用给定的读写时间函数,编写程序在数码管上显示时、分、秒,当时间为整点时,开启蜂鸣器响3S。试题3.35 简易计数器程序设计一、任务在下列