单片机基础(第版)_第1页
单片机基础(第版)_第2页
单片机基础(第版)_第3页
单片机基础(第版)_第4页
单片机基础(第版)_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机基础(第3版)李广弟等编著北京航空航天大学出版社2007年6 月课程名称:单片机原理及应用 教师:伦翠芬 Email: 电话:2166836课程性质:理论与实践紧密结合的 应用课程答疑地点:办公楼4 层(机械制造教学部)课程要求本课程是实践性较强的课程。通过课程的学习,掌握硬件电路设计和软件编程的方法,能够进行单片机应用系统的设计、调试工作。1、单片机能做什么? 凡是与控制或简单计算有关的电子设备都可以用单片机来实现。如粮仓温检设备、近距离无线通讯模块、自动感应水龙头、毕设答辩打分器。 学习单片机能对计算机硬件知识有更深入的领悟。学了单片机 ,就会对现在比较流行的IC卡、射频卡(比如公交

2、一卡通)、磁卡、还有GPS(全球定位)、CMOS/CCD摄像头、LCD显示屏、大型LED广告显示屏、电磁炉等小家电等不再感到神秘 。我们每天都生活在这些产品的海洋里,不断地接触到各种各样的自动化电子产品,却少有人去仔细想过它们的原理和制造过程。而在如今机、电一体化程度越来越高的时代,即使我们学会了计算机,学会了程序设计,也不能说我们就完全掌握了“高科技” 。 因此,不管是不是自动化专业的,学计算机的同时多多少少学习一点单片机,常握一点电子技术,有利无害。 2、学习单片机需要什么 基 础?绪论 单片机的工作原理及工作过程 1 微型计算机的组成 2 什么是单片机? 3 单片机的工作原理及工作过程4

3、 单片机的发展简史5 单片机的特点和应用范围 1 微型计算机的组成?一、计算机ENIAC的诞生1945年底,世界上第一台使用电子管制造的电子数字计算机在美国宾夕法尼亚大学莫尔学院研制成功,并在1946年2月15日举行了计算机的正式揭幕典礼。这台电子计算机总共用了18800个电子管,耗电140千瓦,占地150平方米,重达30吨,每秒钟可进行5000次加法运算。 二、计算机的基本结构匈牙利数学家冯诺依曼提出了“程序存储”和“用二进制代替十进制”的思想;构建了计算机由运算器、控制器、存贮器、输入设备和输出设备所组成这一计算机的基本结构。计算机的基本结构数据输入设备数据运算器数据存储器输出设备控制器外

4、围设备CPU内存图1.1 计算机结构主机输入命令指令存取命令输出命令操作命令 将运算器、控制器集成在一块芯片上,形成CPU。接口说明:字长一台计算机所用的二进制代码的位数称为该计算机的字长。如:8位微机、16位微机和32位微机 。计算机的字长越长,计算的精度就越高。但是,电路就越复杂,使得计算机的结构变得庞大,造价也越昂贵。 三微型计算机的结构 图1-2 微型计算机结构微处理器微处理器存储器外 设设微处理器I/O接口存储器外 设说明:存储器的容量:存储器所能存放的最大字节数。 存储器地址与存储器容量地址位数(N)存储器容量(Q)828=256B10210=1KB11211=2KB12212=4

5、KB16216=64KB字节存储器容量的单位,8位二进制数称为一个字 节,记为B。常用的单位有:KB、MB、GB。2 什么是单片机?单片机的定义所谓单片机,是指在一块芯片上集成了微处理器CPU、存储器和I/O接口电路等部件,构成的一个完整的微型计算机系统。 3 单片机的工作原理及工作过程单片机的工作过程通电,发出第一个CLK脉冲及清零脉冲,PC=0000H。第二个CLK脉冲:读PC,0000H单元被选中。第三个CLK脉冲:0000H单元的内容被送到指令寄存器。第四个CLK脉冲:PC自动加1,指令译码器译码后执行。第五个CLK脉冲:读PC,0001H单元被选中。第六个CLK脉冲:0001H单元的

6、内容被送到累加器A,PC自动加1,完成了第一条指令的操作。第七个CLK脉冲:读PC,0002H单元被选中。如此周而复始直至程序完成。4 单片机的发展简史4位单片机(19741976) 萌芽阶段2. 初级8位单片机(19761978) 3. 高级8位单片机(19781983) 4. 16位单片机(1983年以后)16位单片机 5. 新一代单片机(近几年)32位单片机 单片机发展概况 第1阶段(19741976年):初级单片机阶段 1974年,美国Fairchild(仙童)公司研制出世界上第一台单片微型计算机F8,深受家用电器和仪器仪表领域的欢迎和重视,从此拉开了研制单片机的序幕。这个时期生产的单

7、片机特点是制造工艺落后、集成度低,而且采用双片结构。 第2阶段(19761978年):低性能单片机阶段 已能在单块芯片内集成有CPU、并行口、定时器、RAM和ROM等功能,但CPU功能还不太强,I/O的种类和数量少,存储容量小,只能应用于比较简单的场合。以Intel公司的MCS-48为代表,这个系列的单片机内集成有8位CPU、并行I/O接口、8位定时器/计数器,寻址范围不大于4KB,且无串行口,它是8位机的早期产品 单片机发展概况 第3阶段(19781983年):高性能单片机阶段 普遍带有串行口,有多级中断处理系统,16位定时器/计数器。片内RAM、ROM容量加大,且寻址范围可达64KB,有的

8、片内还带有A/D转换器接口。这类单片机有Intel公司的MCS-51,Motorola公司的M6805和Zilog公司的Z8等。由于这类单片机的应用领域极其广泛,各公司正在大力改进其结构与性能,所以,这个系列的各类产品仍是目前国内外产品的主流。 单片机发展概况 第4阶段(1983年至今):16位及以上单片机和超8位单片机并行发展阶段 发展16位及以上单片机及专用单片机;另一方面不断完善高档8位单片机,改善其结构MCS-96系列、Mostek公司的MK68200、NS公司的HPC16040系列、NEC公司的783XX系列和TI公司的TMS9940及9995系列。片内含有A/D和D/A转换电路,支

9、持高级语言。主要用于过程控制、智能仪表、家用电器及作为计算机外部设备的控制器等。近年来,家用电子系统、多媒体技术和Internet技术的新发展,32位甚至64位单片机的生产前景看好 单片机发展概况 单片机发展趋势 CPU功能增强 单片机大容量化、内部资源增多 引脚的多功能化、发展串行总线 单片机小容量低廉化、超微型化 低功耗和低电压 单片机开发方式的进步 多机与网络系统的支持技术日趋成熟 1、基本产品:8051、8751和80312、强化型8052 3、超级型8XC252系列是超8位单片机 8XC51系列单片机是MCS-51中的一个子系列,是一族高性能兼容型单片机。其中,X规定为程序存储器的配

10、置:0表示无片内ROM,3表示片内为掩膜ROM,7表示片内为EPROM/OTP ROM,9表示片内为Flash ROM 。通称为80C51系列 MCS-51系列单片机分为3种5 单片机的特点及应用范围 1、结构简单、体积小:SO-8封装,3mm*3mm 2、 性能价格比高:常用型号低于¥5.00、 功能强:低端够用,高端超过PC3、功耗低、可靠性高:工作电流255,结果中最高位的“1”为进位。 (2)当此加法运算为有符号数补码运算时,结果中最高位的“1”则为溢出,它是两符号相加的结果。溢出的原因是结果超出了8位二进制所能表示的补码(即-128 +127 )。导致结果错误。 (3)溢出(OV)的

11、判断:说明OVC6C71 有溢出,结果错误 0 无溢出,结果正确例 已知:X1110101,X21110111求:X1X2?溢出判断:OV101,有溢出,结果错误。因为本题中X100110101B53,X201110111B119,X1X253119172127,超出了范围,产生错误。 解:X1补00110101B X2补01110111B根据X1X2补X1补X2补规则 X1补 00110101 X2补 01110111 X1补X2补 101011001.1.3 计算机中二进制数的单位 1. 位(Bit) 指二进制的位。 2. 字节(Byte) 8位二进制数称为一个字节。 3. 字(Word)

12、 字是一台计算机上所能并行处理的二进制数,字的位数称为字长。字长是字节的整数倍。如:MCS-51单片机字长为8位。1.1.4 计算机使用二进制数的原因 易于实现,运算简单,具有逻辑属性,可靠性高,节省硬件设备等原因。1.2 二进制数的算术运算和逻辑运算1.2.1 二进制算术运算 1. 二进制加法运算 000 011 101 110 2. 二进制减法运算 000 011 101 110 3. 二进制乘法运算 000 010 100 111 4. 二进制除法运算 0 00(无意义) 0 10 1 00(无意义) 1 11例 1 求1001B+1011B。 被加数 1001加 数 + 1011进 位

13、 1 0100 和 1 0100即 1001B+1011B=10100B例 2 求1100B-111B。 被减数 1100减 数 - 111 差 0101即 1100B+111B=0101B例 3 求1011B1101B。 被乘数 1011乘 数 1101 1011 0000 1011 + 1011 积 10001111即 1011B1101B =10001111B即 10100101B/1111B=1011B 例 4 求10100101B/1111B 10111111 10100101 1111 10110 1111 1111 1111 0 1.2.2 二进制逻辑运算 1. 逻辑“或”运算

14、C=A+B 或 C=A V B 1001V)1011 1011 2. 逻辑“与”运算 C=AB 或 C=AB或 C=AB 3. 逻辑“非”运算 C= 4. 逻辑“异或”运算 C=AB 1001)1011 1001 1001)1011 00101.3 供程序设计使用的其它进制数 程序设计人员在程序中表示数据时很少直接使用二进制,而使用其他进制,这些数据输入计算机后,还要把它们转换成二进制数。转换工作由程序完成。1.3.1 十进制数与十六进制数 1. 十进制数(09) 2. 十六进制数(09,A,B,C,D,E,F) 在二进制数后面加标志字符B,如10101100B 在十六进制后面加标志字符H,如

15、3AFH,0CAH 十进制数后面什么也不用加。十进制数二进制数十六进制数000000100011200102300113401004501015601106701117810008十进制数二进制数十六进制数910019101010A111011B121100C131101D141110E151111F161000010十进制、二进制、十六进制数比较表 1. 各种进制整数转换为十进制数 2. 十进制整数转换为二进制数 3. 十进制整数转换为十六进制数 4. 二进制整数与十六进制整数之间的相互 转换 (1)二进制整数转换为十六进制数 (2)十六进制整数转换为二进制数 二进制数、十六进制数转换成十进

16、制数的方法是:把二进制数、十六进制数按权位和展开。1.3.2 不同进制数之间的转换 1. 各种进制整数转换为十进制数 2. 十进制整数转换为二进制数 3. 十进制整数转换为十六进制数 4. 二进制整数与十六进制整数之间的相互 转换 (1)二进制整数转换为十六进制数 (2)十六进制整数转换为二进制数1.3.2 不同进制数之间的转换 方法:整数部分转换采用“除取余法”; 小数部分转换采用“乘取整法”。 1. 各种进制整数转换为十进制数 2. 十进制整数转换为二进制数 3. 十进制整数转换为十六进制数 4. 二进制整数与十六进制整数之间的相互转换 1.3.2 不同进制数之间的转换 方法:整数部分转换

17、采用“除16取余法”; 小数部分转换采用“乘16取整法”。 1. 各种进制整数转换为十进制数 2. 十进制整数转换为二进制数 3. 十进制整数转换为十六进制数 4. 二进制整数与十六进制整数之间的相互转换 1.3.2 不同进制数之间的转换 由于一位十六进制数相当于四位二进制数,因此,要将十六进制数转换成二进制数时,只需以小数点为界,向左或向右每一位十六进制数用相应的四位二进制数取代即可。如果不足四位,可用零补足。 反之,二进制数转换成相应的十六进制数,只是上述方法的逆过程,即以小数点为界,向左或向右每四位 二进制数用相应的一位十六进制数取代即可。1.4 计算机中使用的编码1. 二一十进制编码在

18、二一十进制编码中最常用的是BCD码。BCD码共有10个编码,即二进制数00001001,分别对应十进制09。2. ASC码ASC码是“美国信息交换标准代码”的简称。是一个16行8列的矩阵。常用十进制数或十六进制数来表示ASC码。如:字符A的ASC码用十进制数表示为65,用十六进制数表示为41H。BCD码BCD码就是用二进制编码表示十进制数。 8421BCD码 十进制数 8421BCD码 十进制数 8421BCD码 00000501011000160110200107011130011810004010091001 8421BCD编码表 例 6 写出69.25的BCD码。 根据前表 , 可直接写

19、出相应的BCD码: 69.25 =(01101001.00100101)BCD 8421BCD码的运算 运算方法:将每组BCD码按二进制规则相加;如果某组4位二进制相加之和大于1001B(9)或者有进位,则需要对该组进行加6修正。 例7 十进制加法及BCD码加法对照实例(1) 十进制加法BCD码加法按二进制相加十进制调整(加6) 58+ 34 92 0101 1000 + 0011 0100 1000 1100 大于9 1000 1100 + 0000 0110 1000 0010 29+ 48 77 0010 1001 + 0100 1000 0111 0001 有进位 0111 0001

20、+ 0000 0110 0111 0111例7 十进制加法及BCD码加法对照实例(2) 十进制加法BCD码加法按二进制相加十进制调整(加6) 92+ 89 181 1001 0010 + 1000 1001 10001 1011 有进位 大于9 10001 1011 + 0110 0110 11000 0001 42+ 33 75 0100 0010 + 0011 0011 0111 0101 不需调整ASCII码 ASCII码是美国标准信息交换码,是计算机中最通用的字符信息编码。ASCII码通常是7位编码,第8位通常作为奇偶校验位。7位编码包括26个英文大小写字母,09十个十进制码以及其他一些专用字符和控制字符等,共128种 。 ASCII字符编码表 高3位 低4位0000010100111001011101110000NULDELSP0Pp0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC33CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB7GWgw1000BSCAN(8HXhx习题与思考: 1 将无符号二进制数01101101B转换为十进制数 其值为 。 2 213= B = H。

温馨提示

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

评论

0/150

提交评论