单片机原理及接口技术_第1页
单片机原理及接口技术_第2页
单片机原理及接口技术_第3页
单片机原理及接口技术_第4页
单片机原理及接口技术_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机原理及接口技术

前修课程:数模电、微机原理

学习目的:掌握MCS-51单片机的硬件组成、运行原理和指令集,提高软硬件应用技术。应用对象:家用电器、仪器仪表、自动控制系统。优势:价格便宜、功能齐全。

第一章微机基础知识

§1-1微处理器、微机和单片机的概念§1-2

计算机中数制和编码§1-3

计算机中数的表示方法§1-4

二进制数的运算§1-1微处理器、微机和单片机的概念一、微处理器:(芯片)

微处理器(CPU)是微机的核心部件,完成控制和运算功能。

1.运算器(ALU):完成算术运算和逻辑运算的场所算术运算:加、减、乘、除,BCD码运算逻辑运算:与、或、异或、测试

2.控制器:由计数器、指令寄存器、指令译码器、时序发生器、操作控制器。负责整机控制,协调各部件工作。二、微型计算机:(计算机)

微处理器(CPU)存储器:存放程序和数据输入输出接口:用于将外部设备与CPU和存储器相连接系统总线:CPU向存储器及接口电路提供地址、数据及控制信息的通路三、微型计算机系统

微型计算机输入输出设备系统软件

四、单片机

单片机的全称为单片微型计算机(SingleChipMicrocomputer)。将微处理器(CPU)、一定容量的ROM和RAM、定时/计数器、并/串行口等电路集成在一块芯片上,构成单片微型计算机,简称单片机。第一阶段:单片机初级阶段。单片机的发展始于1974年,到了1976年,Intel公司推出了MCS-48系列单片机,将CPU、存储器、I/O接口、定时器/计数器集成在一块芯片上,使计算机完成了单芯片化。第二阶段:单片机完善阶段。此阶段单片机的功能及体系结构得到了不断的完善。1980年,Intel公司在MCS-48系列单片机的基础上增添了I/O串行口,增大了存储器容量,完善了中断系统(设置了5个中断源,2个优先级),定时器/计数器为16位的,在内部存储器上设置了位地址空间,提供位操作指令,推出了高性能的MCS-51系列单片机。五、单片机的发展史四个阶段第三阶段:微控制器形成阶段。为了更高的测控应用,需要对单片机的外围接口电路进行增强与完善,如数模转换器(D/A)、模数转换器(A/D)、高速I/O接口、程序监视定时器(WDT)等,尽量将外围功能集成在芯片内部。

第四阶段:微控制器技术成熟阶段。随着技术的不断成熟,国内外对单片机的开发和研制竞争异常激烈,极大地丰富了微控制器的类型,功能不断地完善,成本降低,外围电路减少,可靠性不断提高。

§1-2

计算机中数制和编码1、数制

所谓的数制是指数的制式,是人们利用符号计数的一种科学方法。一个r进制数按权展开,其表达式为:

一、数制及数制转化

二进制B

(Binary)

八进制Q或O(Octal)

十六进制H(Hexadecimal)

十进制D或者省略(Decimal)2、进制转换

不同数制之间的相互转换

1)任意进制转换十进制(N-十转换)

加权求和

N——计数的基数Ni——第i位的权

a.11010.01B

=1×24+1×23+0×22+1×21+0×20+0×2-1+1×2-2

=26.25Db.19B.ABH=1×162+9×161+11×160+10×16-1+11×16-2=256+144+11+0.625+0.04296875=411.66796875D2972482242122623210余数为1,

余数为0,

余数为0,

余数为0,

余数为0,

余数为1,

余数为1,

2)十-二转换

整数部分——除2(基)取余法小数部分——乘2(基)取整法

a.97.6875=?B

整数部分97

97D=1100001B小数部分0.6875

0.6875

× 2

1.3750 整数部分为1,

0.3750 余下的小数部分

×2

0.7500 整数部分为0,

0.7500 余下的小数部分

×2

1.5000 整数部分为1,

0.5000 余下的小数部分

× 2

1.0000 整数部分为1,

0.0000 余下的小数部分为0,结束

0.6875D=0.1011B97.6875=1100001.1011B注意:

任何十进制整数都可以精确地转换成一个二进制整数,但任何十进制小数却不一定可以精确地转换成一个二进制小数。3)二-十六转换

1110110101100.10101B=?H

1110110101100.10101

0001110110101100.10101000

1DAC.A8

↓↓↓↓↓↓1110110101100.10101B=1DAC.A8H四位一画,两头补04)十六-二转换(注意舍0)39F.E1AH=?B

3

9

F.E

1

A001110011111.111000011010↓

=1110011111.11100001101B39F.E1AH=0011

1001

1111.11100001

1010B5)十-十六、十-八转换

余数为1,

余数为6,

1697

166商为0

0.6875

1611.000

0.000整数部分为11,即B余下的小数部分为0,结束余数为1,余数为4,余数为1,8

97

812

81

商为0

0.6875 ×8 5.5000整数部分为5,

0.5000余下的小数部分

×8 4.0000整数部分为4,

0.0000余下的小数部分

结束97.6875=?H97.6875=?Q97.6875=61.BH=141.54Q二进制数、八进制数、十进制数和十六进制数之间的对应关系

整数小数二进制八进制十进制十六进制二进制八进制十进制十六进制0000B00Q00H0B0Q00H0001B01Q11H0.1B0.4Q0.50.8H0010B02Q22H0.01B0.2Q0.250.4H0011B03Q33H0.001B0.1Q0.1250.2H0100B04Q44H0.0001B0.04Q0.06250.1H0101B05Q55H0.00001B0.02Q0.031250.08H0110B06Q66H0.000001B0.01Q0.0156250.04H0111B07Q77H…………1000B10Q88H1001B11Q99H1010B12Q10AH1011B13Q11BH1100B14Q12CH1101B15Q13DH1110B16Q14EH1111B17Q15FH

1、BCD码——二-十进制码

一种二进制形式的十进制码,用4位二进制数表示一位十进制数,最常用的是8421BCD码。1)非压缩(非组合)的BCD码:一个字节内只表示一位BCD码,高位空。2)压缩(组合)的BCD码:一个字节内有两位BCD码83.123D=0000100000000011.000000010000001000000011BCD(非压缩形式)=10000011.0001001000110000BCD

(压缩形式)二、计算机中常用编码8421BCD码表

2、ASCII码

字母、数字、符号等的二进制编码。是一种字符编码,是美国信息交换标准代码的简称。

共128种字符,每个ASCII码占用1个字节,最高位为0,后7位进行编码。

当作符号的数字0~9的ASCII码:30H~39H

字母A~Z的ASCII码:41H~5AH

字母a~z的ASCII码:61H~7AHASCII码表§1-3

计算机中数的表示方法

以二进制形式存储和运算每类数据占据固定长度的二进制数位。处理整数(无符号数,带符号数),浮点数。一、机器数与真值

1.机器数 规定带符号数的最高位为符号位,通常用“0”表示正数,“1”表示负数。例如:8位计算机中+65D=01000001B,

-65D=11000001B。这些连同符号位一起作为能被计算机识别的数称为机器数,而把这个数本身代表的真实值称为机器数的真值(一般用十进制表示)。2.机器数的字长

1word=16bit1byte=8bit1doubleword=32bit

二、数的定点和浮点表示

用机器数来表示带小数点的数通常有两种表示方法,即定点表示法和浮点表示法。定点表示法的优点是运算规则简单,但它能表示数的范围没有相同位数的浮点表示法大。

浮点数是都由阶码和尾数两部分组成,其中阶码部分包括阶符和阶码,尾数部分包括数符和尾数。在定点表示法中,小数点在数中的位置是固定不变的。浮点表示法的优点是数的表示范围大,缺点是运算规则复杂,通常要阶码和尾数分别进行运算。三、带符号数

用0表示正数,用1表示负数,这种表示数的方法,称为带符号数,带符号数有3种表示形式。1.原码记作(±N)原码最高位是符号位,符号位之后是该数的绝对值。01101000符号位数值部分①+2201101001符号位数值部分②-228位原码表示数的范围:-127~+12700000000B~01111111B0~127即0~27-110000000B~11111111B0~-127即0~-(27-1)n位原码表示数的范围:

-(2n-1-1)~2n-1-10有两种表示方式:(+0)原码=00000000B

(-0)原码=10000000B不适合进行计算

原码表示带符号带符号数相当简便、直观,适用乘法、除法或同符号数相加。但对于不同符号的数进行加、减运算时就变得复杂了。

例:N1=+10101B,N2=-10101B,试写出N1和N2在8为字长的计算机中原码。解:

(N1)原=00010101B数值不变“0”表示正数(N2)原=100010101B数值不变“1”表示正数2.反码记作(±N)反码正数的反码与其原码相同;负数的反码在其正数原码的基础上按位求反。

0有两种表示方式:(+0)反码=00000000B

(-0)反码=11111111B不适合进行计算n位原码表示数的范围:

-(2n-1-1)~2n-1-1。例:求+13,-13的反码。解:

(+13)反码

=(+13)原码

=00001101B(-13)原=10001101B(-13)反=11110010B各位取反符号位不变正数的补码与其原码相同;负数的补码在其正数原码(无符号数)的基础上求反加1。①

+112②-112(+112)原码=01110000B(+112)补码=01110000B(-112)补码=10010000B01110000B→(求反)10001111B→(+1)10010000B

求补运算←→求反加13.补码记作(±N)补码

0的表示方式只有一种:(+0)补码=00000000B

(-0)补码=11111111B+1=(1)00000000B

=00000000B

求补的方法二:从右边开始首先碰到的0和第一个1不变,其余按位求反。(+112)原码=01110000B

(-112)补码=10010000B右左8位补码表示数的范围:-128~+127n位补码表示数的范围:-2n-1~2n-1-1

注意:

1)补码≠负数

2)求补≠补码

3)使用补码可以把两个数的减法化为加法

98-76=98+(-76)01100010B-01001100B=01100010B+10110100B01100010B01100010B

-01001100B+10110100B00010110B00010110B

对于正数,机器数所表示的真值均相等。对于负数,机器数所表示的真值不一定相等,由机器码的类型决定。

例:二进制数10000000B分别作原码、反码和补码看,其十进制真值分别是多少?

判断:1开头,负数原码:真值:-0

反码:在正数原码的基础上按位求反得到正数原码:真值:-127

补码:在正数原码的基础上求反+1得到减1:正数原码(无符号数):

真值:-12800000001符号位数值部分011111110111111110000000四、无符号数

无符号数二进制表示没有符号位,皆为数值位。8位无符号二进制数表示数的范围:0~+255n位无符号二进制数表示数的范围:0~+2n-1

一些典型值§1-4

二进制数的运算一、算术运算1.加法运算 二进制加法运算的法则为:0+0=01+0=0+1=11+1=10 (向近邻高位有进位)1+1+1=11 (向近邻高位有进位)

例:设有两个二进制数X=10110110,Y=11011001,试求该两个二进制数的相加和,X+Y=?解:按照二进制数加法运算法则,得到:

10110110BX+11011001BY110001111BX+Y2.减法运算 二进制数减法法则:0-0=01-0=11-1=0 0-1=1 (向近邻高位借位1)例:设有两个二进制数X=11011001,Y=10010111,试求该两个二进制数的相减,X-Y=?解:按照二进制数的减法法则,得到:11011001B-10010111BX-Y=01000010B3.乘法运算 二进制数乘法法则:1×0=0×1=01×1=1例:设有两个二进制数X=1101,Y=1011,试求该两个二进制数的相乘,X×Y=?解:

1101

0000+11011101B×1011BX×Y=10001111B

11014.除法运算 除法运算是乘法运算的逆运算。与十进制数除法运算类似。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论