单片机

更新时间:2024-06-03 20:38:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

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分) Void 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 //包含特殊功能寄存器SFR声明的头文件 #define SYSCLK 2000000 //系统时钟频率近似为2MHz Sfr16 TMR3RL=0X92; //Timer3定时器重装值 Sfr16 TMR3=ox94; //Timer3定时器计数值 Void PORT_Init(void);

Void Timer3_Init(int counts);

Unsigned int xdata p2led[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfb,0xfd,0xfe}; Void 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分)

Void T0_model1_2ms_init(void) { TMOD=0x01; //

TH0=0Xf8; // TL0=0x30; // TCON |=0x10; // }

7、下列程序是一个中断方式的程序,说出程序功能并用查询法实现该程序的功能。(20分) #include Char data *p; Void 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分)

本文来源:https://www.bwwdw.com/article/rc16.html

Top