测验1
单片机最小系统(最低配置)1.
图示单片机工作电压是_____,电源引脚是第___引脚,地线是第___引脚。
2.
单片机严格按照一定的时序工作,这一时序通常由固定的频率时钟来控制。没有时钟信号,单片机则不能正常工作。请问时钟电路引脚为____和____引脚,晶振为____MHz。
3.
单片机上电复位引脚RST是第___引脚,复位为___电平。
4.
单片机程序存储器选择控制信号引脚。当 接高电平时,程序存储器选定为单片机芯片内部的程序存储器;当接低电平时,选定为外部的程序存储器。如若要使用AT8SC51的内部程序存储器作为系统的程序存储器,则 应接__________。
5.
什么是单片机最小系统?
测验2
带数字的红绿灯电路1.
什么叫数码管?什么叫段码?如果要显示数字34,编写指令。
2.
观察程序,问程序执行过程及结果。
#include<reg51.h>
sbit R=P0^5; sbit Y=P0^6; sbit G=P0^7;
unsigned int i,x;
unsigned char seg[10]={0x3f,0x06,0x5b,0x4f,0x66,
//01234
0x6d,0x7d,0x07,0x7f,0x6f}; //56789
main()
{
loop1:
for(x=30;x>0;x=x-1)
//本指令用途:____________________________
{
P2=seg[x%100/10]; P3=seg[x%10];
R=1;Y=1;G=1;i=20000; while(i--);
R=0;Y=1;G=1;i=20000; while(i--);
}
//黄 省略
//绿 省略
goto loop1;
}
测验3
抢答器1.
观察程序,问程序执行过程及结果
#include<reg51.h>
sbit ST_RST=P3^7;
unsigned char seg[10]={0x3f,0x06,0x5b,0x4f,0x66,
//01234
0x6d,0x7d,0x07,0x7f,0x6f};
//56789
main()
{
P2=0x40;
//本指令用途:____________________________
while(ST_RST==1);
//本指令用途:____________________________
loop1:
switch(P1)
{
//
7654 3210
case 0xfe: P2=seg[1]; goto loop2;break;
//第1人按下
1111 1110
case 0xfd: P2=seg[2]; goto loop2;break;
//第2人按下
1111 1101
case 0xfb: P2=seg[3]; goto loop2;break;
//第3人按下
1111 1011
case 0xf7: P2=seg[4]; goto loop2;break;
//第4人按下
1111 0111
case 0xef: P2=seg[5]; goto loop2;break;
//第5人按下
1110 1111
case 0xdf: P2=seg[6]; goto loop2;break;
//第6人按下
1101 1111
case 0xbf: P2=seg[7]; goto loop2;break;
//第7人按下
1011 1111
case 0x7f: P2=seg[8]; goto loop2;break;
//第8人按下
0111 1111
default:
P2=0x40;
//-
}
goto loop1;
loop2: if(ST_RST==0) goto loop1;//本指令用途:____________________________
goto loop2;
}
测验4
设计光控灯
1、
什么叫数字信号?举3个例子说明。
2、
什么叫传感器?有什么用途?举3个例子说明。
3、
电路图中PNP是什么元器件?有什么用途?
4、
电路图中RL2是什么元器件,有什么用途?
5、
观察程序,问程序执行过程及结果。
#include<reg51.h>
sbit Guang=P1^0;
sbit Lamp =P2^0;
main()
{
loop1:
if(Guang==1) Lamp=1;//光线比较弱,亮
else
Lamp=0;//光线比较强,不亮
goto loop1;
}
测验5
设计声控灯1、
什么叫非电量信号?举3个例子说明。
2、
什么叫模拟信号?举3个例子说明。
3、
电路图中D1是什么元器件,有什么用途?
4、
观察程序,问程序执行过程及结果。
#include<reg51.h>
sbit chuan_gan = P3^4;
sbit Lamp
= P3^3;
unsigned char num;
unsigned long int i;
unsigned char seg[10]={0x3f,0x06,0x5b,0x4f,0x66,
//01234
0x6d,0x7d,0x07,0x7f,0x6f};
//56789
main()
{
loop1:
//---------------------------------------
Lamp=1;
//强电设备不动作
P0=~0x40;
//-
while(chuan_gan==1){
}//等待
//---------------------------------------
Lamp=0;
//强电设备开始动作
for(num=9;num>0;num--)
{
P0=~seg[num];
i=20000;while(i--);
}
goto loop1;
}
1、
观察程序,问程序执行过程及结果。
#include<reg51.h>
unsigned int i;
sbit W_A
= P1^0; //水位控制上限
sbit W_B
= P1^1; //水位控制下限
sbit W_C
= P1^2; //水位报警点
sbit Alaram = P3^6; //报警电路
sbit Beng
= P3^7; //水泵电路
//---------------------------------------
main()
{
loop1:
if(W_A==0) Beng=1;
//水位控制上限
if(W_B==1) Beng=0;
//水位控制下限
if(W_C==1)
//水位最低点
{
Alaram=0;i=10;while(i--);
Alaram=1;i=10;while(i--);
}
goto loop1;
}
2 请问“W_A==1”代表_____________________。
3 请问“Beng=1”代表 |