Download presentation
Presentation is loading. Please wait.
1
单片机原理及应用 主讲:张学军 光电工程学院 TEL:85880665
南京邮电大学光电工程学院 单片机原理及应用 主讲:张学军 TEL: 光电工程学院
2
课程简介 课程性质:限选课(考查) 总学时:32学时(其中实验12学时)
成绩评定方法:平时10%(主要考察作业和到课情况),实验30%(主要考察实验完成情况和实验报告),考试60%。
3
本课程主要内容 第一章 单片机概述 第二章 MCS-51单片机硬件结构 第三章 MCS-51单片机指令系统 第四章 MCS-51汇编程序设计
第七章 单片机串行口及应用 第八章 单片机的系统扩展 第九章 单片机系统的接口(*)
4
第一章 单片机概述 一、微型计算机基础知识 二、单片机概述
5
一、微型计算机基础知识 主要介绍: 1 .电子计算机基本组成 2 .微机硬件系统结构 3 .微型计算机工作过程
4 .计算机中的数制(运算及转换) 5 .计算机中的编码及转换 6.运算方法 7.计算机语言
6
1 . 电子计算机基本组成 计算机由硬件和软件两大部分组成。
硬件:系指构成计算机系统的物理实体或物理装置 ,它由运算器、控制器、存储器、输入设备和输出设备等五大部分构成 存贮器 运算器 控制器 接 口 输入设备 输出设备
7
2 .微机硬件系统结构 在微型计算机中,将运算器和控制器集成在一块IC上,合称这为CPU CPU 存贮器 I/O接口 I/O外设 控制总线
地址总线 控制总线 数据总线
8
3 .微型计算机工作过程 根据冯·诺依曼原理构成的现代计算机的工作原理可概括为:存储程序和程序控制。
南京邮电大学光电工程学院 3 .微型计算机工作过程 根据冯·诺依曼原理构成的现代计算机的工作原理可概括为:存储程序和程序控制。 存储程序是指人们必须事先把计算机的执行步骤序列(即程序)及运行中所需的数据,通过一定的方式输入并存储在计算机的存储器中。 程序控制是指计算机自动地逐一取出程序中的一条条指令,加以分析并执行规定的操作。 化 | 综合参考 开放、中立,源自维基百科 冯·诺伊曼结构,也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。 目前使用冯·诺伊曼结构的中央处理器和微控制器有很多。除了上面提到的英特尔公司的8086,英特尔公司的其他中央处理器、安谋公司的ARM7、MIPS公司的MIPS处理器也采用了冯·诺伊曼结构。
9
在计算机运行的过程中有两种信息在流动。 一是数据流,这包括原始数据和指令,它们在程序运行前已经预先送至主存中。在运行程序时数据送至运算器参与运算,指令被送往控制器。 二是控制流,它是由控制器根据指令的内容发出的,指挥计算机各部件执行指令规定的各种操作或运算,并对执行流程进行控制。
10
计算机的基本工作过程 第一步:CPU自动从存贮器中取指令 第二步:由CPU分析指令和执行指令
第三步:按序再取下一条指令,分析及执行依次周而复始执行指令序列的过程 CPU 存贮器 I/O ② ③ ①
11
4 .计算机中的数制(自学) 主要介绍: 二进制数,十六进制数 不同数制间的相互转换 二进制数的算术/逻辑运算 十六进制数的算术/逻辑运算
12
5 .计算机中的编码 ①机器数与真值 机器中,数的符号用“0”、“1” 表示。最高位作符号位,“0”表示“+”,“1”表示“-”。
机器数:机器中数的表示形式,其位数通常为8的倍数 真值: 机器数所代表的实际数值。 举例:一个8位机器数与它的真值对应关系如下: 真值: X1=+84= B X2=-84= B 机器数:[X1]机= B [X2]机= B
13
③反码(One’s Complement)
②原码(True Form) 最高位为符号位,0表示 “+”,1表示“-”。数值位与真值数值位相同。 例 8位原码机器数: 真值: x1 = B x2 =- B 机器数: [x1]原 = [x2]原 = 原码表示简单直观,但0的表示不唯一,加减运算复杂。 ③反码(One’s Complement) 正数的反码与原码相同,负数的反码是符号位不变(为1),其余按位取反。
14
③补码(Two’s Complement)
正数的补码表示与原码相同。负数补码的符号位为1, 数值位等于求反加1,即反码加1 例:求 8位补码机器数: x= [x]补= x= [x]原 = [x]反 = [x]补 = 补码表示的优点: 0的表示唯一,加减运算方便 规定: B 为 B 不是-0,而是-128
15
8位机器数表示的真值
16
④机器数与真值之间的转换 1. 真值®机器数 (1)X1=+127,X2=-127,求[X]原 、[X]补
[X1]原=[X1]补= = 7FH [X2]原= = FFH [X2]补= = 81H (2)X1=+255,X2=-255 ,求[X]原 、[X]补 [X1]原=[X1]补= = 00FFH [X2]原= = 80FFH [X2]补= = FF01H
17
2. 机器数®真值 * 注意机器数表示(原码、补码) * 注意机器数符号位
2. 机器数®真值 * 注意机器数表示(原码、补码) * 注意机器数符号位 1) [X1]原= 59H, [X2]原= D9H,求真值? [X1]原= [X2]原= X1= B= X2= B =-89 2) [X1]补= 59H,[X2]补= D9H,求真值 X1= B = X2= B =-39
18
原码、反码、补码之间的关系小结 正数: [X]原=[X]反=[X]补 负数:[X]反=[X]原符号位不变,其它按位取 反;[X]补=[X]反+1
19
⑤信息代码及转换(自学) (1)BCD码:将十进制数表示为二进制编码的形式 BCD码存贮形式:非压缩BCD码和压缩BCD码:
(2) ASCII码:美国国家信息交换标准字符码 (3) ASCII码、BCD码及16进制数之间的转换 16进制数→ ASCII码 ASCII码→ 16进制数 BCD码 → ASCII码 16进制数→ BCD码
20
6.运算方法 (一) 补码加减运算 符号作为数值直接参与运算,变减法为加法运算。 1.补码加法运算:[X+Y]补=[X]补+[Y]补
例:X1=+13,Y1=+6,X2=-13,Y2=-6,求X1+Y1、X2+Y2 解:求[X1]补、 [Y1]补、[X2]补、[Y2]补 [+13]补 [-13]补 [+6]补 [-6]补 [+19]补 [-19]补 进位为模,舍弃
21
2.补码减法运算:[X-Y]补=[X]补-[Y]补=[X]补+[-Y]补
例:X1=+6,Y1=+8,X2=-6,Y2=-8,求X1-Y1、X2-Y2 解:求[X1]补、 [Y1]补、 [-Y1]补、[X2]补、[Y2]补、[-Y2]补 [+6]补 [-6]补 [-(+8)]补 [-(-8)]补 [-2]补 [+2]补 进位为模,舍弃
22
变补相加计算减法: 当最高位产生进位,实际无借位;反之有借位。
(二)无符号数加减运算 1. 加法运算:直接相加。 2. 减法运算:‘变补相加’。 例: X=150=96H,Y=10=0AH,计算X+Y=?X-Y=? 进位为模,舍弃 变补相加计算减法: 当最高位产生进位,实际无借位;反之有借位。
23
无符号数与补码运算的溢出判断方法却不同。
计算机中补码的加减运算与无符号数相同。 机器数 无符号数 补码: 无符号数与补码运算的溢出判断方法却不同。
24
(三)溢出─运算过程中数据超出允许表示范围
1.无符号数溢出判断─最高位是否产生进位或借位。 例:X=74= 4AH,Y=216= D8H,求X+Y=?和X-Y=? 溢出使结果出错。加法有进位,结果应为290; 减法无进位则有借位,结果负数补码。 计算机设置进位标志位 Cy 判断无符号数溢出: 当数据加/减最高位产生进位/借位,Cy=1;否则,Cy=0。
25
2.补码溢出判断─符号位和最高数值位进位是否相同。
例X1=-5,Y1=-2,X2=-105,Y2=-91,求X1+Y1、X2+Y2 [-5]补 [-105]补 [-2]补 [- 91]补 [-7]补 [+ ]补 正确,无溢出 正数,有溢出。 负数相加,同时有进位:Cy6 =1、Cy7=1,则无溢出; 不同时有进位,则有溢出,结果出错。 例X1=+45,Y1=+46,X2=+90,Y2=+107,求X1+Y1、X2+Y2 计算机设置溢出标志位 OV 判断补码溢出。 逻辑关系: OV =Cy6ÅCy7 当补码加/减产生溢出 OV=1,否则OV=0。
26
7 .计算机语言(程序设计语言) 指令:是能被计算机识别并执行的二进制代码。 程序:计算机一系列指令的有序集合。
计算机语言:人机交流的语言,程序表达方式 主要有机器语言、汇编语言和高级语言 汇编语言 高级语言 机器语言 机器 (CPU) 汇编 编译 识别
27
二、单片机概述 主要介绍: 1. 单片机概念 2. 单片机的发展简史 3. 单片机发展趋势 4. 单片机应用—电子产品的控制器
5. 单片机主要生产厂家及产品
28
1. 单片机概念确切的称谓应是微控制器Microcontroller
单片微型计算机(Single Chip Microcomputer)简称单片机,是指在一块芯片体上集成了中央处理器CPU、随机存储器RAM、程序存储器ROM或EPROM、定时器/计数器、中断控制器以及串行和并行I/O接口等功能部件,构成一个完整的微型计算机。 目前,新型单片机内还有A/D及D/A转换器、高速输入/输出部件、DMA通道、浮点运算等特殊功能部件。 CPU RAM ROM I/O接口 定时/计数器 中断控制电路 A/D D/A PWM IC芯片
29
2. 单片机的发展简史 大致可分为以下五个阶段。 4位单片机(197l一1974)
1971年11月,Intel公司设计 的4位微处理器Intel4004 低档8位单片机(1974—1978) 不带串行接口,如Intel公司的8048,Mostek公司的3870 高档8位单片机(1978—1982) Intel公司的8051、NEC公司的MPD7800等产品。 16位单片机(1982—1990) Mostek公司68200,Intel公司于1983年推出16位8096 新一代单片机(90年代以来) 采用双CPU或内部流水线,Intel公司的8044、 NEC公司的MPD7800
30
3. 单片机发展趋势 (1)微型化 (2)低功耗 (3)高速化 (4)集成资源更多 (5)性能更加优异 (6)通信及网络功能加强
(7)专用型单片机发展加快
31
4. 单片机应用—电子产品的控制器 (1)测控系统:温室自动控制、车辆检测系统等 (2)机电一体化产品:数控机床、电脑绣花机等
(3)智能仪器仪表及传感器:智能电压测试仪 (4)计算机外设及智能接口 :打印机、键盘、绘图仪等 (5)计算机网络与通信产品:交换机、HUB (6)办公自动化设备:传真机、复印机、考勤机等 (7)家用电器:电冰箱、空调、影音设备、电子玩具 (8)其它方面:汽车电子、航空航天电子等
32
5. 单片机主要生产厂家及产品 公司 典型产品系列 主要产品 Intel公司 MCS-48 MCS-51 MCS-96
Philips 与MCS-51 兼容:P87 P89 80C552 83C552 Motorala MC68系列 MC68HC05 ATMEL 与MCS-51 兼容 AT89XX 89C51 89C52 MicroChip PIC165X系列 PIC16C55/16C56 Zilog Z8系列 Z86C06/C21 LG GMS97CXX GMS97C65
33
对单片机学习建议 1 对非计算机专业,学习本课程目的在于 应用单片机,学习原理主要是了解如何用 2 单片机是一块需编程的电路IC芯片
学习要硬件与软件兼顾,二者相结合 3 单片机是实践性较强的课程 通过大量的编程和实验才能真正单片机的应用
34
作业 1 数制转换 二、十六进制数转十进制:1111B、FFH 十进制转二、十六进制数:15、127
二、十六进制数之间转换: B、2FH 2 二进制数算术运算: 若X= B,Y= B 计算X+Y,X-Y,XY 3 十六进制数算术运算:若X=78H,Y=66H 4 二进制数逻辑运算 若X= B,Y= B 计算X+Y,X·Y,XY,非X
35
5 十六进制数逻辑运算 若X=76H,Y=0FH 计算X+Y,X·Y,XY,非X 6 用ASCII码表示下列字符串: I come from 2001 toy class. 7 代码转换 16进制数-> ASCII码: 01H,06H,08H,0AH,0DH ASCII码 -> 16进制数:32H,45H,46H BCD码 -> ASCII码: 24H,03H 16进制数-> BCD码: 25H,10H
Similar presentations