第一章单片机基础知识_第1页
第一章单片机基础知识_第2页
第一章单片机基础知识_第3页
第一章单片机基础知识_第4页
第一章单片机基础知识_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章第一章 单片机基础知识单片机基础知识 1-1 1-1 单片机概述单片机概述 1-2 1-2 数制及数码数制及数码 内容提要内容提要: : 1-1 1-1 单片机概述单片机概述 一、什么是单片机一、什么是单片机 单片机就是单片微型计算机单片机就是单片微型计算机(Single-Chip Microcomputer)。 微型计算机系统的硬件部分通常由五部分组微型计算机系统的硬件部分通常由五部分组 成成: 输入设备输入设备运算器运算器输出设备输出设备 控制器控制器存储器存储器 这种计算机系统通常由多块印刷电路板制成:这种计算机系统通常由多块印刷电路板制成: 多板机多板机 主板 显卡显卡 声卡声卡

2、 存储器接口存储器接口 网卡网卡 输入输出接口输入输出接口 内存条内存条 CPU CPU CPU芯片芯片 内存条内存条 存储器接口存储器接口 存储器芯片存储器芯片 输入输出接口输入输出接口 输入输出接口输入输出接口 芯片芯片 定时计数器定时计数器 芯片芯片 A/D、D/A 芯片芯片 单板机 印印 刷刷 电电 路路 板板 单单 硅硅 晶晶 片片 CPU存储器存储器 控制电路控制电路定时器定时器时钟电路时钟电路 I / O口口 单片机 (1)体积小,重量轻;体积小,重量轻; (2)可靠性高,运行速度快,抗干扰能力可靠性高,运行速度快,抗干扰能力 强;强; (3)控制功能强,使用灵活,性价比高;控制

3、功能强,使用灵活,性价比高; (4)易扩展,易于开发;易扩展,易于开发; (5)受集成度限制,片内存储器容量较小受集成度限制,片内存储器容量较小 ,一般,一般 内内ROM在在8KB以下,内以下,内RAM在在256B 以内。以内。 单片机是应工业测控的需要而诞生的单片机是应工业测控的需要而诞生的,它的它的 结构与指令功能都是按照工业控制要求设计结构与指令功能都是按照工业控制要求设计 的的,故又称单片微控制器故又称单片微控制器(Single Chip Microcontroller)。 单片机特点单片机特点 : 以单片机为核心的应用系统广泛应用于以单片机为核心的应用系统广泛应用于 : 家用电器;家

4、用电器; 工业过程控制;工业过程控制; 仪器仪表;仪器仪表; 智能武器;智能武器; 航空、汽车等领域。航空、汽车等领域。 二、单片机系统的组成二、单片机系统的组成 CPU AB DB CB 存储器存储器接口部件接口部件 键盘键盘显示器显示器数码管数码管打印机打印机 定时计数器定时计数器 单 片 机 系 统 硬 件 部 分 软 件 部 分 单 片 机 芯 片 外 围 器 件 CP U 内 存 中断控制 逻辑 通用接 口 运算 器 寄存器 组 控制 器 并行I / O 口 串行 UART 定时/计数 器 ADC0809、 DAC0832 825 3 8251 8255A、 81552764、 62

5、64 指 令 系 统 应 用 程 序 1-2 数制及数码 计算机只识别和处理数字信息,数字是以二进制计算机只识别和处理数字信息,数字是以二进制 数的形式表示的。它易于物理实现,同时,资料数的形式表示的。它易于物理实现,同时,资料 存储、传送和处理简单可靠;运算规则简单,使存储、传送和处理简单可靠;运算规则简单,使 逻辑电路的设计、分析、综合方便,使计算器具逻辑电路的设计、分析、综合方便,使计算器具 有逻辑性。有逻辑性。 一、数制一、数制 1、常用数制、常用数制 (1.)十进制数:)十进制数: 1985 = 1000+900+80+5 = 1103+9102+8101+5100 特点: 特点:有

6、有0 9 十个不同的符号。十个不同的符号。 逢十进一。逢十进一。 一般用下脚标一般用下脚标 D 表示,如表示,如 1985D ,或无下脚标。或无下脚标。 ( 2.)二进制数:)二进制数: 特点:有特点:有0,1两个不同的符号。两个不同的符号。 逢二进一。二进制数的下脚标为逢二进一。二进制数的下脚标为B 例如:对于整数例如:对于整数, 1001B=123+022+021+120 = 9D 对于小数, 对于小数, 0.101B = 12-1 + 02-2 + 12-3 = 0.625D 二进制数每一位的权是:以小数点分界, 二进制数每一位的权是:以小数点分界, .24 , 23 , 22 , 2

7、1, 2 0 . 2 -1, 2 -2, 2 - 3, ( 3.)十六进制数:)十六进制数: 有有0 9 ,A,B,C,D,E,F 共十六个不同共十六个不同 的符号。的符号。 逢十六进位。用下脚标逢十六进位。用下脚标 “H” 表示十表示十 六进制数。六进制数。 例:例:327 H = 3162+2161+7160 = 807D 3AB . 11H = 3162+A161+B160+1161+116-2 =939 . 0664 D 2、数制的转换、数制的转换 (1.)二进制转换为十进制数二进制转换为十进制数 方法方法: 按权展开。按权展开。 111.101B =122+12 1+12 0 +1

8、2 -1 +0 2 -2 +1 2 3 =4+2+1+0.5+0.125 =7.625D (2.)十进制数转换为二进制数十进制数转换为二进制数 方法:方法: 整数部分除二取余,小数部分乘二取整整数部分除二取余,小数部分乘二取整 45 余数余数 22 1 110 51 2 1 10 01 2 2 2 2 2 2 即即 45 = (101101)2 例例1、将十进制数、将十进制数45转换成二进制数。转换成二进制数。 例例2:十进制小数部分的转换:十进制小数部分的转换: 乘二取整乘二取整 0.6875 2 最高位最高位 取取 1 1.3750 0.375 2 取取 0 0.750 2 取取 1 1.

9、 50 0.5 2 最低位最低位 取取 1 1. 0 从上至下写成从左至右从上至下写成从左至右10110.6875D = 0. B 二进制数转换成八进制数与上述类似。二进制数转换成八进制数与上述类似。 ( 3.)十六进制数与二进制数之间的转换)十六进制数与二进制数之间的转换: 十六进制数转换为二进制:十六进制数转换为二进制: 9 A B . 7 C 5 H 1001 1010 1011 . 0111 1100 0101B 二进制数转换十六进制数二进制数转换十六进制数: 0001 1011 1110 0011 . 1001 0111 1000B 1 B E 3 . 9 7 8H 二、数码二、数码

10、 1、机器数与真值、机器数与真值 机器只认识二进制数:机器只认识二进制数:0、1。 这是因为,电路状态常常有两种情况,这是因为,电路状态常常有两种情况, 如:电路的通、断;如:电路的通、断; 高电平、低电平;可高电平、低电平;可 用用0、1表示。表示。 在机器中,这种在机器中,这种0、1、0、1的表现形式称为机的表现形式称为机 器数。器数。 机器数分为无符号数、带符号数。机器数分为无符号数、带符号数。 无符号数如:无符号数如:00000001、10010011、01010010 、 等等,范围:等等,范围:00H FFH 。 有符号数如:有符号数如:+1010110B、-1101001B、等等

11、等等 B、B 2 2、机器数的编码及运算、机器数的编码及运算 对带符号数而言,有原码、反码、补码之分,计算对带符号数而言,有原码、反码、补码之分,计算 机内一般使用补码。机内一般使用补码。 (1)原码)原码 将数将数“数码化数码化”,原数前,原数前“+”用用0表示,原数前表示,原数前 “-”用用1表示,数值部分为该数本身,这样的机器表示,数值部分为该数本身,这样的机器 数叫原码。数叫原码。 设设X原数;则原数;则X原 原 = X( (X0) X原 原 = 2 n-1 X ( (X0),),n为字为字 长的位数。长的位数。 如,如,+3原 原 = 00000011B -3原 原 = 27 - (

12、 (-3) = 10000011B 0有两种表示方法:有两种表示方法:00000000 +0 10000000 -0 原码最大、最小的表示:原码最大、最小的表示:+127、-128 (2)反码)反码 规定正数的反码等于原码;负数的反码是将原规定正数的反码等于原码;负数的反码是将原 码的数值位各位取反。码的数值位各位取反。 X反 反 = X ( (X0) X反 反 =( (2n 1)+ X (X0)如,如, +4反 反 = +4原原 = 00000100 B -4反 反=(281)+(-5)=11111= 11111010 B 反码范围:反码范围:-128 +127 两个两个0: +0 0000

13、0000 B -0 11111111 B 运用补码可使减法变成加法。运用补码可使减法变成加法。 规定:正数的补码等于原码。规定:正数的补码等于原码。 负数的补码求法:负数的补码求法:1)反码)反码 + 1 2)公式:)公式:X补 补 = 2n + X ( (X0) 如,如,设设X = - 0101110 B , 则则X原 原 = 10101110 B 则则X补 补 = X反反 + 1 = 11010001 + 00000001 = 11010010 B 如,如,+6补 补 = +6原原 = 00000110 B -6补 补 = 28 + ( (-6) = 10000000 00000110 =

14、 11111010 B 8位补码的范围位补码的范围 128 +127。 0 的个数:只一个,即的个数:只一个,即00000000 而而10000000 B是是-128的补码。的补码。 原码、反码、补码对照表:见下表原码、反码、补码对照表:见下表 1 2 3 (3)补码)补码 补码的概念:现在是下午补码的概念:现在是下午3点,手表停在点,手表停在12点,可正拨点,可正拨3点,也可倒拨点,也可倒拨9点。即点。即 是说是说-9的操作可用的操作可用+3来实现,在来实现,在12点里:点里:3、-9互为补码。互为补码。 八位二进制数所能表示的数据范围八位二进制数所能表示的数据范围 机器数机器数 无符号数无

15、符号数 原码原码 反码反码 补码补码 00000000 0 +0 +0 +0 00000001 1 +1 +1 +1 . . . . . 01111111 127 +127 +127 +127 10000000 128 -0 -127 -128 10000001 129 -1 -126 -127 . . . . . . . . . . 11111110 254 -126 -1 -2 11111111 255 -127 -0 -1 (4)补码的运算)补码的运算 当当X0时,时,X补 补= X反反=X原原 X补 补补补 = X原原 X补 补+ Y补补 = X+Y 补补 X-Y 补 补= X+( (

16、-Y)补 补 例:已知例:已知 X=52 Y=38 求求X-Y 方法方法1: 减法:减法: X-Y = 52-38 =14 0 0 1 1 0 1 0 0 -) 0 0 1 0 0 1 1 0 0 0 0 0 1 1 1 0 方法方法2: 加法加法 X-Y = X-Y补 补补 补 = X补 补+- Y补 补补补 = 52补 补+ -38补补补补 = 14 补 补 =14 52补 补: : 0 0 1 1 0 1 0 0 -38补 补: :+) 1 1 0 1 1 0 1 0 1 0 0 0 0 1 1 1 0 自然丢失自然丢失 计算机在做算术运算时,必需检查溢出,以计算机在做算术运算时,必需检

17、查溢出,以 防止发生错误防止发生错误 (5) 运算的溢出问题运算的溢出问题 由于计算机中表示数据的字长(位数)由于计算机中表示数据的字长(位数) 有一定限制,所以数据的表示应有一个范有一定限制,所以数据的表示应有一个范 围。围。 如字长如字长8位时;位时; 补码范围补码范围-128+127 若运算结果超出这个范围,便溢出。若运算结果超出这个范围,便溢出。 例:例: 98补 补: : 0 1 1 0 0 0 1 0 25补 补: :+)0 0 0 1 1 0 0 1 123补 补 0 0 1 1 1 1 0 1 1 未溢出未溢出 0 0 Cs+1 Cs(未溢出)未溢出) 85补 补: : 0 1

18、 0 1 0 1 0 1 47补 补: :+)0 0 1 0 1 1 1 1 132补 补: : 1 0 0 0 0 1 0 0 溢出溢出 0 1 Cs+1 Cs (溢出)溢出) 错:两个正数相加和为负数。错:两个正数相加和为负数。 - 85补 补: : 1 0 1 0 1 0 1 1 - 47补 补: :+)1 1 0 1 0 0 0 1 - 132补 补: :1 0 1 1 1 1 1 0 0 溢出溢出 1 0 Cs+1 Cs 错:两个负数相加和为正数。错:两个负数相加和为正数。 - 19补 补: : 0 1 0 1 0 1 0 1 - 79补 补: :+)1 0 1 1 0 0 0 1

19、- 98补 补: : 1 1 0 0 1 1 1 1 未溢出未溢出 1 1 Cs+1 Cs 错:两个负数相加和为正数。错:两个负数相加和为正数。 总之:结果正确(无溢出)时,总之:结果正确(无溢出)时,Cs+1 = Cs 结果错误(溢出)时,结果错误(溢出)时,Cs+1 Cs 溢出判断:溢出溢出判断:溢出 = Cs+1Cs(即结果是即结果是0为无溢为无溢 出;出;1为有溢出)为有溢出) 1、 (6) 十进制数的编码十进制数的编码 对机器:二进制数方便,对机器:二进制数方便, 对人对人 :二进制数不直观,习惯于十进制数。:二进制数不直观,习惯于十进制数。 在编程过程中,有时需要采用十进制运算,但

20、机器不认识十进制数。在编程过程中,有时需要采用十进制运算,但机器不认识十进制数。 怎么办?怎么办? 可以将十进制的字符用二进制数进行编码:可以将十进制的字符用二进制数进行编码: 0 0000 5 0101 1010 1111 1 0001 6 0110 1011 2 0010 7 0111 1100 3 0011 8 1000 1101 4 0100 9 1001 1110 这叫做二进制数对十进制编码这叫做二进制数对十进制编码BCD码。码。 上述每上述每4位二进制数表示一个十进制字符,这位二进制数表示一个十进制字符,这4位中各位的权依次是:位中各位的权依次是: 8、4、2、18421 BCD码

21、。码。 BCD码的运算码的运算 : 例、例、 1 8 +) 3 2 1 0 0 0 1 1 0 0 0 +)0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 B是非是非 BCD码(错)码(错) 需进行十进制调整:需进行十进制调整: 0 0 0 1 1 0 0 0 +)0 0 0 0 0 0 1 1 0 0 0 1 1 0 1 1 (个位大于(个位大于9 ,应进,应进1) +) 0 1 1 0 (加(加6使进使进1 ) 0 0 1 0 0 0 0 1 (结果形如(结果形如 21) BCD码加法规则:码加法规则: 两个两个BCD数相加时,数相加时,“某位某位”的和小于的和小于10则保则保 持不变;持不变; 两个两个BCD数相加时,数相加时,“某位某位”的和大于的和大于9,则和,则和 数应加数应加6修正。修正。 BCD码减法规则:码减法规则: 两个两个BCD数相减时,数相减时,“某位某位”的差未发生借位的

温馨提示

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

评论

0/150

提交评论