《最新单片机教学01ppt课件.ppt》由会员分享,可在线阅读,更多相关《最新单片机教学01ppt课件.ppt(75页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第二部分第一部分第三部分课程简介工程应用性课程:以模拟电子电路、数字电子电路、微型计算机原理及应用、汇编、C语言等为基础课程构成:总学时56:理论课40学时,实验课16学时成绩评定:平时成绩(10%)+实验(20%) +期末考试(70%)应用领域(1)构成智能化产品,实现仪器设备的智能化、自动化: 智能化仪器仪表; 家用电器; 计算机外设中的应用。 应用领域(2)在工业测控领域中的应用: 数据采集与处理; 工业过程控制。 实际应用举例(1)恒温电冰箱实际应用举例(2)电磁炉输入设备输出设备实际应用举例(3)MP3实际应用举例(4)生物医学工程应用举例数字体温计 腋下的体表皮肤温度 由温度传感器
2、采集,温度传感器把体温这个物理量进行某种变换后形成电信号 这个电信号是连续的模拟信号,需要转换成数字信号才能显示。于是模数转换和显示处理电路实现转换并输出到液晶屏显示。工业流水线应用举例装小球生产线 小球被传送带运送并掉入下方的纸箱中,纸箱在另一条传送带上被运送,每个纸箱装满10个小球后就换下一个纸箱装球。 现在需要设计一个单片机控制系统,实现以上的小球装箱要求,并实时显示当前装球的纸箱序号和已装的小球数。工业流水线应用举例装小球生产线系统框图基本种类 INTEL公司: 8位单片机:MCS-48、MCS-51 16位单片机: MCS-96、MCS-196 MOTOROLA公司:68系列、68H
3、C系列 ZILOG公司:Z8系列 ATMEL公司:89系列 TI公司:MSP系列MCS-51单片机的部分子系列(共10个)型号ROM/EPROMRAMT/CI/O串行口速度(MHZ)8051子系列8031无128232UART1280514K ROM128232UART1287514K EPROM128232UART128751BH4K OTP128232UART128052子系列8032无256332UART1280528K ROM256332UART1287524K EPROM/OTP256332UART1280C51子系列80C31 无128232UART12.1680C51 4K RO
4、M128232UART12.1687C51 4K EPROM/OTP128232UART12.16.20通用异步接收发送器程序设计与开发软件: 程序设计语言: 汇编语言、C语言 开发软件: Proteus, Vision 等本章小结 - 单片机概述单片机的基本概念单片机的特点和应用领域单片机的基本种类(MCS-51)单片机的程序设计语言及仿真软件 单片机是什么? 单片机能做什么? 为什么要学习单片机?第三部分第二部分第一部分MCS-51单片机的基本逻辑结构CPU振荡器和时序OSC总线扩展总线扩展控制器控制器 数据存储器 128B RAM216位定时器定时器/计数器计数器I/O接口接口程序存储器
5、4KB ROM串行口串行口外中断内中断控制并行口串行通信外部时钟源外部事件计数P0驱动器P2驱动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESETMCS-51MCS-51单片机单片机内部结构图内部结构图P0驱动器P2驱动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂
6、存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESETMCS-51MCS-51单片机单片机内部结构图内部结构图运算器P0驱动器P2驱动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码
7、器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESETMCS-51MCS-51单片机单片机内部结构图内部结构图控制器P0驱动器P2驱动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESET存储器P0驱动器P2驱
8、动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESETMCS-51MCS-51单片机单片机内部结构图内部结构图I/O接口P0驱动器P2驱动器P0锁存器P2锁存器RAM地址寄存器RAM4KB ROMB寄存器暂存器1暂存器2ACCSP程序地址寄存器 缓冲器PC+1PCDPTR中断、串行口和定时
9、器PSWP1锁存器P1驱动器P3锁存器P3驱动器定时控制指令寄存器指令译码器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1 XTAL2PSENALEEARESETMCS-51MCS-51单片机单片机内部结构图内部结构图80C51单片机的引脚功能电源引脚 Vcc(40脚):电源端,为+5V。 Vss(20脚):接地端。80C51单片机的引脚功能时钟电路引脚 XTAL2(18脚): 接外部晶体和微调电容的一端 XTAL1 (19脚): 接外部晶体和微调电容的另一端;在片内它是振荡 电路反向放大器的输入端,在采用外部时钟时,该 引脚接地。 80C51单
10、片机的引脚功能控制信号引脚 RST/VPD(9脚): RST:复位信号输入端,高电平有效。当此输入端保持两个机器周期的高电平时,就可以完成复位操作。 VPD :RST引脚的第二功能,备用电源输入端。当主电源Vcc 发生故障,降低到低电平规定值时,将+5V电源自动接入该引脚,为RAM提供备用电源,以保证RAM中的信息不丢失,使得复位后能继续正常运行。80C51单片机的引脚功能控制信号引脚 ALE/PROG(30脚): ALE:地址锁存允许信号端。正常工作时,该引脚以振荡频率的1/6固定输出正脉冲。CPU访问片外存储器时,该引脚输出信号作为锁存低8位地址的控制信号。它的负载能力为8个LS型TTL负
11、载。 PROG:是对片内带有4KB ROM的编程写入时的编程脉冲输入端。80C51单片机的引脚功能控制信号引脚 PSEN(29脚): 程序存储器允许信号输出端。 在访问片外ROM时,定时输出负脉冲作为读片外ROM的选通信号,接片外ROM 的OE端。 它的负载能力为8个LS型TTL负载。80C51单片机的引脚功能控制信号引脚 EA/Vpp(31脚): EA:外部程序存储器地址允许输入端。当该引脚接高电平时,CPU访问片内ROM并执行片内程序存储器中的指令,但当PC值超过0FFFH(片内ROM为4KB)时,将自动转向执行片外ROM中的程序。当该引脚接低电平时,CPU只访问片外ROM并执行外部程序存
12、储器中的程序。控制信号引脚 EA/Vpp(31脚): Vpp:对片内ROM固化编程时的编程电压输入端 (12-21V)80C51单片机的引脚功能I/O端口引脚 P0(32-39脚): 漏极开路的8位准双向I/O口,每位能驱动8个LS型TTL负载。 P0口可作为一个数据输入/输出口; 在CPU访问片外存储器时,P0口为分时复用的低8位地址总线和8位数据总线。当I/O口作为输入时,应先向此口锁存器写入全1, 此时该口引脚浮空,可作高阻抗输入。80C51单片机的引脚功能I/O端口引脚 P1(1-8脚): 带内部上拉电阻的8位准双向I/O端口,每位能驱动4个LS型TTL负载。80C51单片机的引脚功能
13、I/O端口引脚 P2(21-28脚): 带内部上拉电阻的8位准双向I/O端口,每位能驱动4个LS型TTL负载。在CPU访问片外存储器时,它输出高8位地址。80C51单片机的引脚功能I/O端口引脚 P3(10-17脚): 带内部上拉电阻的8位准双向I/O端口,每位能驱动4个LS型TTL负载。P3口除作为一般I/O口外,每个引脚都有第二功能。I/O端口引脚 第二功能列表:MCS-51单片机的内部存储器 256个数据存储器单元: 低128字节单元(单元地址:00H-7FH) 高128字节单元(单元地址:80H-FFH) MCS-51单片机的内部数据存储器专用寄存器区用户RAM区位寻址区四组通用寄存器
14、三组通用寄存器二组通用寄存器一组通用寄存器低128单元高128单元7FH30H20H18H10H08H00HFFH80H低128字节单元(内部RAM)用户RAM区位寻址区四组通用寄存器三组通用寄存器二组通用寄存器一组通用寄存器低128单元第一区第二区第三区低128字节单元(内部RAM) 寄存器区: 内部RAM的前32个单元作为寄存器使用 共分为4组,每组含8个寄存器,在组中按R0-R7编号 地址:00H-1FH 低128字节单元(内部RAM) 寄存器区: 同一时刻,仅选择一组寄存器组工作 由PSW中的RS0、RS1决定当前工作的寄存器组 通用寄存器有两种使用方法: e.g. MOV A, R0
15、 MOV A, 00H 低128字节单元(内部RAM) 寄存器区:组组 RS1 RS0R0R1R2R3R4R5R6R70 0 000H 01H 02H 03H 04H 05H 06H 07H1 0 108H 09H 0AH 0BH 0CH 0DH 0EH 0FH2 1 010H 11H12H 13H 14H 15H 16H 17H3 1 118H 19H 1AH 1BH 1CH 1DH 1EH 1FH低128字节单元(内部RAM) 位寻址区: 片内地址:20H-2FH 位地址:00H-7FH低128字节单元(内部RAM) 位寻址区:字节地址 MSB 位地址 LSB 2FH 7F 7E 7D 7
16、C 7B 7A 79 78 2EH 77 76 75 74 73 72 71 70 2DH 6F 6E 6D 6C 6B 6A 69 68 2CH 67 66 65 64 63 62 61 60 2BH 5F 5E 5D 5C 5B 5A 59 58 2AH 57 56 55 54 53 52 51 50 29H 4F 4E 4D 4C 4B 4A 49 48 28H 47 46 45 44 43 42 41 40 27H 3F 3E 3D 3C 3B 3A 39 38 26H 37 36 35 34 33 32 31 30 25H 2F 2E 2D 2C 2B 2A 29 28 24H 27
17、 26 25 24 23 22 21 20 23H 1F 1E 1D 1C 1B 1A 19 18 22H 17 16 15 14 13 12 11 10 21H 1F 1E 0D 0C 0B 0A 09 08 20H 07 06 05 04 03 02 01 00 低128字节单元(内部RAM) 位寻址区:e.g. 清除位地址00H单元 CLR 00H MOV 00H, #00H 或 ANL 00H, #00H低128字节单元(内部RAM) 用户RAM区: 供用户使用的一般RAM区,其单元地址为 30H-7FH 对于用户RAM区,只能以存储单元(字节地址)的形式来使用,在一般应用中常把堆栈开
18、辟在此区中。高128字节单元(内部RAM)专用寄存器区: MCS-51中专门规定的寄存器共有22个 其中,有21个可寻址 地址:80H-FFH 高128字节单元(内部RAM)程序计数器(PC) PC中的数据为将要执行的指令地址。 16位的计数器,有自动加1的功能 没有地址,不可寻址,用户不可对其进行读写 e.g. 执行 LCALL Addr16 高128字节单元(内部RAM)累加器A(ACC) 8位寄存器,地址为:E0H 用于存放操作数,是ALU输入的一个重要来源 是ALU运算结果的暂存单元,用于存放运算的中间结果。 高128字节单元(内部RAM)累加器A(ACC) 是数据传送的中转站,单片机
19、中的大部分数据传送都要通过累加器进行 在变址寻址方式中把累加器作为变址寄存器使用 高128字节单元(内部RAM)B寄存器 8位寄存器,主要用于乘除运算 乘法运算:乘积的高8位存于B中,低8位存于A中 除法运算:B中为除数,A中为商值 高128字节单元(内部RAM)B寄存器e.g. MUL A B ; A*B (B A) B中存放高8位,A中存放低8位 DIV A B ; A/B (A) 商 (B) 余数 高128字节单元(内部RAM)程序状态字寄存器(PSW) 8位寄存器,主要用于寄存指令执行的状态信息 PSW的各位定义如下: AC CY P OVRS0RS1 F0PSW(D0H)D7 D6
20、D5 D4 D3 D2 D1 D0高128字节单元(内部RAM)程序状态字寄存器(PSW) CY位(PSW.7):进(借)位标志位。 执行加法(减法)运算指令时: 如运算结果最高位(D7)向前有进位(借位), CY=1;否则,CY=0。 在位操作指令中,CY位是布尔累加器,用C表示高128字节单元(内部RAM)程序状态字寄存器(PSW) AC位(PSW.6):半进位标志位(辅助进位标志)。 执行加法(减法)运算指令时: 如运算结果的低半字节(D3)向高半字节有进位 (借位),AC=1;否则,AC=0。高128字节单元(内部RAM)程序状态字寄存器(PSW) FO位(PSW.5):用户标志。 由
21、用户自己定义、置位、复位,以作为软件标志。 OV位(PSW.2):溢出标志位。 如有溢出,即运算结果超出-128 +127的范围时,OV=1;无溢出时,OV=0。高128字节单元(内部RAM)程序状态字寄存器(PSW) RS0、RS1位(PSW.3和PSW.4):工作寄存器组选择控制位。 由用户用软件改变RS0和RS1的值,以切换当前选用的工作寄存器组。上电复位时,(RS0)=(RS1)=0,CPU自然选择第0组为当前工作寄存器组。 RS0,RS1的组合关系如下表所示。高128字节单元(内部RAM)程序状态字寄存器(PSW) RS0、RS1位(PSW.3和PSW.4):工作寄存器组选择控制位。RS1RS0寄存器组片内RAM地址00第0组 00H07H01第1组 08H0FH10第2组 10H17H11第3组 18H1FH高128字节单元(内部RAM)程序状态字寄存器(PSW) P位(PSW.0):奇偶检验位。 每条指令执行后,A中“1”的个数为奇数,则P=1; 否则,P=0。 PSW.1:为保留位。75结束语结束语