江苏大学计算机学院单片机试卷及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、根据下图,说出CIP-51有哪些存储控件?各存储空间的功能及寻址范围?CIP-51的内部ram空间有多少字节?它们在应用中有什么专门的用途?堆栈一般应设置在什么位置?(20分)
2、下图显示了C8051F020单片机IO端口交叉开关的配置界面,如果我们现在要使用UART0、SPI0、SMBus,并且P1,2、P1,3作为两路模拟量的输入端,请问所有的外设引脚与单片机的端口如何应对?(如TX0=P??....)(10分)
3、有7个能使c8051f系列单片机进入复位状态的复位源:上电/掉电复位、外部/RST引脚复位、外部CNVSTR信号复位、软件命令复位、比较器0复位、时钟丢失检测器和看门狗定时器超时复位。请说出这7钟复位的含义及你认为的用途。(10分)
4、下面一段程序是震荡源初始化程序,一般在上电后即运行。请问运行该段程序时单片机用的是什么震荡源?频率为多少?(10分)
V oid Oscillator_Init()
{
Int i=0;
OSCXCN=0X67;
For(i=0;i<3000;i++);
While((OSCXCN&0X80)==0);
OSCICN=0X08;
}
5、P2,P3口驱动发光管,共接了16个发光二极管,请阅读下面的程序,问:定时器3的作用是什么?说出程序的执行效果。(10分)
#include
#define SYSCLK2000000//系统时钟频率近似为2MHz
Sfr16TMR3RL=0X92;//Timer3定时器重装值
Sfr16TMR3=ox94;//Timer3定时器计数值
V oid PORT_Init(void);
V oid Timer3_Init(int counts);
Unsigned int xdata p2led[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfb,0xfd,0xfe};
V oid main(void)
{
WDTCN=0Xde;//禁用wdt看门狗定时器
WDTCN=0Xad;
PORT_Init();
Timer3_Init(SYSCLK/12/10);//初始化定时器3,终端频率10Hz
EA=1;//使能系统全局中断
While(1);//死循环等待中断
}
6、根据下图,读void T0_model_init(void)程序,详细注释程序中的每行意思,说出该程序的功能。(10分)
V oid T0_model1_2ms_init(void)
{
TMOD=0x01;//
TH0=0Xf8;//
TL0=0x30;//
TCON|=0x10;//
}
7、下列程序是一个中断方式的程序,说出程序功能并用查询法实现该程序的功能。(20分)#include
Char data*p;
V oid main(void)
{
Xbr0=0x04;//交叉开关配置,使能UART0
XBR2=0x40;//使能交叉开关;
POMDOUT|=0x01;//tx0为推挽输出方式
TMOD=0x20;
TH1=0xfd;
TL1=oxfd;
TR1=1;
SCON0=0x40;//UART0初始化
P=0x20;//地址指针初始化
EA=1;//开中断
Es0=1;
…(代码缺失)
Eso=0;
}
8.阅读下图,说出使用C8051f020的A/D转换器用到哪些SFR?各个SFR起到什么作用?(10分)
江苏大学计算机学院单片机试卷答案
1.有程序存储器、内部数据存储器、外部数据存储器、特殊功能寄存器和位寻址区五个独立的地址空间。
l 程序存储器:存放程序和常数,容量为64KB,地址范围0000H-0FFFFH
l 内部数据存储器:用于通用寄存器和存放数据的临时存储器,容量为256B,地址范围00H-0FFH
l 外部数据存储器:用于存放数据,容量为64KB(有4KB在芯片内部),地址为0000-0FFFFH
l 特殊功能寄存器(SFR):提供对片内资源和外设的访问和控制,以及与外设的数据交换,C8051F020有122个,离散分布在地址80H-0FFH中。
l 位地址空间:存放位变量,进行布尔运算,容量为256位,有内部RAM的20H-2FH (16字节,128位)和部分SFR(字节地址可以被8整除的)组成,地址范围为00H-0FFH l 内部RAM:有256字节,低128B中的00H-1FH用于通用寄存器,20H-2FH既可以字节寻址也可以位寻址,30H-7FH作一般存储器用;高128B因为与SFR地址重叠,故只能间接寻址,也作一般存储器用,理论上堆栈可以设在内部数据存储器的任何位置,复位时堆栈指针SP为07H,但为了闭开通用寄存器和位地址空间,一般设在30H-0FFH。
2.P1.2,P1.3用作模拟输入,交叉开关在为数字外设分配引脚时应跳过这两个引脚。据书P53最后一段知,P0.5、P0.6、P0.7也不能被分配。
TX0=P0.0,RX0=P0.1,SCK=P0.2,MISO=P0.3,MQSI=P0.4,NSS=P1.0,SDA=P1.1,SCL=P1.4
3.见书P66-P69
4.题目中提到程序在上电后即运行,上电即发生复位,据书P72第一句话:单片机在复位后从内部振荡器启动;再据第三段:C8051F020单片机复位后,内部振荡器工作在2MHZ,并且系统默认它作为系统时钟。
5.书P167例4.3
6.参考书P158
7.P195例4.7四段程序都看下,防止老师变换形式考(如给出发送程序要求写出接收程序,或者给出查询法程序要求写出中断法程序)
8.AMX0CF:设定8个外部输入的模拟量为单端输入或双端输入
AMX0SL:设定8个外部输入的模拟量和内部温度传感器量在某一时刻通过多路选择器