stc12c5410ad单片机程序

stc12c5410ad单片机程序
stc12c5410ad单片机程序

用ad实时动态采集电池电压并显示在数码管上,电池给电机供电,调节PWM的占空比,使电池电压降到6.5v时,蜂鸣器报警。附上实物图。

# include

#define uchar unsigned char

# define uint unsigned int

sbit w2=P1^7;

sbit w4=P1^6;

sbit f=P1^0;

uint a,temp,b; //用于计算转换量储存ad转换结果

float get;

uchar code table1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //不带小数点uchar code table2[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}; //带小数点

void delay(uint i)

{

uint x,y;

for(x=i;x>0;x--)

for(y=110;y>0;y--);

}

void init()

{ //ADC_CONTR状态

ADC_CONTR|=0x09; //ADC_START=1,开始转换

while((ADC_CONTR&0x10)==0); //等待AD转换结束

ADC_CONTR=0Xe9; //转换结束

get=ADC_DATA; //读取转换结果

ADC_CONTR|=0xe8; //将ADC_FLAG软件清零

delay(2);

get=(get*5)/256; //8位ad,256级量化电平,转换结果的计算公式为,换值=256*Vin/Vcc

get=get*2.38;

delay(5);

}

void ad()

{

temp=get*10;

if(temp<65) //蜂鸣器

f=1;

a=temp%10;

b=temp/10;

}

void pwm()

{

CCON=0; //关闭控制寄存器

CL=0; //低/高位计数器分别给0

CH=0;

CMOD=0x02; //选择PWM的时钟源输入

CCAP0L=CCAP0H=0x02; //占空比设置

CCAPM0=0x42; //设置8位PWM

CR=1; //起动PCA计数器阵列计数

}

void display()

{

P2=table2[b];

w4=0;

w2=1;

delay(10);

P2=table1[a];

w2=0;

w4=1;

delay(10);

}

void main()

{

ADC_CONTR|=0x80; //开启转换电源

delay(1); //延时等待内部电源稳定

ADC_CONTR|=0x60; //设置AD转换时间

P1M0=0x02; //设置P1.1所在通道为开漏模式

P1M1=0x02;

delay(2); //延时一段时间,是电压达到稳定

ADC_DATA=0x00; //清AD转换结果寄存器

f=0;

while(1)

{

pwm();

init();

ad();

display();

}

}

单片机试题库分章节答案(C语言)

(红色是考试考过的,蓝色是老师给的习题“重点看“) 第1部分单片机概述及数学基础 一、填空题 1、十进制255的二进制是11111111 ,十六进制是FF 。 2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/输出接口电路、以及相互连接的总线等集成在一块芯片上。 3、十进制127的二进制是1111111,十六进制是7F。 4、+59的原码是00111011,-59的补码是11000101。 5、十进制数100转换为二进制数是1100100;十六进制数100转换为十进制数是256。 6、十进制数40转换为二进制数是101000;二进制数10.10转换为十进制数是 2. 5。 7、十进制99的二进制是1100 011 ,十六进制是63 。 二、判断题 (×)1、AT89S51是一种高性能的16位单片机。8位机 (×)2、有符号正数的符号位是用1表示的。 三、选择题 ()1、计算机中最常用的字符信息编码是(A) A. ASCII B.BCD码 C. 余3码 D. 循环码 四、简答题 1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点? 第2部分51单片机硬件结构、存储系统及 I/O接口 一、填空题 1、AT89S51单片机共有 4 个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O口的是P0 。 2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为__ 1/12 μS __ ,

机器周期为____1μS __。 3、AT89S51单片机字长是___8___位,有___40根引脚。 4.89S51单片机是8 位单片机,其PC计数器是16 位。 5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6 μS,一个机器周期是2μS μS。 6.89S51单片机是+5 V供电的。4.0-5.5V 7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。8.MSC-51系列单片机具有 4 个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是一个专供用户使用的I/O口,常用于第二功能的是P3 口。 9.当单片机系统进行存储器扩展时,用P2口的作为地址总线的高八位,用P0作为地址总线的低八位。 10.半导体存储器分为___ROM___和__RAM__两大类,其中前者具有非易失性(即掉电后仍能保存信息),因而一般用来存放系统程序,而后者具有易失性,因而一般用来存放经常变动的用户程序.中间结果等。 11.MCS-51系列单片机对外部数据存储器是采用_DPTR___作为指针的,其字长为_16__位,因而可寻址的数据存储器的最大空间为_64K_字节。 12. 51单片机有26个特殊功能寄存器,其中11个具有位寻址功能。 13. 当单片机系统需要外扩展存储器时,P2和P0 作为地址总线。 14.AT89S51单片机上电初始化后,将自动设置一些寄存器的初始值,其中堆栈指针SP的初始值为07H ,P0口复位值是FFH。 15.单片机两种节电模式:空闲模式和掉电模式,节电模式是由特殊功能寄存器PCON中的有关位来控制的。 16. 在单片机硬件设计时,31脚一般要接___高电平___,晶振在PCB设计中应尽量___靠近51芯片___。 17.在AT89S51单片机中,RAM是数据存储器,ROM为程序存储器。 18.单片机的复位方式主要有上电复位和按键复位两种。 19.AT89S51单片机的内部RAM的寻址空间为256B,而内部ROM的寻址空间为4K。

单片机简答题

简答题 1、简述借用定时/计数器溢出中断作为外部中断的具体方法? 2、简述8051片内RAM的空间地址分配。 3、MCS-51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么? 4、简述直接位寻址区的空间分配,片内RAM中包含哪些可位寻址单元? 5、8051单片机的存储器在结构上有何特点?在物理和逻辑上各有哪几种地址空间?访问不同空间的指令格式有何区别? 6、8051单片机在片内有哪些主要逻辑功能部件?每个逻辑部件的主要功能是什么? 7、写出MCS-51的所有中断源,并说明说明哪些中断源在响应中断时,由硬件自动清除,哪些中断源必须用软件清除?它们的中断程序入口地址分别为什么? 8、8031的扩展存储器系统中,为什么P0口要接一个8位锁存器,而P2口却不接? 9、8051在什么条件下可响应中断? 10、什么是中断矢量?若某个中断源的中断服务程序的字节数超过8个单元,应如何处理?程序题: 1. 若要完成以下数据传送,如何应用MCS-51指令予以实现? (1)外部RAM 0020H单元内容送内部RAM 20H单元: (2)外部ROM 2000H单元内容送内部 RAM 20H单元: 2.编写程序段,用三种方法实现累加器A与寄存器B的内容交换。 3.编程将片内20H单元开始的30个数传送到片外RAM 3000H开始的单元中。 解: MOV R7 , #30 ;传送字节数给R7 ;R0指向片内20H单元 ;DPTR指向片外3000H单元 LOOP ;取数 ;将数据转存入片外RAM ;R0指向片内下一单元 ;DPTR指向片外下一单元 DJNZ R7,LOOP ;数据传送完否? 4.编程,从串行口接受一个字符。 答: START: ;定时器T1工作于模式2 MOV TL1 , # 0E8H ;设置波特率为1200b/s MOV TH1,#0E8H ;启动T1 MOV SCON,#50H ;串行口工作于方式1,允许接收 L1: JNB RI , L1 ;等待接收数据,未接收到数据,继续等待 ;接收到数据,清RI

单片机分析程序

四、分析程序并填空() 1.执行下列程序段后,(P1)=___9BH____。 MOV P1,#5DH CPL P1.1 CPL P1.2 CLR P1.6 SETB P1.7 2.执行下列程序段后,(A)=__8BH_____,(C Y)=__不影响__。 MOV A,#C5H RL A 3.下列程序段执行后,(R0)=___7FH____,(7EH)=__00H__,(7FH)=_41H______。 MOV R0,#7EH MOV 7EH,#0FFH MOV 7FH,#40H INC @R0 INC R0 INC @R0 4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALL SUBTRN双字节指令后,(PC)=__0345H_,(61H)=___25H____,(62H)= __01H__。 5.阅读下列程序,说明其功能。 MOV R0,#data MOV A,@R0 RL A MOV R1,A RL A RL A ADD A,R1 MOV @R0,A RET ; (data)×10操作 6.改错 1.MUL RoRl 乘法指令应使用A、B寄存器操作 2.MOV A,@R7 间接寄存器使用R7有误,间址寄存器只能使用R0、R1 3.MOV A,#3000H 8位累加器A不能接受16位数据 4.MOVC @A+DPTR,A MOVC指令为对程序存储区操作指令,累加器的内容不可通过变址方式送入程序存储器,两操作数写反了。 5.UMP #1000H 长转移指令中的操作数为16位转移地址,不能用立即数的形式来表达。 7. 说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写) 1.ANL A,20H 直接寻址 2.ADDC A,#20H 立即寻址

单片机题库 带答案

单片机题库 一、填空题 1、当使用8031单片机时,需要扩展外部程序存储器,此时/EA应接((地)低电平)。 2.8051单片机内部有( 2 )个定时/计数器,门控制信号GATE 设置为1 时,由(TRx )和(INTx)控制定时器的启动。 3. 若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为(08H~0FH)。 4.若累加器A中的数据为01110011B,则PSW中的P=( 1 )。 5、MCS-51单片机具有4个(8 )位并行I/O口,有( 1)个全双工的串行输入输出口。 6、计算机的元件级总线有(地址总线)、(数据总线)、(控制总线) 7、MOV A,@R1指令中,源操作数的寻址方式是(寄存器间接寻址)。 8、8051单片机堆栈遵循数据先入后出的原则。 9、8051单片机使用电源为5V。 10、在立即寻址方式中,在数前使用#号来表示立即数。 11、在8051单片机中,加法指令可以分为ADD,ADC两种。 12、设8051外接12MHz的石英晶体,则一个机器周期的时间宽度为1us。 13、8051单片机的C语言源程序的扩展名为dac,Dac。 14、在设计汇编语言源程序时,可以使用顺序结构的程序,也可以使用某些指令构成分支结构或者循环结构的程序。15、当8051单片机复位后,程序的入口地址为 0000H 。

16、8051单片机中的定时器/计数器有 2个。 17、8051单片机有5 个中断源,分成 2个优先级。 18、MCS-51单片机具有8位CPU,共有 16根地址线。 19、MCS-51片内有( 128 )个字节的数据存储单元,( 21 )个 特殊功能寄存器。片内数据存储器寻址空间是( 256 )字节。 20、内部RAM低128个字节划分为( 工作寄存器区 )、( 位寻 址 )、( 数据缓冲区 )三个部分。 21、访问特殊功能寄存器和片外数据存储器分别采用( 直接寻 址 )、( 寄存器间接寻址 )寻址方式。 22、清除片内RAM 2FH单元最低位,使用的命令是( CLR 08H )。 23、在MCS-51系列单片机MCS-51单片机有4个( 8 )位的并行 I/O口,其中( P0 )口用做低8位地址线和数据线分时复用, 而 ( P2 )口用作高8位地址线。 24、MCS-51单片机有一个具有( 2 )个中断优先级,( 5 ) 个中断源的中断系统。对于每个中断源,均可通过对特殊功能寄存器 中中断优先级寄存器设置其优先级,置( 1 )为高优先级。 25、8031是( 高 )电平复位,复位后,P0-P3口为( 高 ) 电平,SP的值为( 07H ),PC的值为( 0000H ),工作寄 存器位于第( 0 )组。 26、MCS-51单片机具有( 8 )位CPU,共有( 16 )根地址线,可寻 址外部程序存储器( 64K)字节,可寻址外部数据存储器 ( 64K )字节。

单片机简答题汇总

单片机简答题汇总 1、计算机经历了几个时代? 电子管、晶体管、集成电路、大规模集成电路和超大规模集成电路、智能计算机。 2、冯诺依曼设计思想? a.计算机包括运算器、存储器、输入/输出设备。 b.内部采用二进制表示指令和代码。 c.将编号的程序送入内存储器中,然后启动计算机工作,能够顺序逐条取出指令和执 行指令。 3、MCS-51的内部结构? 8位CPU、8位并行I/O口、128个字节的内部RAM、21个SFR、4KB的内部ROM、一个全双工串行I/O口、2个16位定时器/计数器、5个中断源,2个中断优先级、 4、ROM和RAM ROM:片内4KB,地址范围0000H – 0FFFH 片外扩展64KB 地址范围0000H - FFFFH 片内外统一编址方式复位后PC为0 RAM:片内256字节地址范围00H – FFH 低128字节为一般RAM区00H-7FH 00H – 1FH 工作寄存器区,4组通用寄存器区,一组8个寄存器 20H - 2FH 位寻址区,也可字节寻址 30H – 7FH堆栈区和数据缓冲区 高128字节为SFR地址范围为80H- FFH 实现各种控制功能 5、堆栈?堆栈指针? 一种按照“先进后出”为原则的线性表数据结构。 存放堆栈的栈顶地址的寄存器(8位),系统复位后SP为07H。 6、单片机正常工作的条件? a.电源正常 b.时钟正常 c.复位正常 7、C51外扩的ROM和RAM可以有相同的地址空间,但不会发生数据冲突,为什么? 访问外扩的ROM和RAM的指令不同,所发出的控制信号也不同。读外部RAM时,RD/信号有效,写外部RAM时,WR/有效,读外部ROM时,PSEN/有效。在程序执行的过程中只能有一个信号有效,因此即使有相同的地址也不会发挥数据冲突。 8、C51外部引脚EA/的作用? EA/是内外部RAM的选通信号 EA/ = 0 时,只选择外部ROM EA/ = 1 时,PC<0FFFH时,选择内部ROM PC>0FFFH时,选择外部ROM 9、位寻址区? 内部RAM的20H – 2FH为位寻址区,位寻址范围为00H – 7FH SFR中地址能被8整除的字节地址单元,地址范围是80H – FFH 10、中断?中断响应和中断返回? 由于内部或外部的某种原因,CPU必须终止当前的程序,转去执行中断请求的那个外设

《单片机(C51)技术》复习题

一.填空题(每空1分,共10分) 1.单片机的最小系统除了单片机外还应包括时钟电路. 及电源电路。2.MCS-51单片机具有一个位的CPU和位的程序计数器。 3.MCS-51单片机执行指令所用的时间以机器周期为单位,1个机器周期= 时钟周期。4.如果单片机的晶振频率为12MHZ,那么机器周期为,如果单片机的晶振频率为6MHZ,那么机器周期为。 5.用Keil C51软件编写C语言源文件时应保存为扩展名为的文件,用PROTEUS 软件进行仿真时应下载扩展名为的代码文件。 6.编译预处理命令是计算机将C语言编译为机器语言是进行的预处理,编译预处理命令以开头,末尾不加。 7.C51语言中有字符型、整型、浮点型指针型和位变量等几种基本变量类型,其中,字符型变量所占用的长度为Byte。整型变量所占用的长度为Byte。 8.若想用uchar代换程序中的unsigned char则所使用的语句为:; 9.在编程过程中,变量必须先后使用。#define N 5 语句中N为(常量.变量)。 10.在程序运行中,其值可以改变的量称为变量。一个变量主要由两部分构成:一个 是,一个是。 11.65%10= ;67/10= ;919%100= ;0x7f的十进制数为。12.逻辑表达式的结合性为。逻辑表达式的值应该是一个逻辑值“真”或“假”,以代表假,以代表真。 13.函数是具有一定功能的程序段,C语言程序有主函数. 和用户自定义函数。函数的定义不能嵌套。一段程序只能有且只有一个函数。 14.有两种方法可以终止子函数运行并返回到调用它的函数中:一是执行到函数的 返回;二是执行到语句返回,并可以带回返回值。15.在Keil C中,如果被调函数定义在调用函数之后,则在函数调用之前必须进行。 16.unsigned char a[10];定义了一个型数组a,数组长度为,可用的下标为。unsigned char m[3][6];定义了一个维数组m,数组元素的个数为。17.数组定义时方括号中的数值必须是,该数值反映了数组元素的多少。数组元素的引用采用加下标的方法。 18.P1=0XFE;P1=P1<<2;移位后P1= 。P1=0XF5;P1=P1>>2;移位后P1= 。 19.循环结构是程序设计中的一种基本结构,循环结构的语句有:. 和do-while语句。 20.在循环体中加入break语句可以改变循环的运行过程,遇到break;结束。21.语句for(i=0;i<=5;i++);控制的循环次数为。语句for(i=5;i<0;i--);控制的循环次数为。若i=5,语句while(i<6) i++;控制的循环次数为。 22.把P1^1口定义为K1: ; 定义一个位变量key1: ; 23.指针是C语言中一个重要的概念,指针型变量以标记。 24.按键消抖一般有两种方法:和软件消抖,软件消抖中,当单片机检测到有键按下时,可以先越过抖动过程再对按键识别。 25.MCS-51单片机有四个8位双向并行的I/O口,这四个端口既可以字节寻址又可 以,其中内部没有上拉电阻的端口是。 26.数码管按发光二极管连接方式分为共阴极和数码管。按段数可分为七段数码管和。 27.A T89C51单片机共有5个中断源。它们分别为2个外部中断:. ,3个

单片机题库及答案

单片机题库及答案 【篇一:单片机试卷及答案】 填空题(每空1分,共20分) 1、+1000001的反码是。十进制数-4的8位二进制补码是。 2、计算机所能执行的指令的集合称为。指令的编码规则称为,一般由和操作数两部分组成。 3、cpu一次可以处理的二进制数的位数称为cpu的。 4、当ea为电平时,cpu总是从外部存储器中去指令。 5、89c52单片机有6个中断源,其中内部中断源有个,外部中断源有个。 6、汇编指令中,对程序存储器的访问用指令来访问,外部ram用指令来访问。 7、c51的数据类型sfr占个字节,c51中整型变量占个字节。 8、指令mov 20h,#20h中,源操作数的寻址方式是,目的操作数的寻址方式是。 9、定时器t1方式2的8位常数重装初值存放于寄存器中。定时器t0方式0,寄存器用于存放计数初值的低5位。 10、多机通信中,主机的sm2= 。 11、eprom存储器27c256内部容量是32k字节,若不考虑片选信号,则对其内部全部存储单元进行寻址共需根地址线。 12、波特率倍增位位于特殊功能寄存器中。 13、8155a内部具有1个位减法定时器/计数器。 二、单项选择题(共20题,每题1分,共20分) 1、单片机的应用程序一般存放于()中 a、ram b、rom c、寄存器 d、cpu 2、定时器0工作于计数方式,外加计数脉冲信号应接到()引脚。 a、p3.2 b、p3.3 c、p3.4 d、p3.5 3、mcs51单片机在同一优先级的中断源同时申请中断时,cpu首先响应()。 a、外部中断0 b、外部中断1 c、定时器0 d、定时器1 4、adc0809是()ad的转换器件 a、4通道8位 b、8通道8位 c、4通道12位 d、8通道12位 5、执行中断返回指令后,从堆栈弹出地址送给() a、a b、ri c、pc d、dptr 6、串行通信中,发送和接收寄存器是()

单片机原理复习简答题答案

一、简述题 1.MCS-51单片机芯片包含哪些主要逻辑功能部件?(习题2-1) (1)中央处理器(CPU):运算器--用于实现算术和逻辑运算;控制器:产生计算机所需的时序,控制程序自动执行 (2)内部数据存储器:用于存放可读写的数据 (3)内部程序存储器:用于存放程序的机器代码和常数 (4)并行I/O口:实现数据的输入/输出 (5)定时/计数器:用于实现定时和计数功能 (6)串行口:一个全双工的口,可实现数据的串行传送 (7)中断控制:实现单片机的中断判优、中断响应、中断查询等控制 (8)时钟电路:为单片机提供时钟脉冲序列 2.程序计数器PC的作用是什么?什么情况下会使用PC的值?(习题2-4) 程序计数器PC是位于片内的一个16位的寄存器,它专门用来存放当前要执行的指令地址,且能够自动加1,具有特殊功能。是一个不可寻址的特殊功能寄存器。其低8位地址经P0口输出,高8为地址经P2口输出。 3.MCS-51单片机设置有四组工作寄存器,这样做的目的是什么?请举例说明。?? 如何选择MCS-51单片机的当前工作寄存器组?(习题2-7) MCS-51的当前工作寄存器组是由程序状态寄存器PSW中的RS1、RS2位的状态决定的。工作寄存器区的选择: RS1,RS0=00 则选择了工作寄存器组0区R0~R7对应的单元地址:00H~07H RS1,RS0=01 则选择了工作寄存器组1区R0~R7对应的单元地址:08H~0FH RS1,RS0=10 则选择了工作寄存器组2区R0~R7对应的单元地址:10H~17H RS1,RS0=11 则选择了工作寄存器组3区R0~R7对应的单元地址:18H~1FH 4.简述MCS-51单片机的位寻址空间。(习题2-11) MCS-51单片机的位寻址空间由两部分构成:一部分为内部RAM位寻址区的20-2FH的16个单元的128位,位地址范围:00~7FH;另一部分为单元地址尾数为0和8的SFR中的位构成的位寻址区,共83位,位地址范围是80~0FFH。 MCS-51单片机位寻址空间共有211个位,位地址范围:00H~0FFH 5.什么是时钟周期、机器周期、指令周期?如何计算机器周期?晶振频率为12M时,计 算时钟周期、机器周期。(习题2-9) 时钟信号的周期称为S状态,它是晶振周期的两倍,即一个时钟周期(TS)包含2个晶振周期;指令周期(TI):执行一条指令所用的时间; 机器周期(TM):CPU完成一个基本操作所用的时间。(每12个时钟周期为1个机器周期)当晶振频率为12MHz时,时钟周期TS=2/f=0.17μs,机器周期TM=12/f=1μs 6.简单说明MCS-51单片机PSW寄存器各标志位的含义。(习题2-15) CY(PSW.7) 进位/借位标志位;AC(PSW.6)半进位/借位标志位;F0(PSW.5) 用户标志位;RS1(PSW.4)、RS0(PSW.3) 工作寄存器组选择位;OV(PSW.2) 溢出标志位; PSW.1 未定义;P(PSW.0) 奇偶标志位

单片机课后习题解答

练习练习练习 第二章单片机结构及原理 1、MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:(1)一个8bit CPU是微处理器的核心,是运算和逻辑计算的中心。 (2)片内震荡器及时钟电路:提供标准时钟信号,所有动作都依据此进行。 (3)4K ROM程序存贮器:存贮程序及常用表格。 (4)128B RAM 数据存贮器:存贮一些中间变量和常数等。 (5)两个16bit定时器/计数器:完全硬件定时器 (6)32根可编程I/O口线:标准8位双向(4个)I/O接口,每一条I/O线都能独立地作输入或输出。 (7)一个可编程全双工串行口。 (8)五个中断源。 2、什么是指令?什么是程序? 答:指令是规定计算机执行某种操作的命令。 程序是根据任务要求有序编排指令的集合。 3、如何认识89S51/52存储器空间在物理结构上可以划分为4个空间,而在逻辑上又可以划分为3个空间? 答:89S51/52存储器空间在物理结构上设有4个存储器空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。在逻辑上有3个存储器地址空间:片内、片外统一的64KB程序存储器地址空间,片内256B数据存储器地址空间,片外64KB的数据存储器地址空间。 4、开机复位后,CPU使用的是哪组工作寄存器?他们的地址是多少?CPU如何确定和改变当前工作寄存器组? 答:开机复位后,CPU使用的是第0组工作寄存器,地址为00H~07H,CPU通过改变状态字寄存器PSW中的RS0和RS1来确定工作寄存器组。 5、什么是堆栈?堆栈有何作用?在程序设计时,有时为什么要对堆栈指针SP重新赋值?如果CPU在操作中要使用两组工作寄存器,SP应该多大? 答:堆栈是一个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场。堆栈为位寻址区,这些单元有其他2FH~20H为工作寄存器区,1FH~00H单元,07H复位后指向SP 指针. 功能,因此在程序设计时,需要对SP重新赋值。如果CPU在操作中要使用两组工作寄存器,SP 应该至少设置为0FH。 6、89S51/52的时钟周期、机器周期、指令周期是如何分配的?当振荡频率为8MHz时,一个单片机周期为多少微秒? 答:时钟周期为时钟脉冲频率的倒数,他是单片机中最基本的、最小的时间单位。机器周期是指完成一个基本操作所需要的时间,一个机器周期由12个时钟周期组成。指令周期是执行一条指令所需要的时间,由若干个机器周期组成。 若fosc=8MHz,则一个机器周期=1/8×12μs=μs 7、89S51/52扩展系统中,片外程序存储器和片外数据存储器共处同一地址空间为什么不会发生总线冲突? 答:访问片外程序存储器和访问数据存储器使用不同的指令用来区分同一地址空间。 8、程序状态字寄存器PSW的作用是什么?常用状态标志有哪些位?作用是什么? 答:程序状态字PSW是8位寄存器,用于存放程序运行的状态信息,PSW中各位状态通常是在指

单片机试题及答案

单片机原理与接口技术习题答案 习题与思考题1 1-1 微型计算机通常由哪些部分组成?各有哪些功能? 答:微型计算机通常由控制器、运算器、存储器、输入/输出接口电路、输入设备和输出设备组成。控制器的功能是负责从内部存储器中取出指令并对指令进行分析、判断、并根据指令发出控制信号,使计算机有条不紊的协调工作;运算器主要完成算数运算和逻辑运算;存储器用于存储程序和数据;输入/输出接口电路完成CPU与外设之间相连;输入和输出设备用于和计算机进行信息交流的输入和输出。 1-2 单片微型计算机与一般微型计算机相比较有哪些区别?有哪些特点? 答:与通用微型计算机相比,单片机的硬件上,具有严格分工的存储器ROM和RAM和I/O端口引脚具有复用功能;软件上,采用面向控制的指令系统和硬件功能具有广泛的通用性,以及品种规格的系列化。单片机还具备体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高等特点。 1-3 简述计算机的工作过程。 答:计算机的工作是由微处理器以一定的时序来不断的取指令、指令译码和执行指令的过程。 1-4 单片机的几个重要指标的定义。 答:单片机的重要指标包括位数、存储器、I/O口、速度、工作电压、功耗和温度。 1-5 单片微型计算机主要应用在哪些方面? 答:单片机的主要应用领域有智能化产品、智能化仪表、智能化测控系统、智能化接口等方面。 1-6 为什么说单片微型计算机有较高的性能价格比和抗干扰能力? 答:因为单片微型计算机主要面向特定应用而设计,设计者在硬件和软件上都高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,具备较高的性能、价格比;单片机嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中,另外单片机体积小,可以放入屏蔽设备中,从而使其具有较高的抗干扰能力。 1-7 简述单片机嵌入式系统的定义和特点。 答:单片机嵌入式系统是嵌入到对象体系中的专用计算机系统;其特点是面向特定应用、与各个行业的具体应用相结合、硬件和软件高效率、软件固化在存储器芯片或单片机本身和不具备自举开发能力。 习题与思考题2 2-1 MCS-51单片机内部包含哪些主要功能部件?它们的作用是什么? 答:MCS-51单片机在一块芯片中集成了CPU、RAM、ROM、定时/计数器、多功能I/O口和中断控制等基本功能部件。 单片机的核心部分是CPU,CPU是单片机的大脑和心脏。 程序存储器用于存放编好的程序或表格常数。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。 定时/计数器实质上是加法计数器,当它对具有固定时间间隔的内部机器周期进行计数时,它是定时器;当它对外部事件进行计数时,它是计数器。 I/O接口的主要功能包括:缓冲与锁存数据、地址译码、信息格式转换、传递状态(外设状态)和发布命令等。 中断控制可以解决CPU与外设之间速度匹配的问题,使单片机可以及时处理系统中许多随机的参数和信息,同时,它也提高了其处理故障与应变能力的能力。 2-2 MCS-51单片机的核心器件是什么?它由哪些部分组成?各部分的主要功能是什么? 答:单片机的核心部分是CPU,可以说CPU是单片机的大脑和心脏。它由运算器、控制器和布尔(位)处理器组成。 运算器是用于对数据进行算术运算和逻辑操作的执行部件。

单片机简答题整理

1.MSC-51单片机内部包含哪些主要逻辑功能部件? (1)一个8位微处理器CPU。 (2)数据存储器RAM和特殊功能寄存器SFR。(3)内部程序存储器ROM。(4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。(5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。(6)一个串行端口,用于数据的串行通信 内部结构特点: 1.内部程序存储器(ROM)和内部数据存储器(RAM)容量(如表2-1所示)。2.输入/输出(I/O)端口。 3.外部程序存储器和外部数据存储器寻址空间。4.中断与堆栈。5.定时/计数器与寄存器区。6.指令系统。 2.片机的EA,AL,PS EN信号个自动功能是什么? EA:为片外程序存储器选用端,该引脚有效(低电平)时,只选用片外程序存储器,否则单片机上电或复位后选用片内程序存储器。ALE:地址索存有效信号输出在访问片外程序存储器期间,ALE以每机器周期两次进行信号输出,其下降沿用于控制锁存P0输出的低8位地址;在不访问片外程序存储器期间,ALE端仍以上述频率(振荡频率f os c的1/6)出现,可作为对外输出的时钟脉冲或用于定时目的.端,PSEN:片外程序存储器读选通信号输出端,低电平有效. 3.80C51系列单片机有哪些信号需要芯片引脚以第二功能方式提供? ●p1.0:定时计数器2的计数脉冲输入端T2P1.1:定时计数器2的外部控制端T2EXP3.0:PxD串行口输入端P3.1:T xD 串行口输出端P3.2:INT0外部中断0请求输入端,低电平有效P3.3:INT1外部中断1请求输入端,低电平有效P3.4:T0定时/计数器0技术脉冲输入端P3.5:T1定时/计数器1技术脉冲输入端P3.6:W R外部数据存数器写选通信信号输出端,低电平有效P3.7:RD外部数据存数器读选通信信号输出端,低电平有效.4.51系列单片机的程序状态字PSW中存放 什么信息?其中的OV标志位在什么情况下 被置位?置位是表示什么意思? ●PSW是一个8位标志寄存器,它保存指令 执行结果的特征信息,以供程序查询和判别。 ●1)做加法时,最高位,次高位之一有进位 则OV被置位2)做减法时,最高位,次高 位之一借位则OV被置位3)执行乘法指令 MULA B,积大于255,OV=14)执行处罚 指令DIV AB,如果B中所放除数为0,OV=1 ●0V=1,置位反映运算结果超出了累加器的 数值范围. 5.MCS-51系列单片机的存储器可划分为几 个空间?其地址范围和容量是多少?在使用 上有什么不同? 1)MCS-51单片机的存储器从物理结构上分 为:片内和片外数据存储器,片内和片外程 序存储器。2)从逻辑上分别可划分为:片内 统一寻址的64K程序存储器空间 (0000H---FFFFH);64KB的片外数据存储 器空间(0000H---FFFFH);256B的片内数 据存储器空间(00H---FFH)。 6.片内RA M低128单元划分为哪几个区 域?应用中怎么样合理有效的使用? ●工作寄存器区,位寻址区,数据缓冲区① 工作寄存器区用于临时寄存8位信息,分成4 组,每组有8个寄存器,每次只用1组,其他 各组不工作②位寻址区(20H~2FH),这16 个单元的每一位都赋予了一个位地址,位地 址范围为00H~7FH,位寻址区的每一位都可 能当作软件触发器,由程序直接进行位处理。 ③由于工作寄存器区,位寻址区,数据缓冲 区统一编址,使用同样的指令访问,因此这 三个区的单眼既有自己独特的功能,又可统 一调度使用,前两个已未使用的单元也可作 为一般的用户RAM单元。 7.51系列单片机的堆栈与通用微机中的堆栈 有何异同?在程序设计时,为什么要对堆栈 指针sp重新赋值? ①堆栈是按先进后出或后进先出的远侧进行 读/写的特殊RAM区域51单片机的堆栈区 时不固定的,可设置在内部RAM的任意区 域内。 ②当数据压入堆栈时,s p的内容自动加1, 作为本次进栈的指针,然后再存取数据sp 的值随着数据的存入而增加,当数据从堆栈 弹出之后,sp的值随之减少,复位时,sp 的初值为07H,堆栈实际上从08H开始堆放 信息,即堆栈初始位置位于工作寄存器区域 内,所以要重新赋值。 8.MCS-51单片机有4个并行口,在使用上如 何分工?试比较各口的特点,并说明“准双 向口”的含义? 一般P0做数据口和地址的低八位。P2做地 址的高八位。如果没有外部扩展存储器可以 作为一般的I/O使用。P1一般作为普通I/O 用。P3有第二功能,所以一般做特殊情况使 用,比如串行通信,按键中断,定时中断等。 “准”就是“基本上的意思”,也就是“准双 向口”不是真正的双向口。正常的双向口通 过方向寄存器设置后要作输出可以直接向数 据寄存器写,做输入可以直接读。而51的结 构造成他不能正样用,输出直接用就可以了, 输入必须先写全1然后再读。 9.定时器/计数器定时与计数的内部工作有 何异同? 定时工作模式和技术工作模式的工作原理相 同,只是计数脉冲来源有所不同:处于计数 器工作模式时,加法计数器对芯片端子 T0(P3.4)或T1(P3.5)上的输入脉冲计数;处 于定时器工作模式时,加法计数器对内部机 器周期脉冲计数。

51单片机C语言程序设计经典案例

项目三 C51程序设计语言基础 任务1 C51程序的识读 1.C51程序结构 例3-1 P_test /********************* ,标准的MCS-51单片机头文件为””,STC89系列单片机头文件为””

4.C51的常量和变量 1)常量 常量就是在程序运行过程中,其值不能改变的数据,包括整型常量、字符常量、字符串常量、实数常量、位标量等。 (1)整型常量:可以用二进制、八进制、十进制、十六进制表示。 无符号整数常量在一个数字后面加上“u”或“U”表示。长整数型常量在后面加上“l”或“L”,无符号长整数型常量在数字后面加上“ul”或“UL”,实数型常量在后面加“f”或“F”。 (2)字符常量:单引号内的字符,不可以显示的控制字符在前加“\”组成专用转义字符。(3)字符串常量:双引号内的字符,当双引号内没有字符时是空字符串。在C语言中,字

符串常量是作为字符类型数组来处理的,在存储字符串时,系统在字符串尾部加上转义字符“\o”,作为该字符串的结束符。 (4)实数常量:有十进制和指数两种表示形式。指数表示的实数为“[±]数字[.数字]e[±]数字”,[ ]中的内容为可选项 (5)位标量:位标量的值是一个二进制数。 2)变量 变量就是在程序运行过程中,其值可以被改变的数据。必须先用标识符作为变量名,并指出所用的数据类型和存储模式,这样编译系统才能为变量分配相应的存储空间。定义变量的格式: [ < 存储模式 > ] < 类型定义 > [ 存储器类型 ] < 标识符 >; 类型定义和标识符是必要的。存储模式有四种,自动(auto)、外部(extern)、静态(static)和寄存器(register),默认类型为自动(auto)。 表3-3 C51存储类型与MCS-51单片机存储空间的对应关系及其大小 如果在变量定义时省略了存储类型标识符,则编译器会自动选择默认的存储类型。默认的存

单片机复习题(含部分答案)

《单片机原理及应用》课程复习题 适用于电子信息工程11级 一、填空题 1、A T89S51单片机为8 位单片机,共有40 个引脚。 2、A T89S51的机器周期等于12 个时钟振荡周期。 3、A T89S51访问片外存储器时,利用ALE 信号锁存来自P0口发出的低8位地址信号。 4、A T89S51的P3口为双功能口。 5、A T89S51内部提供 2 个可编程的16 位定时/计数器,定时器有4 种工作方式。 6、A T89S51有 2 级中断, 5 个中断源。 7、A T89S51的P2 口为高8位地址总线口。 8、设计一个以AT89C51单片机为核心的系统,如果不外扩程序存储器,使其内部4KB闪烁程序存储器有效,则其EA* 引脚应该接+5V 9、单片机系统中使用的键盘分为独立式键盘和行列式键盘,其中行列式键盘的按键识别方法有扫描法和线反转法。 10、A T89S51内部数据存储器的地址范围是00H~7FH ,位地址空间的字节地址范围是20H~2FH ,对应的位地址范围是00H~7FH ,外部数据存储器的最大可扩展容量是64K 。 11、如果(A)=34H,(R7)=0ABH,执行XCH A, R7;结果(A)= 0ABH ,(R7)= 34H 。 12、在R7初值为00H的情况下,DJNZ R7,rel指令将循环执行256 次。 13、欲使P1口的低4位输出0,高4位不变,应执行一条ANL P1, #0F0H 命令。 14、若CPU使用的是寄存器第1组,R0~R7的地址范围是08H-0FH。 15、单片机进行串行通信时,晶振频率最好选择11.0592MHz 16、当执行MOVX A,@R1指令时,伴随着RD* 控制信号有效。 17、若A中的内容为67H,那么,P标志位为 1 。 18、A T89S51唯一的一条16位数据传送指令为MOV DPTR,data16 。 19、LJMP的跳转范围是64K,AJMP的跳转范围是2K B,SJMP的跳转范围是±128 B(或256B)。 20、74LS138是具有3路输入的译码器芯片,其输出作为片选信号时,最多可以选中8 片芯片。 21、如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后: POP DPH POP DPL POP SP 则:(DPH)= ___3CH___;(DPL)=___5FH___;(SP)=___50H___; 22、A T89S51复位后,PC与SP的值为分别为0000H 和07H 。 23、当单片机复位时PSW=00H,这时当前的工作寄存器区是0区,R4所对应的存储单元地址为04H。 24、当AT89S51执行MOVC A,@A+ DPTR指令时,伴随着PSEN*控制信号有效。 25、D/A(数/模)转换器的作用是把(数字量)转换成(模拟量),而A/D(模/数)转换器

单片机简答题

简答题: 1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少? 答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的入口地址分别是0003H、000BH、0013H、001BH、0023H。 2.已知单片机系统晶振频率为6MHz,若要求定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是多少?TMOD的值是多少?TH0=?TL0=?(写出步骤) 答:定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是1388H TMOD的值是00000001B,TH0=13H;TL0=88H。 3.MCS51系列单片机的内部资源有哪些?说出8031、8051和8751的区别。 答:MCS51系列单片机上有1个8位CPU、128B的RAM、21个SFR、4个并行口、1个串行口、2个定时计数器和中断系统等资源。8031、8051和8751的区别是8031内无ROM;8051内有4KB的掩膜ROM;8751内有4KB的EPROM。 1.如何正确使用P3口? 1.要点: (1)说明P3口有第一功能和第二功能的使用。 (2)P3口的第二功能各位线的含义。 (3)使用时应先按需要选用第二功能信号,剩下的口线才作第一功能I/O线用。 (4)读引脚数据时,必需先给锁存器输出“1”。 2.简述累加器的ACC的作用。 2.(1)8位专用寄存器。 (2)运算时存放一个操作数。 (3)运算后存放运算结果,所以称它为累加器。 3.简述寄存器间接寻址方式及其寻址范围。 3.(1)寄存器中存放的是操作数的地址,操作数是通过寄存器间接得到,这种寻址方式称为寄存器间接寻址方式。 (2)寻址范围: ①内部RAM低128单位,形式@Ri(i=0,1)。 ②外部RAM64K使用DPTR作间址寄存器,形式为@DPTR。 4.简述MCS-51单片机的中断入口地址。 4.中断入口地址为中断响应后PC的内容即中断服务的入口地址。 它们是:外部中断0 0003H 定时器T0中断000BH 外部中断1 0013H 定时器T1中断001BH 串行口中断0023H 5.简述串行数据传送的特点。 5.(1)传送按位顺序进行,速度慢。

单片机课后习题

单片机考试复习资料 第一章、绪论 1、什么叫单片机其主要特点有哪些 答: 在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 单片机主要特点有:控制性能和可靠性高;体积小、价格低、易于产品化;具有良好的性能价格比。 2、单片机有哪些应用领域 答: 智能仪器仪表; 机电一体化产品; 实时工业控制; 分布系统的前端模块; 家用电器;

交通与航空航天。 3、仿真调试有哪两种形式硬件仿真的目的是什么?答: 软件模拟和硬件仿真。 仿真的目的就是可以进行调试、跟踪、监视。 4、简述单片机应用系统的开发过程。 答: 系统需求分析; 硬件方案设计; 软件编程; 仿真调试; 实际运行。

第二章、80c51的结构和原理 1、80c51单片机在功能上,程序存储器的配置上主要有哪些分类答: 功能上分为基本型和增强型; 工艺上分为HMOS工艺和CHMOS工艺; 在片内程序存储器的配置上有掩膜ROM、EPROM和Flash、无片内程序存储器形式。 2、80c51基本型的存储器地址空间如何划分各空间的地址范围和容量如何 答: 在物理上设计成程序存储器和数据存储器两个独立的空间; 片内程序存储器为4KB,地址范围是0000H-0FFFH,

片内数据存储器为128字节RAM,地址范围是00H-7FH, 3、80c51单片机晶振频率分别为12Mhz,时,机器周期分别为多少答: 晶振频率为f,一个时钟周期为1/f,机器周期为12*1/f。 1μs,μs。 4、80c51单片机复位后的状态如何常用的复位方法有哪些 答: 复位后,PC内容为0000H; P0口~P3口内容为FFH; SP内容为07H; SBUF内容不定; IP、IE和PCONww的有效位为0; 其余的特殊功能寄存器的状态均为00H。 复位方法一种是上电复位,另一种是上电与按键均有效的复位。

51单片机练习题

一.闪烁灯 1.实验任务 如图4.1.1所示:在端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为秒。 2.电路原理图 图4.1.1 3.系统板上硬件连线 把“单片机系统”区域中的端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上。 4.程序设计内容 (1)延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为秒,相对于微秒来说,相差太大,所以我们在执行 某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是 如何设计呢下面具体介绍其原理:

如图4.1.1所示的石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒 MOV R6,#20 2个 2 D1: MOV R7,#248 2个22+2×248=49820× DJNZ R7,$ 2个2×248(498 DJNZ R6,D1 2个2×20=40 10002 因此,上面的延时程序时间为。 由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时,延时10ms,以此为基本的计时单位。如本实验要求秒=200ms,10ms×R5 =200ms,则R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2).输出控制 如图1所示,当端口输出高电平,即=1时,根据发光二极管的单向导 电性可知,这时发光二极管L1熄灭;当端口输出低电平,即=0时,发 光二极管L1亮;我们可以使用SETB指令使端口输出高电平,使用CLR 指令使端口输出低电平。 5.程序框图

相关文档
最新文档