单片机原理及应用课程设计

单片机原理及应用课程设计
单片机原理及应用课程设计

单片机原理及应用课程设计

智能仪器设计基础课程设计

目录

摘要----------------------------------------------------------------3

题目

----------------------------------------------------------------3

整体设计及系统原理--------------------------------------------------3

主要硬件介绍--------------------------------------------------------4

STC89C51单片机特点-----------------------------------------------4

STC89C51引脚说明-------------------------------------------------4 硬件设计------------------------------------------------------------6 单片机最小系统--------------------------------------------------6

数码管显示电路--------------------------------------------------7

键盘电路--------------------------------------------------------8

AD转换电路-----------------------------------------------------9 信号调理电路----------------------------------------------------9

24C02电路

------------------------------------------------------10

报警电路

-------------------------------------------------------11

加热电路

-------------------------------------------------------11

电源电路

-------------------------------------------------------12

软件设计

-----------------------------------------------------------12 数码管显示程序

-------------------------------------------------12

24C02读写程序

-------------------------------------------------14

AD转换程序

----------------------------------------------------18

算数平均滤波程序

----------------------------------------------18

热电阻非线性校正算法

------------------------------------------19

按键子程序

----------------------------------------------------20

报警子程序

----------------------------------------------------23

PID子程序----------------------------------------------------23 主程序

--------------------------------------------------------23 课程设计总结--------------------------------------------------27

参考文献------------------------------------------------------27

附录:

系统原理图

系统PCB图

摘要:

随着电子技术的飞速发展,单片机在国民经济生产各行业发挥了重要的作用。它因为集成度高、体积小、运行可靠、应用灵活、价格低、面向控制等特点得到了广大工程技术人员和客户的好评。在温度控制方面,单片机能够代替常规的模拟调节器。本文主要设计了单片机炉温控制系统硬件电路和软件程序。系统具有工作可靠、实时性强等特点,满足控制精度的要求。本着在满足系统性能要求的前提下,尽可能的减少硬件成本。本文主要涉及到控制系统的硬件设计和单片机的控制软件编程。本系统选用热电阻Cu50对炉温进行检测,在AD0804完成模数转换之后,STC89C51单片机对数据进行处理。人机接口电路部分能实现温度设定、温度显示、超温报警等功能。

题目:20. 试设计智能仪表

实现智能数字显示仪表。要求8位数码管显示(4位显示测量值,4位显示设定值),4输入按钮(功能选择、数码管选择、数字增加、数字减少),可设定上下限报警,蜂鸣器报警。适配Cu50热电阻,测温范围为0℃~130℃。采用比例控制、并用晶闸管移相驱动1000W 电加热器(电源电压为AC220V )。

整体设计及系统原理:

在系统中,利用热电阻测得电阻炉实际温度并转换成毫伏级电压信号。该电压信号经过温度检测电路转换成与炉温相对应的数字信号进入单片机,单片机进行数据处理后,通过LED 数码管显示温度并判断是否报警,同时将温度与设定温度比较,根据设定的P 算法计算出控制量,根据控制量通过控制双向晶闸管的导通和关闭从而控制电阻丝的导通时间,以实现对炉温的控制。该系统中的时钟电路可以根据要求进行准确计时。

主要硬件介绍:

STC89C5

1

单片机

AD0

24C

信号调数晶

STC89C51是改进型的51内核单片机,它比人们常用的AT89S51单片机编程更简单。

STC89C51单片机特点:

12时钟/6时钟机器周期的8051CPU;工作电压3.4-5.5V;工作频率0-40MHz;程序存储器容量4KB;RAM容量512B;I/O端口与AT89S51相同;通过串口(P3.0 P3.1)直接下载用户程序到代码存储器中(ISP功能),可下载10万次以上;具有EEPROM;具有看门狗,冷启动后未关闭状态,一旦启动无法关闭;3个定时计数器;2个外部中断,掉电模式可由外部中断低电平触发唤醒;一个异步串行口;温度范围0-75℃(商业),-40-85℃(工业);具有PDIP-40、PLCC-44、PQFP-44封装。

STC89C51引脚说明:

VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存

储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:

口管脚备选功能

P3.0 RXD(串行输入口) P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入)

P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE 只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

硬件设计:

单片机最小系统:

时钟电路采用12MHz的晶振和两个30pF的电容连接而成,是单片机的机器周期为1us左右,在使用定时器时便于计算和设置定时器的初始值。

复位电路:由于机器周期为2us,所以RESET引脚上产生一个2us以上的高电平脉冲,即可产生复位动作。电源接上瞬间,电容上没有电荷,相当于短路,所以复位引脚直接连到VCC,单片机复位,随时间增加,电容上电压逐渐变大,RESET引脚上电压逐渐降低至低电平时,单片机恢复正常状态,在此使用10k电阻,10uF电容,时间常数远大于2us,高电平能保持2us以上,足以使系统复位。

串口可以用来向单片机里下载程序,以及和计算机通讯等。

数码管显示电路:

此电路采用8个数码管和一个74LS245,一个74LS138和一个排阻组成。74LS245是一个8双向总线接收器,与单片机的P0口相接,控制数码管的段选端。由于P0口内部没有上拉电阻,所以做输出口时,必须外接上拉电阻。74LS138是一个3-8译码器,与P2口的高三位相接,经过译码控制数码管的位选端,数码管都是共阳数码管。

键盘电路:

4个按键分别与单片机的P3.3、P2.2、P2.3、P2.4相接,功能分别为功能选择、数码管选择,加数字、减数字,都是低电平有效,都接上拉电阻是保证没有键按下时,均为高电平,其中功能键按下时会触发外部中断。

AD转换电路:

ADC0804是一个CMOS的逐步逼近式AD转换器,具有8为分辨率,转换时间为100us,而最大误差为1个LSB值,差动式模拟电压输入、三态数字输出,模拟输入电压为0-5V。

信号调理电路:

Cu50在0℃~130℃时电阻变化为50.000Ω——77.833Ω,左上方电路为提供1mA电流的恒流源,因此Cu50输出的电压为0.005---0.077833V的电压,通

过信号调理电路将其转化为0—4.2V的电压送入AD。

可列方程组 0.005m+b=0与 0.077833m+b=4.2

解得 m=151 b=-7.55 由电路图可得

可令R23=150K,R24=1K

右下方为参考电压电路Vref=(1+R22/R21)*V, 可令V=0.03V R22=2K R21=3K. 0.03V可由稳压管TL431经分压可得。此电路中,放大器选择满摆

幅运放TLV2472。

24C02电路:

24C02是一种由I2C接口的EEPROM存储芯片,存储容量为256B,100万次

的编程/擦除周期,数据保存可达100年。在此电路中使用此芯片是要保存仪表

中某些已设定好的数据,当掉电后,数据不会丢失。由于I2C总线是开漏结构,

因此时钟线SCL和数据线SDA用10kΩ电阻上拉到高电平。

报警电路:

该报警电路由蜂鸣器和发光二极管、PNP三极管组成,当单片机的P2.0口输出低电平时三极管基极为低电平,三极管导通,蜂鸣器工作发出响声,同时发光二极管也导通,发光。三极管在此处是为了驱动蜂鸣器和发光二极管工作。在软件设计中可设置当温度超过上限或下限时,报警电路工作。

加热电路:

单片机驱动移相型驱动器、具有点阻性负载的电路如上图所示。移相型驱动器可以在单片机控制驱动器的瞬间使驱动器MOC3022触发双向晶闸管BTA12,因此可以按照单片机发出的控制信号控制双向晶闸管导通角。其中R9=(5V-VOL-VF)/IFT=2V/10mA=200Ω,电阻R11用于限制MOC3022的输出电流

ITSM,计算公式如下:R11=Vpeak/ITSM=(220)V/1A=311Ω.

第二个电路为电压过零检测电路,当电压过零时,向单片机发一个中断,单片机可以按照此信号控制双向晶闸管的导通角。

电源电路:

这是仪表的供电电路可以通过外接直流电源,然后通过该电源电路给仪表供电。电路图中的二极管桥式电路是滤波电路。接入电源后通过稳压模块7805稳压最终获得+5V的电压。最左面的发光二极管是检测电源是否接通。通电时,二极管亮。

软件设计:

数码管显示程序:

#define uchar unsigned char

#define uint unsigned int

void delay(uint x) //延时函数大约延时5ms

{

uchar m,n;

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

for(n=60;n--;n>0);

}

void display1(uchar a,uchar b,uchar c,uchar d)//设定值显示

{

P2=0x8f&P2; //送第一个数码管的位码

P0=a; //送第一个数码管的段码

delay(10); //短暂延时

P2=0x9f&P2; //送第二个数码管的位码

P0=b; //送第二个数码管的段码delay(10);

P2=0xaf&P2; //送第三个数码管的位码

P0=c; //送第三个数码管的段码

delay(10);

P2=0xbf&P2; //送第四个数码管的位码

P0=d; //送第四个数码管的段码

delay(10);

}

void display2(uchar a,uchar b,uchar c,uchar d)//测量

{

P2=0xcf&P2; //送第一个数码管的位码

P0=a; //送第一个数码管的段码

delay(10);

P2=0xdf&P2; //送第二个数码管的位码

P0=b; //送第二个数码管的段码

delay(10);

P2=0xef&P2; //送第三个数码管的位码

P0=c; //送第三个数码管的段码

delay(10);

P2=0xff&P2; //送第四个数码管的位码

P0=d; //送第四个数码管的段码

delay(10);

}

24C02读写程序:

#define uchar unsigned char

#define uint unsigned int

uchar a;

sbit sda=P3^4;

sbit scl=P3^5;

void delay()

{ ;; }

void start() //启用总线

{

delay();

scl=1;

delay();

sda=0;

delay();

}

void stop() //停用总线

{

sda=0;

delay();

scl=1;

delay();

sda=1;

delay();

}

void reply() //应答信号

{

uchar i;

scl=1;

delay();

while((sda==1)&&(i<250))

i++;

scl=0;

delay();

}

void first() //24C02初始化程序{

sda=1;

scl=1;

delay();

}

void write(uchar date) //写一个字节的程序{

uchar k,temp;

temp=date;

for(k=0;k<8;k++)

{

temp=temp<<1;

scl=0;

delay();

sda=CY;

delay();

scl=1;

delay();

}

scl=0;

delay();

sda=1;

delay();

}

uchar read() //读一个字节的程序{

uchar i,m;

scl=0;

delay();

delay();

for(i=0;i<8;i++)

{

scl=1;

delay();

m=(m<<1)|sda;

scl=0;

delay();

}

return m;

}

void delay1(int x) //延时程序

{

uchar a,b;

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

for(b=100;b>0;b--);

}

void write_add(uchar address,uchar date) //写程序{

start();

write(0xa0);

reply();

write(address);

reply();

write(date);

reply();

stop();

}

uchar read_add(uchar address) //读程序

{

uchar dat;

start();

write(0xa0);

reply();

write(address);

reply();

start();

write(0xa1);

reply();

dat=read();

stop();

return dat;

}

AD转换程序:

sbit wr=P3^6;

sbit rd=P3^7;

#define uint unsigned int

#define uchar unsigned char

uint AD() //AD转

换函数

{

uchar AD;

wr=0;

delay(2);

wr=1;

delay(20);

rd=0;

delay(2);

P1=0xff;

AD=P1;

rd=1;

return AD;

}

算数平均滤波子程序:

#define N 8 //定义采样次数

uchar value_buf[N];

uchar lvbo() //滤波函数

{

uchar i;

uchar count;

int sum=0;

value_buf[i++]=AD; //获取AD转换结果,并计算累加和

if(i==N)

i=0;

for(count=0;count

sum+=value_buf[count];

return (uchar)(sum/N);

}

热电阻的非线性校正算法:

热电阻Cu50的阻值与温度的关系,并非是绝对的线性关系,因此为了使仪表误差较小应该对热电阻进行非线性校正。在1mA的恒定电流下,热电阻的电压与温度变化的关系如下表所示:

T/℃0 10 20 30 40 50 60

U/mA 50.000 52.144 54.285 56.426 58.565 60.704 64.842 T/℃70 80 90 100 110 120 130

U/mA 64.981 67.119 69.259 71.400 73.542 75.687 77.833

程序:

uint var;

uint code Rtable[]={50000 52144 54285 56426 58565 60704 64842 64981 67119 69259 71400 73542 75687 77833}//热电阻的电压值,每隔10度对应一个电压

//值

void tab() //查表子函数

{

uint v1=0,max,min,min,mid,j;

单片机教程详细图解-新华龙单片机学习教程

新华龙单片机学习入门教程基于本人学习单片机的痛苦经历,特编写本教程,以此献给广大的单片机初学者,希望您能从中受益。 单片机老鸟寄语:本教程乃最通俗易懂之单片机教材也,如果您还是看不懂,请千万不要涉足此行,以免误入歧途,耽误您的前程*_* 拿到这本教程您首先就会想,什么是 IAP 教学法?是不是一种什么全新的教学方法?当然不是,我可没有那么大的本事,其实这只是我杜撰的一个新名词,意思就是In Applications Program(在应用中编程),当然这只是针对单片机教学,说法是否正确,还得您说了算。 至于为什么要提这种说法,那我倒想说几句。大家都知道,学习电子技术是一件非常无聊和枯燥的事情,为什么会有这种想法,就是因为我们传统的教学方法只重理论而忽略了实践,要一个人记住那些空洞而有无聊的理论知识实在不是一件容易的事,好在我们总算熬过来了,不管如何,也多多少少的学习了一些电子基础知识。 接下来我们应该进一步掌握些什么知识呢,凡涉足此行的朋友都知道,那就是单片机。不过这可不是一件容易的事,倒不是因为单片机很难学,而实在是我们身边很难找到一本专为单片机入门者而编写的教材。翻一下传统的单片机教材,都好象是为已经懂单片机的人而写的,一般总是以单片机的结构为主线,先讲硬件原理,然后是指令,接着讲软件编程,再是系统扩展和外围器件,最后举一些实例(随便说一点:很多书中的实例都是有错误的),很少涉及单片机的基础知识,如果按照此种学习方法,想进行产品开发,就必须先把所有的知识全部掌握了才可以进行实际应用。孰不知,单片机不象模拟电路和数字电路那样,只要搞懂了电路原理,再按照产品要求设计好相应的电路就可以了。它是一种以简单的硬件结构,复杂而有灵活的软件系统来完成设计的通用性产品,不同的设计者只会使用其不同的功能,几乎没有人会把它的全部指令都使用起来,所以学习使用单片机只能靠循序渐进的积累,而不可能先把它全部掌握了再去做产品开发(当然天才就例外了*_*)。 基于以上原因,本人想尝试一种全新的单片机教学方法,打破传统的循序渐进式的教学方法,以单片机的应用为蓝本,结合基本的工业控制系统和实践工作中的具体应用,不分先后顺序,将各条指令贯串于一个又一个的实验中,通过所见即所得的实验来讲解各种指令的编程方法,顺便讲解相关的基本概念,使您尽快地熟悉单片机应用的基本步骤,掌握软件编程的基本方法。 如果您学完了就能成为单片机的入门者,完全可以进行一般产品的开发;下册部分是单片机应用的提高部分,主要学习单片机的系统扩展(比如:ROM 和RAM 存储器的扩展,并行口的扩展,串行口的扩展,A/D 和D/A 与单片机的接口)以及相关开发工具和软件的使用(包括KELL C51 的应用与调试技巧,硬件仿真器的使用)等等,如果您学完了下册部分,那就得恭喜您成为了单片机开发的高手了,不过单片机的技术是在不断的发展和提高的,您也不要太骄傲哦! 为了尽量把最新的单片机知识和应用成果收录进我们的教程,希望您能不吝赐教,共同来努力把我们的教程不断的改进和完善。还是那句题外话,技术是靠不断的积累和交流才会进步的,固封自守只会更加落后。 由于时间和精力的限制,我还是希望在您学习本教程之前,自己先熟悉一点相关的电子技术知识,特别是数字电路基础,这对您学习中碰到的相关概念会有很大的帮助。

单片机原理及应用 设计报告

单片机设计报告 编写:HUBU2015级通信工程xmx 2017年5月23日 一、设计的目的与要求 利用8*8LED点阵动态显示汉字的字样。采用STC89C52单片机作为整个控制搭电路的核心,并编制软件程序,实现汉字的显示。通过此设计来巩固单片机硬件系统的设计及软件系统的编程,通过设计将平时所学知识付诸实践,提高动手能力。 1、设计一个8*8点阵LED电子显示屏。 2、要求在目测条件下LED显示屏各点亮度均匀、充足,可显示一个“大”字。 二、总体方案设计 2.1 硬件电路的总体设计 1、设计总体框图 硬件电路的设计框图如图1所示。硬件电路结构由8个部分组成:时钟电路、复位电路、按键接口电路、电源电路、点阵显示阳极电路、点阵显示阴极电路和8*8点阵显示电路。 2、工作原理 由于是8*8点阵屏设计,需要端口16个,可采用静态显示模式,用P0口控制行,P1口控制列,通过软件编程,即可实现汉字的显示。

3、元器件清单 2.2系统软件的设计 软件程序主要由开始、初始化、主程序、字库和延时子程序组成。 三、系统硬件电路的具体设计 3.1 时钟电路 STC89C52单片机内部的振荡电路是一个高增益反向放大器,引线X1和X2分别是放大器的输入端和输出端。单片机内部虽然有振荡电路,但要形成时钟,外部还需附加电路。STC89C52的时钟产生方式有两种:内部时钟电方式和外部时钟方式。由于外部时钟方式用于多片单片机组成的系统中,所以此处选用内部时钟方式。

内部时钟方式:利用其内部的振荡电路在X1和X2引线上外接定时元件,内部振荡电路产生自激振荡。最常用的是在 X1和X2之间接晶体振荡器与电路构成稳定的自激振荡器,如图4所示电路所示为单片机最常用的时钟振荡电路的接法,其中晶振可选用振荡频率为12MHz的石英晶体,电容器一般选择30PF 左右 3.2 复位电路 单片机在启动运行时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。另外,在单片机工作过程中,如果出现死机时,也必须对单片机进行复位,使其重新开始工作。本设计中采用按键复位电路,上电瞬间,RC电路充电,RST引线端出现正脉冲,只要RST端保持10ms以上的高电平,就能使单片机有效地复位。其中R1选择10KΩ左右的电阻,电容器一般选择10μF。 3.3显示电路的设计 本次设计中采用8*8点阵LED显示器,简称LED点阵板或LED矩阵板。它是以发光二极管为像素,按照行与列的顺序排列起来,用集成工艺制成的显示器件。有单色和双色之分,这种显示器有共阳极接法和共阴极接法两种。设计中用到的是“列共阳,行共阴”,即“列用高电平控制,行用低电平控制”。图中画

单片机原理及应用总结

单片机原理及应用 第一章绪论 1.什么叫单片机?其主要特点有哪些? 在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。 特点:控制性能和可靠性高、体积小、价格低、易于产品化、具有良好的性价比。 第二章80C51的结构和原理 1.80C51的基本结构 a.CPU系统 ●8位CPU,含布尔处理器; ●时钟电路; ●总线控制逻辑。 b.存储器系统 ●4K字节的程序存储器 (ROM/EPROM/FLASH,可外扩 至64KB); ●128字节的数据存储器(RAM,可 外扩至64KB); ●特殊功能寄存器SFR。 c.I/O口和其他功能单元 ●4个并行I/O口; ●2个16位定时/计数器; ●1个全双工异步串行口; ●中断系统(5个中断源,2个优先 级) 2.80C51的应用模式 a.总线型单片机应用模式 ◆总线型应用的“三总线”模式; ◆非总线型应用的“多I/O”模式 3.80C51单片机的封装和引脚 a.总线型DIP40引脚封装 ●RST/V PO:复位信号输入引脚/备用 电源输入引脚; ●ALE/PROG:地址锁存允许信号 输出引脚/编程脉冲输入引脚;●EA/V PP:内外存储器选择引脚/片 内EPROM编程电压输入引脚;●PSEN:外部程序存储器选通信号 输出引脚 b.非总线型DIP20封装的引脚 ●RST:复位信号输入引脚 4.80C51的片内存储器 增强型单片机片内数据存储器为256 字节,地址范围是00H~FFH。低128字节的配情况与基本型单片机相同。高128字节一般为RAM,仅能采用寄存器间接寻址方式询问。注意:与该地址范围重叠的特殊功能寄存器SFR 空间采用直接寻址方式询问。 5.80C51的时钟信号 晶振周期为最小的时序单位。一个时钟周期包含2个晶振周期。晶振信号12分频后形成机器周期。即一个机器周期包含12个晶振周期或6个时钟周期。 6.80C51单片机的复位 定义:复位是使单片机或系统中的其他部件处于某种确定的初始状态。 a.复位电路 两种形式:一种是上电复位;另一种是上电与按键均有效的复位。 b.单片机复位后的状态 单片机的复位操作使单片机进入初始化状态。初始化后,程序计数器 PC=0000H,所以程序从0000H地址单元开始执行。 特殊功能寄存器复位后的状态是确定的。P0~P3为FFH,SP为07H,SBUF 不定,IP、IE和PCON的有效位为0,其余的特殊功能寄存器的状态为00H.相应的意义为: ●P0~P3=FFH,相当于各口锁存器已 写入1,此时不但可用于输出,也 可以用于输入; ●SP=07H,堆栈指针指向片内RAM

单片机原理及应用设计(胡辉主编)

第 第第 第6 66 6章 章章 章 单片机的定时器 单片机的定时器单片机的定时器 单片机的定时器/ // /计数器 计数器计数器 计数器 习题 习题习题 习题 1.MCS-51系列的8051单片机内有几个定时/计数器?每个定时/计数器有几种 工作方式?如何选择? 答:MCS-51系列的8051单片机内有2个定时/计数器,即T0和T1,每个都可以编程为定时器或计数器,T0有四种工作方式(方式0—13位、方式1—16位、方 式2-可自动装入初值的8位、方式3-两个8位),T1有三种工作方式(与T0相 同的前三种),通过对TMOD的设置选择,其高四位选择T1,低四位选择T0。2.如果采用的晶振频率为3MHz,定时/计数器TO分别工作在方式0、1和2下,其最大的定时时间各为多少? 答:如果采用的晶振频率为3MHz,机器周期为12×1/(3*106)=4us,由于定时/ 计数器TO工作在方式0、1和2时,其最大的计数次数为8192、65536和256 所以,其最大定时时间分别是:方式0为8192×4us=32.768ms、方式1为65536 ×4us=262.144ms、方式2为256×4us=1024us。 3.定时/计数器TO作为计数器使用时,其计数频率不能超过晶振频率的多少?答:由于定时/计数器TO作为计数器使用时,是对外部引脚输入的脉冲进行计数,CPU在每个机器周期采样一次引脚,当前一次采样为高电平,后一次采样为低电平,则为一次有效计数脉冲,所以如果晶振频率为fosc,则其采样频率fosc/12,两次采样才能决定一次计数有效,所以计数频率不能超过fosc/24。 4.简单说明定时/计数器在不同工作模式下的特点。 答:方式0为13位的定时/计数器,由THx的8位和TLx的低5位构成、方式1 为16位的定时/计数器,由THx的8位和TLx的8位构成,方式2为8位的定时/ 计数器,TLx为加1计数器,THx为计数初值寄存器。方式3只能用于T0,是将 T0的低8位用作一个独立的定时/计数器,而高8位的TH0用作一个独立的定时

51单片机原理及应用期末考试试题汇总7

一、选择题 从下列各题4个备选答案中选出一个或二个正确答案 并将其代号写在题干后面的括号内。 1、8051基本型单片机内部程序存储器容量为 C 。 A、16KB B、8KB C、4KB D、128B 2、8051基本型单片机内部RAM容量为D。 A、16KB B、8KB C、4KB D、128B 3、当优先级的设置相同时 若以下几个中断同时发生 A 中断优先响应。 A、外部中断0 B、T1 C、串口 D、T0 4、在80C51单片机应用系统中 可以作为时钟输出的是 C 引脚。 A、EA B、RST C、ALE D、PSEN 5、当CPU响应外部中断1 的中断请求后 将自动转向 B 。 A、0003H B、0013H C、000BH D、001BH 6、为了能够使MCS-51单片机在正常工作中及时服务于多个外设 以下传送方式最适用的是 D 。 A、异步 查询 传送 B、同步 无条件 传送 C、DMA传送 D、中断传送 7、已知1只共阴极LED显示器 其中a笔段为字形代码的最低位 若需显示数字1 它的字形代码应为(A )。A、06H B、0F9H C、30H D、0CFH 8、已知1只共阳极LED显示器 其中a笔段为字形代码的最低位 若需显示小数点“.” 它的字形码应为(A)。A、7FH B、0F9H C、30H D、80H 9、已知1只共阴极LED显示器 其中a笔段为字形代码的最低位 若需显示小数点“.”共阳极 它的字形码应为(A )。A、80H B、0F9H C、30H D、7FH 10、下列数据字定义的数表中 (C、D)是错误的。 A、DW “AA” B、DW “A” C、DW “OABC” D、DW 1ABC2H 11、若P1口接有一个4×4的行列键盘 则P1口一定有 C、D 。 A、8位输入口 B、8位输出口 C、4位输入口 D、4位输出口 12、以下指令中能够产生WR信号的是 B、D 。 A、MOV @R0,A B、MOVX @R0,A C、MOVX A @DPTR D、MOVX @DPTR,A 13、8031单片机的定时器T1用作定时方式时是 A、B 。 A、以内部时钟频率为定时基准 12个时钟周期加1 B、以内部时钟频率为定时基准 1个机器周期加1 C、以外部脉冲为定时基准 12个脉冲加1 D、以外部脉冲为定时基准 每个脉冲加1 14、DAC0832在单片机系统中是一种 B、D 器件。 A、输入 B、输出 C、将数字量转换成模拟量 D、将模拟量转换成数字量 15、家用电器中使用的单片机应属于计算机的 B 。 A、辅助设计应用B.测量、控制应用C.数值计算应用 D.数据处理应用 16、对程序存储器的读操作 只能使用 D 。 A MOV指令 B. PUSH指令 C. MOVX指令 D. MOVC指令 17、若82C55的PC口接有一个4×4的行列键盘 则PC口一定有 C、D 。 A、8位输入口 B、8位输出口 C、4位输入口 D、4位输出口 18、下列说法正确的是 A、B 。 A、立即数寻址方式是操作数本身就在指令中 而不是它的地址在指令中。

《单片机原理与应用》一(含答案)

《单片机原理与应用》期末复习题一 一、填空题: 1.单片微型计算机是一种把(1)中央处理器(CPU)(2)半导体存储器(ROM、RAM)(3)输入/输出接口(I/O接口)(4)定时器/计数器(5)中断系统(6)串行口等部分集成在同一块硅芯片上的有完整功能的微型计算机。 2.十进制数+100的补码=64H,十进制数-100的补码= 9C H 。 3.在8051单片机内部,其RAM高端128个字节的地址空间称为特殊功能寄存器或SFR 区,8051单片机其内部有 21 个特殊功能寄存器,其中11 个可以位寻址。 4.通常单片机上电复位时PC = 0000H,P0~P3 = FFH。SP = 07H,PSW = 00H ,通用寄存器则采用第0组,这一组寄存器的地址范围是从00H 到07H。 5.若PSW为18H,则选取的是第3组工作寄存器。 6.在微机系统中,CPU是按照程序计数器PC 来确定程序的执行顺序的。7.ORL A , #0F0H是将A的高四位置1,而低四位不变。 8.堆栈遵循先进后出(或后进先出)的数据存储原则,针对堆栈的两种操作为PUSH 和 POP 。 9.MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以:位寻址。 10. 8位二进制数,采用补码形式表示带符号数,它能表示的带符号数真值的范围是分别为-128~127。 11.I/O端口作为通用输入输出口时,在该端口引脚输入数据时,应先向端口锁存器进行写“1”操作。 12.MCS51单片机PC的长度为16位;SP的长度为8位,数据指针DPTR的长度为16位。 13.8051片内有256B的RAM ,可分为四个区,00H~1FH为工作寄存器区;20H~2FH为位寻址区;30H~7FH为堆栈、数据缓冲区;80H~FFH为特殊功能寄存器区。 14.半导体存储器中有一类在掉电后不会丢失数据,称为只读存储器,另一类掉电后丢失数据,且通电后也不能自动恢复,称为随机存取存储器。15.程序储存器的主要功能是存储指令和固定常数与表格数据。16.8051在物理结构上只有四存储空间,它们分别是片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器;但在逻辑结构上只有三个存储空间,它们分别是片内外统一编址的64KB程序存储器、片内256B的数据存储器和片外64KB的数据存储器。

单片机原理及应用89c51期末复习资料

单片机期末复习资料 实验3 数码管显示设计 1*功能描述:本程序集中体现数码管的静态显示,完成数码管由0到F 的静态显示 ************************************************************/ #include//包含头文件 #define uchar unsigned char #define uint unsigned int //宏定义 sbit dula=P1^4; //端口定义 uchar num,y; uint x; //定义变量 uchar code table[]={ 0xfc,0x60,0xda,0xf2,0x66,0xb6, 0xbe,0xe0,0xfe,0xf6,0xee,0x3e, 0x9c,0x7a,0x9e,0x8e};//0到F的数码管管码 /********************主函数**********************/ void main() { while(1)//进入大循环 { for(num=0;num<16;num++) //判断是否到F { dula=1;//开启锁存器 P0=table[num];//送数码管管码 dula=0;//关闭锁存器 for(x=2000;x>0;x--) for(y=220;y>0;y--);//延时 } } } 2 *功能描述:本程序集中体现数码管的动态扫描显示2009,通过改变数组的值可完成对任意四个数的显示 ************************************************************/ #include #include //包含头文件 #define uchar unsigned char #define uint unsigned int //宏定义 sbit Dula=P1^4; //端口定义 uchar code table[]={ 0xfc,0x60,0xda,0xf2, 0x66,0xb6,0xbe,0xe0, 0xfe,0xf6}; //0到F对应的数码管显示代码 uchar x,i,temp;

《单片机原理及应用》教学大纲

《单片机原理及应用》教学大纲 大纲说明 课程代码:3335014 总学时:48学时(讲课40学时,实验8学时) 总学分:3 课程类别:专业模块选修课 适用专业:机械设计制造及其自动化专业、电气工程及自动化专业 预修要求:数字电子技术、模拟电子技术、电路、计算机基础、微机原理、汇编语言 一、课程的性质、目的、任务: 性质:是机电一体化专业的专业必修课。是一门面向应用的、具有很强实践性与综合性的课程。 目的:通过学习利于改善学生的知识结构,使其获得利用单片机解决某些工程技术问题所需的知识,为学习后续课程及在今后工作中利用单片机实现电器控制、过程控制、信息处理和管理奠定必要的基础。 任务:通过学习要求学生掌握单片机的工作原理,了解有关单片机的基本知识,掌握该单片机的指令系统及汇编语言设计的基本方法,掌握单片机的基本功能及典型接口技术,获得相关领域内应用单片机的初步能力。 二、课程教学的基本要求: 原理部分以讲授为主;程序设计提倡多读程序、多写、多上机;硬件接口应在掌握了硬件的工作原理的基础上结合实验提高动手能力;教学手段应多样化避免单调的教学模式;实验环节重点学习单片机的硬件组成、工程应用及系统开发;课后作业的主要目的是掌握本章的学习要点,巩固前面所学的内容,为下一章学习做好准备;考试采用闭卷理论考试,结合实验和平时成绩,在内容上尽量体现单片机的基本常识性问题,结合实际,做到质、量结合。 三、大纲的使用说明: 本课程的先修课程为:《电路》《电子技术》《计算机基础》《程序设计》《微机原理》;电子机械专业学生应掌握大纲所要求的大部分内容;课程可根据总课时数而定。 大纲正文 第一章绪论学时:1学时(讲课1学时实验0学时)本章讲授要点:有关微型机的基本知识,包括分类、结构和组成,以及单片机的结构、典型产品及应用,单片机应用系统开发。 重点:单片机的特点、开发方式。 难点:单片机开发方式。 §1.1 电子计算机的发展概述 §1.2 单片机的发展过程及产品近况 §1.3 单片机的特点及应用领域

基于AT8951单片机原理及应用

◎<习题一>◎<习题二>◎<习题三> ◎<习题四>◎<习题五>◎<习题六> ◎<习题七>◎<习题八>◎<习题九> ◎<习题十>◎<总复习题> ※<习题一> 第一章习题答案 一、选择题 DCABD DACAC ACDBA BCCBA BB (ABE) B 二、计算题 1、将下列十进制数分别转换成二进制、十六进制和BCD码的 形式 (1)33D=00100001B=21H=00110011BCD (2)22 .37D=00010110.0101B=16.5H=00100010.00110111BCD 2、将下列二进制数分别转换成十进制、十六进制的形式。(1) 10101100 B=172D=ACH (2) 1001.01 B= 9.25D=9.4H (3)11001100. 011B=CC.6H=204.375D 3、将下列十六进制数分别转换成二进制、十进制的形式。(1)7B H=01111011B=123D (2)0E7.2 H=231.125D=11100111.0010B (3)21A9H=8617D=0010000110101001B 4、将下列BCD码转换成十进制数。 (1)10010010BCD=92D (2)01010010=52D (3)1000111. 0110=47.6D 5、将下列带符号数分别用原码、反码、补码来表示。 (1)+39 原码、反码、补码为00100111B

(2)-121 原码为11111001B,反码为10000110B,反码为10000111B 三、填空题 1、带符号数在机器中可用_原_码、_反_码和_补_码表示。 2、___运算器___和_控制器_____是计算机硬件的核心,称为中央处理器(CPU)。 3. CPU一次可处理的二进制数的位数称为___字长___。 4、字长为___8___的整数倍。 5、.MCS-51的最基本时间单位是_ 时钟___周期。 6、.8051的一个机器周期由___12___个时钟周期组成。 7、半导体存储器分为__ROM__和__RAM____。 8、根据信息传送的属性,总线可分为___地址总线___、_数据总线_____和__控制总线____。 四、问答题 1、什么是字长?Intel公司的MCS-51系列单片机的字长是多少?答:字长是指计算机能一次处理二进制数码的位数,MCS—51系列单片机字长为8位,又称8位机。 2、简述半导体存储器的分类及各类存储器的功能。 答:(1)只读存储器(ROM) ROM在使用过程中,存储的信息只能被读出,而不能用通常的方法写入。在系统断电时,ROM中的信息并不会丢失。因此,这类存储器适用于存放各种固定的系统程序、应用程序和常数等。 ROM按制造工艺的不同可分为以下几种: A)掩膜ROM 存储在ROM中的信息是在生产过程中用“掩膜”工艺固化在ROM芯片中的,一旦做好,不能更改。只适用于存储成熟的固定程序和数据,在大批量生产时,可降低成本。 B)可编程ROM(PROM) PROM中的信息是由用户写入,但只能写一次,写入后的信息以后不能更改。 C)可擦除ROM 允许用户对已写入的信息进行多次修改,但修改之前要先将原来的内容擦除掉,按擦除方法不同,又分为两种: 紫外线擦除的ROM(EPROM):在芯片上有一窗口,用紫外线擦抹器照射该窗口约20分钟后就可擦除,然后加规定的编程电压可重新写入程序。 电擦除的ROM(EEPROM):它允许用户利用+5V的电压擦除已存入的信息,并可进行重新写入,擦除和写入过程可在线完成,不需将芯片从用户系统中取出。

单片机原理及应用教程第3版习题课后答案

《单片机原理及应用程序》(第三版)习题参考答案 第一章 1. 为什么计算机要采用二进制数?学习十六进制数的目的是什么? 在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机部一切信息存储、处理和传送均采用二进制数的形式。可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。十六进制数可以简化表示二进制数。 2. (1) 01111001 79H (2) 0.11 0.CH (3) 01111001.11 79.CH (4) 11101010.101 0EA.AH (5)01100001 61H (6) 00110001 31H 3. (1) 0B3H (2)80H (3) 17.AH (4) 0C.CH 4. (1)01000001B 65 (2) 110101111B 431 5. (1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100 (5) 10000001 11111110 11111111 6. 00100101B 00110111BCD 25H 7. 137 119 89 8.什么是总线?总线主要有哪几部分组成?各部分的作用是什么? 总线是连接计算机各部件之间的一组公共的信号线。一般情况下,可分为系统总线和外总线。 系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB) 地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信

息由地址总线输出,然后经地址译码单元处理。地址总线为16位时,可寻址围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的围。在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。 控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。 数据总线(DB):CPU是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。在CPU进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设9.什么是接口电路? CPU与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线? CPU通过接口电路与外部输入、输出设备交换信息, 一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线和数据总线与CPU连接;通过数据线(D)、控制线(C)和状态线(S)与外部设备连接。 10. 存储器的作用是什么?只读存储器和随机存储器有什么不同? 存储器具有记忆功能,用来存放数据和程序。计算机中的存储器主要有随机存储器(RAM)和只读存储器(ROM)两种。随机存储器一般用来存放程序运行过程中的中间数据,计算机掉电时数据不再保存。只读存储器一般用来存放程序,计算机掉电时信息不会丢失。 11.某存储器的存储容量为64KB,它表示多少个存储单元?64×1024 12. 简述微型计算机硬件系统组成。

单片机原理及应用课后答案

第1章单片机概述参考答案 1.1 答:微控制器,嵌入式控制器 1.2 答:CPU、存储器、I/O口、总线 1.3 答:C 1.4 答:B 1.5 答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。 嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。嵌入式微处理器相当于通用计算机中的CPU。与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。而嵌入式微处理器仅仅相当于单片机中的中央处理器。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。 1.6 答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。它们的差别是在片内程序存储器上。8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K字节的程序存储器EPROM。 1.7 答:因为MCS-51系列单片机中的"MCS"是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。 1.8 答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash存储器取代了87C51片内的4K字节的EPROM。 1.9 单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。 DSP是一种非常擅长于高速实现各种数字信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。广泛地用于通讯、网络通信、数字图像处理,电机控制系统,生物信息识别终端,实时语音压解系统等。这类智能化算法一般都是运算量较大,特别是向量运算、指针线性寻址等较多,而这些正是DSP的长处所在。与单片机相比,DSP具有的实现高速运算的硬件结构及指令和多总线,DSP处理的算法的复杂度和大的数据处理流量以及片内集成的多种功能部件更是单片机不可企及的。 嵌入式微处理器的基础是通用计算机中的CPU,它的地址总线数目较多能扩展较大的存储器空间,所以可配置实时多任务操作系统(RTOS)。RTOS是嵌入式应用软件的基础和开发平台。正由于嵌入式微处理器能运行实时多任务操作系统,所以能够处理复杂的系统管理任务和处理工作。因此,广泛地应用在移动计算平台、媒体手机、工业控制和商业领域(例如,智能工控设备、ATM机等)、电子商务平台、信息家电(机顶盒、数字电视)以及军事上的应用。 1.10 广义上讲,凡是系统中嵌入了"嵌入式处理器",如单片机、DSP、嵌入式微处理器,都称其为"嵌入式系统"。但多数人把 "嵌入"嵌入式微处理器的系统,称为"嵌入式系统"。目前"嵌入式系统"还没有一个严格和权威的定义。目前人们所说的"嵌入式系统",多指后者。 第2章 AT89S51单片机的硬件结构 1.答:AT89S51单片机的片内都集成了如下功能部件:(1)1个微处理器(CPU);(2)128

单片机原理及应用系统设计课后参考答案

0001 0001 0736 0361 JK3Q HDJ3 单片机课后部分参考答案 P59第三章 9、(A)=70H (R0)=58H (40H)=58H (58H)=70H 10、 12、(1) MOV R2,70H (2) MOV A, R1 MOV R2,A (3) MOV DPTR,#1234H MOVX A,@DPTR MOV 70H,A (4) MOV DPTR,#2000H MOV A,#00H MOVC A,@A+DPTR MOV R4,A (5) MOV DPTR,#2000H CLR A MOVC A,@A+DPTR MOV DPTR,#1234H MOVX @DPTR,A 13、XCH A,50H ;(A)=87H (50H)=35H PUSH 50H POP ACC ;(A)=35H MOV A,#12H ;(A)=12H XCHD A,@R1 ;(A)=15H (50H)=32H 15、MOV A,#34H MOV R0,#9AH ADD A,R0 MOV R3,A MOV A,#12H MOV R0,#78H ADDC A,R0 MOV R2,A 16、CLR C MOV A,#78H

MOV R1,#3FH SUBB A,R1 MOV R3,A MOV A,#56H MOV R1,#20H SUBB A,R1 MOV R2,A 17、(1)将(30H)+(31H)的和存于32H单元中,将进位CY存于33H单元中 (2)(30)=35H (31H)=50H (32H)=85H (A)=00H CY=0 (33H)=0 21、(A)=8FH (R0)=25H (25H)=60H P77 第五章 7、SETB EX0 SETB ET1 SETB ES SETB EA SETB PS 11、允许的中断源有:外部0中断、定时器T0中断、外部1中断、串行口中断 优先级(从高到低):外部0中断、串行口中断、定时器T0中断、外部1中断、定时 器T1中断 P87第六章 7、用定时器T1的工作方式1时,定时初值为: (M-X)×T=t (65536-X)×2×10-6=100×10-3 X=15536=3CB0H 8、晶振12MHZ ;选择T0为定时器,工作方式1;选择T1为计数器,工作方式2 T0定时初值X0=65536-10×10-3/10-6 =55536=0D8F0H (TH0)=0D8H (TL0)=0F0H T1计数初值X1=256-100=156=9CH (TH1)=(TL0)=9CH 程序如下: ORG 0000H LJMP MAIN ORG 000BH LJMP T0INT ORG 001BH LJMP T1INT ORG 0030H MAIN: SETB P1.1 MOV TMOD , #61H

单片机原理及应用作业答案

作业答案0-1 绪论 1.单片机是把组成微型计算机的各功能部件即(微处理器(CPU))、(存储器(ROM和RAM))、(总线)、(定时器/计数器)、(输入/输出接口(I/O口))及(中断系统)等部件集成在一块芯片上的微型计算机。 2.什么叫单片机其主要特点有哪些 解: 将微处理器(CPU)、存储器(存放程序或数据的ROM和RAM)、总线、定时器/计数器、输入/输出接口(I/O口)、中断系统和其他多种功能器件集成在一块芯片上的微型计机,称为单片微型计算机,简称单片机。 单片机的特点:可靠性高、便于扩展、控制功能强、具有丰富的控制指令、低电压、低功耗、片内存储容量较小、集成度高、体积小、性价比高、应用广泛、易于产品化等。 第1章 MCS-51单片机的结构与原理 15. MCS-51系列单片机的引脚中有多少根I/O线它们与单片机对外的地址总线和数据总线之间有什么关系其地址总线和数据总线各有多少位对外可寻址的地址空间有多大 解: MCS-51系列单片机有4个I/O端口,每个端口都是8位双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输入驱动器和输入缓冲器。通常把4个端口称为P0~P3。在无片外扩展的存储器的系统中,这4个端口的每一位都可以作为双向通用I/O端口使用。在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据总线。 MCS-51系列单片机数据总线为8位,地址总线为18位,对外可寻址空间为64KB。25. 开机复位后,CPU使用的是哪组工作寄存器(R0-R n)它们的地址是什么CPU如何确定和改变当前工作寄存器组(R0-R n) 解: 开机复位后,CPU使用的是第0组工作寄存器。它们的地址是00H-07H。CPU通过对程序状态字PSW中RS1和RS0的设置来确定和改变当前工作寄存器组。 27. MCS-51单片机的时钟周期、机器周期、指令周期是如何定义的当主频为12MHz的时候,一个机器周期是多长时间执行一条最长的指令需要多长时间 解:

单片机原理及应用与C51程序设计(第三版)第2章作业

习题 1.MCS-51单片机由哪几个部分组成? 答:MCS-51单片机主要由以下部分组成的:时钟电路、中央处理器(CPU)、存储器系统(RAM和ROM)、定时/计数器、并行接口、串行接口、中断系统及一些特殊功能寄存器(SFR)。 2.MCS-51的标志寄存器有多少位,各位的含义是什么? 答:MCS-51的标志寄存器PSW有8位; 6 5 D 4 D 3 2 1 0 C 0 R S1 R S0 V 含义如下: C(PSW.7):进位或借位标志位。 AC(PSW.6):辅助进位或借位可标志位。 F0(PSW.5):用户标志位。是系统预留给用户自己定义的标志位。 RS1、RS0(PSW.4、PSW.3):寄存器组选择位。可用软件置位或清零,用于从四组工作寄存器中选定当前的工作寄存器组。 OV(PSW.2):溢出标志位。在加法或减法运算时,如运算的结果超出8位二进制数的范围,则OV置1,标志溢出,否则OV清零。 P(PSW.0):奇偶标志位。用于记录指令执行后累加器A中1的个数的奇偶性。若累加器A中1的个数为奇数,则P置位,若累加器A中1的个数为偶数,则P 清零。 其中PSW.1未定义,可供用户使用。 3.在8051的存储器结构中,内部数据存储器可分为几个区域?各有什么特点? 答:片内数据存储器按功能可以分成以下几个部分:工作寄存器组区、位寻址区、一般RAM区和特殊功能寄存器区,其中还包含堆栈区。工作寄存器组区,00H~1FH单元,可用R0~R7等8个寄存器访问;位寻址区,20H~2FH单元,可按位方式访问;一般RAM区,30H~7FH单元;堆栈区,可从08到7F单元;特殊功能寄存器区位于80H~FFH单元。 4.什么是堆栈?说明MCS-51单片机的堆栈处理过程。 答:堆栈是按先入后出、后入先出的原则进行管理的一段存储区域。CS-51单片机的堆栈是向上生长型的,存入数据是从地址低端向高端延伸,取出数据是从地址高端向低端延伸。入栈和出栈数据是以字节为单位的。入栈时,SP指针的内容先自动加1,然后再把数据存入到SP指针指向的单元;出栈时,先把SP指针指向单元的数据取出,然后再把SP指针的内容自动减1。 5.简述内部ROM的工作寄存器组情况,系统默认是第几组?

单片机原理及应用(答案)

1:单片机8031的XTAL1和XTAL2引脚是()引脚。 1.外接定时器 2.外接串行口 3.外接中断 4.外接晶振 2:LU表示()。 1.累加器 2.程序状态字寄存器 3.计数器 4.算术逻辑部件 3:单片机上电复位后,PC的内容和SP的内容为()。 1.0000H,00H 2.0000H,07H 3.0003H,07H 4.0800H,08H 4:8031单片机的定时器T1用作定时方式时是()。 1.由内部时钟频率定时,一个时钟周期加1 2.由内部时钟频率定时,一个机器周期加1 3.由外部时钟频率定时,一个时钟周期加1 4.由外部时钟频率定时,一个机器周期加1 5:INTEL8031的P0口,当使用外部存贮存器时它是一个()。 1.传输高8位地址口 2.传输低8位地址口 3.传输高8位数据口 4.传输低8位地址/数据口 6:当需要从MCS-51单片机程序存储器取数据时,采用的指令为() 1.MOV A, @R1 2.MOVC A, @A + DPTR 3.MOVX A, @ R0 4.MOVX A, @ DPTR 7:若PSW的RS1/RS0=10则单片机工作寄存器工作在()。 1.0区 2.1区

3.2区 4.3区 8:假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进栈保护后,SP的值为()。 1.6H 2.37H 3.38H 4.39H 9:单片机上电复位后,堆栈区的最大允许范围是个单元。 1.64 2.120 3.128 4.256 10:在MCS-51指令中,下列指令中()是无条件转移指令。 1.LCALL addr16 2.DJNZ direct,rel 3.SJMP rel 4.ACALL addr11 11:INTEL 8031的P0口,当使用外部存贮存器时它是一个()。 1.传输高8位地址口 2.传输低8位地址口 3.传输高8位数据口 4.传输低8位地址/数据口 12:单片机中的程序计数器PC用来()。 1.存放指令 2.存放正在执行的指令地址 3.存放下一条指令地址 4.存放上一条指令地址 13:8051单片机中,输入/输出引脚中用于专门的第二功能的引脚是()。 1.P0 2.P1 3.P2 4.P3

单片机原理及应用习题答案

思考与练习题1 1.1单项选择题 (1)单片机又称为单片微计算机,最初的英文缩写是( D ) A.MCP B.CPU C.DPJ D.SCM (2)Intel公司的MCS-51系列单片机是( C )的单片机。 A.1位 B.4位 C.8位 D.16位 (3)单片机的特点里没有包括在内的是( C ) A.集成度高 B.功耗低 C.密封性强 D.性价比高 (4)单片机的发展趋势中没有包括的是( B ) A.高性能 B.高价格 C.低功耗 D.高性价比 (5)十进制数56的二进制数是( A ) A.00111000B B.01011100B C.11000111B D.01010000B (6)十六进制数93的二进制数是( A ) A.10010011B B.00100011B C.11000011B D.01110011B (7)二进制数11000011的十六进制数是( B ) A. B3H B.C3H C.D3H D.E3H (8)二进制数11001011的十进制无符号数是( B ) A. 213 B.203 C.223 D.233 (9)二进制数11001011的十进制有符号数是( B ) A. 73 B.-75 C.-93 D.75 (10)十进制数29的8421BCD压缩码是( A ) A.00101001B B.10101001B C.11100001B D.10011100B (11)十进制数-36在8位微机中的反码和补码是( D ) A.00100100B、11011100B B.00100100B、11011011B C.10100100B、11011011B D.11011011B、11011100B (12)十进制数+27在8位微机中的反码和补码分别是( C ) A.00011011B、11100100B B.11100100B、11100101B C.00011011B、00011011B D.00011011B、11100101B (13)字符9的ASCII码是( D ) A.0011001B B.0101001B C.1001001B D.0111001B (14)ASCII码1111111B的对应字符是( C ) A. SPACE B.P C.DEL D.{ (15)或逻辑的表达式是( B ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (16)异或逻辑的表达式是( C ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (17)二进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B ) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.10101010B、00000000B、10101010B (18)二进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D ) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B (19)下列集成门电路中具有与门功能的是( D ) A.74LS32 B.74LS06 C.74LS10 D.74LS08

相关文档
最新文档