9.3 AT89C51串行接口的应用与编程 工作方式0的应用

Slides:



Advertisements
Similar presentations
5.1 中断的概述 5.2 MCS - 51中断系统 5.3 中断系统的应用
Advertisements

第7章 AT89S51单片机的 串行口 1.
6 单片机的中断与定时系统 I/O设备必须通过I/O接口与计算机连接。 I/O接口的功能: 1.速度匹配: 锁存数据、传送联络信号。
实验四 利用中规模芯片设计时序电路(二).
第5章 中断系统 5.1 中断的概念 5.2 MCS-51单片机的中断流程 5.3 MCS-51的中断响应条件和中断处理
第5章 串行口与通信 本章学习目标 : 了解并行通信与串行通信的含义 理解波特率的概念,学会波特率的计算方法
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
邵阳学院 信息工程系电子实践教学中心 江世明
8051 指令.
本章分为四节,主要介绍: 4.1 程序编制的方法和技巧 4.2 源程序的编辑和汇编 4.3 基本程序结构 4.4 常用程序举例.
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
单片机原理与应用.
主要内容 串行口的结构 串行口的工作方式 波特率的计算 简单应用
第4章 智能仪器通信接口 4.1 GPIB通用接口总线 4.2 GPIB接口电路的设计 4.3 串行通信总线 4.4 串行通信接口电路的设计
第9章 串行扩展技术 (课时:6学时).
第2章 MCS-51单片机指令系统与汇编语言程序设计
复 习 一. 计算机中的数和编码 1. 2,10,16进制数及其之间的转换(整数) 按权展开,除x取余 2
单片机应用技术 项目一 循环彩灯装置 第6讲 指令功能及汇编语言程序设计(一) 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
6.3 定时器/计数器的应用 初始化 初始化的内容如下:
第二部分 微机原理 第3章 MCS-51的 指令系统 主讲教师:喻红.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
AVR单片机软硬件设计教程-入门篇 ——学单片机就要学AVR!
本章分为三节,主要介绍: 6.1 计算机串行通信基础 C51的串行口 6.3 单片机串行口应用举例.
第3章 AT89C51指令系统 3.1基本概念内部结构和引脚功能 指令、指令系统、机器代码
第八章 80C51单片机的串行通信 主要内容:本章主要介绍80C51串行通信相关知识,包括串行通信基本概念,80C51单片机的串行口及其工作方式,以及单片机在双机或多机通信中的应用。
单片机原理及应用 MCS-51系列单片机的基本硬件结构 MCS-51指令系统 MCS-51单片机的系统扩展与应用.
8051's UART mode0 output 通訊二甲 B 洪紹凱.
ARDUINO+BLUETOOTH Arduino实现蓝牙数据传输.
第2章 单片机的结构原理与 简单应用 (课时:10学时).
第八章 MCS-51与数码显示器和键盘的接口 一、MCS-51与数码显示器接口 数码显示器是单片机应用产品中最常用的廉价的输 出设备,它由8个发光二极管按一定规律排列而成, 当某一发光二极管导通时,则会被点亮,控制不同 组合的二极管导通,就能显示出各种字符。 1.显示器的结构.
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
单片机原理 单 片 机 单片机接口技术 单片机应用技术.
第3章 指令系统及程序设计举例 3.1 指令格式与寻址方式 一、指令格式 1. 指令 操作码 目标操作数,源操作数
CPU结构和功能.
第10章 综合实训 课题一 水温控制系统设计 一、实训目的 二、课题要求 熟悉常用温度传感器AD590的特性及接口电路的设计方法;
第8章 MCS-51串行口 8.1 串行口及其通信方式 8.2 IBM-PC系列机与 单片机 的通信技术.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第2章 单片机系统组成原理 2.1 MCS-51单片机组成原理 2.2 单片机复位电路设计 2.3 MCS-51存储器配置
6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例
单元五 MCS-51单片机内部资源 5.1 任务九 单片机计数并显示 5.2 任务十 单片机流水灯控制 5.3 任务十一 两台单片机数据互传
本 章 重 点 串行通信基本知识 单片机的串口及控制器 单片机串行通信方式 课时安排:3个课时.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第四章 指令系统及汇编语言程序设计.
第4章 中断技术 一个完整的微机系统是由硬件和软件共同构成的。微机系统的硬件有CPU、存储器和I/O口,外设组成。CPU与存储器之间的信息交换比较简单,而CPU与外设之间进行信息交换之前必须确定外设是否准备好,即选择I/O传送方式。I/O传送方式有4种:无条件、查询、中断和DMA。本章学习中断传送方式的有关内容。
第九章 MCS-51串行接口 9.1 串行数据通信概述 通 信 并行 一、并行通信和串行通信 串行 串行通信 数据是一位一位传送的
数码管数字时钟电路的设计 1. 系统硬件电路的设计
第四章 MCS-51定时器/计数器 一、定时器结构 1.定时器结构框图
第五章 MCS-51中断系统 一、中断请求源 MCS-51提供5个中断请求源,即INT0、INT1、TF0、 TF1和串行口发送与接收中断请求源TI或RI。这些 中断请求源分别由TCON与SCON的相应位锁存。
第3章 MCS-51指令系统 介绍MCS—51系列单片机的寻址方式 介绍MCS—51系列单片机的指令系统
第4章 80C51系列指令系统 教学目的:熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
本章内容 MCS-51单片机指令系统的格式 MCS-51单片机寻址方式 指令系统的分析
5-6 串列埠模式0輸出埠擴充實習.
第二部分 微机原理 第9章 串行通信 及其接口 主讲教师:喻红.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
单片机原理及应用 实践部分 主讲人:刘 强 四川工商学院单片机教学团队 单片机原理及应用 实践部分 主讲人:刘 强
四、手工汇编 完成汇编的方法有两种:手工汇编和汇编程序汇编 1.手工汇编步骤 A
10.3 单片机开发系统应用实例 数据采集与显示电路的设计 1.系统硬件电路的设计
第9章 串口及串行通信技术 ● 教学目标 介绍MCS-51串行通信接口技术 介绍MCS-51单片机之间的串行通信接口技术
单片机原理与应用.
单片机应用技术 (C语言版) 第8章 串行通信接口
上节复习(11.14) 1、方式2、方式0的特点? 2、定时/计数器的编程要点? 3、实验5方案优化问题.
单片机应用技术 (C语言版) 第3章 MCS-51指令系统及 汇编程序设计
ADC0809并行A/D转换 (实验十) DAC0832并行D/A转换实验 (实验十一) RS232串口通信实验 (实验九)
上节复习(11.7) 1、定时/计数器的基本原理? 2、定时/计数器的结构组成? 3、定时/计数器的控制关系?
DSP技术与应用 电子与信息技术系.
第1章 微型计算机基础.
Presentation transcript:

9.3 AT89C51串行接口的应用与编程 9.3.1 工作方式0的应用 9.3.1 工作方式0的应用 串行口工作方式0主要用于扩展并行I/O口,扩展成并行输出口时,需要外接一片8位串行输入并行输出的同步移位寄存器74HC164或CD4094。扩展成并行输入口时,需要外接一片或几片并行输入串行输出的同步移位寄存器74HC165或CD4014。

数据的串行输出或输入可采用中断方式,也可采用查询标志位TI、RI的方法,在移位初始化时,要进行相应的设置。 [例9.1] 利用串行口工作在方式0,外扩一片74HC164构成一个三位LED动态显示器,并将内部RAM显示单元65H、66H、67H中的内容输出显示。如图9-14所示。

图9-14 串行动态显示图

主程序如下: ORG 0100H STPRT: MOV SCON,#00H ;串行口初始化为方式0 SETB P1.2 ;消去最高显示位 SETB P1.1 MOV SBUF,65H ;传送最低显示位 JNB TI,$ ;传送没结束,等待

CLR P1.0 ;最低位显示 CLR TI ;清中断标志位 LCALL DSSJ ;调延时子程序,维持状态 SETB P1.0 ;消去最低显示位 MOV SBUF,66H ;传送中间显示位 JNB TI,$ ;等待传送结束 CLR P1.1 ;显示中间位 CLR TI ;清中断标志位

LCALL DSSJ ;调延时子程序,维持状态 SETB P1.1 ;消去中间显示位 MOV SBUF,67H ;传送最高显示位 JNB TI,$ ;等待传送结束 CLR P1.2 ;显示最高显示位 CLR TI ;清中断标志位 RET

[例9.2] 利用串行口工作方式0,扩展一片并行输入串行输出的移位寄存器74LS165,如图9-15所示,构成一个8位并行输入口,输入8位开关量(每一开关量代表不同功能,如启动、停止等),并将其存入固定单元60H中。

图9-15 串行口扩展输入并行口

串行口工作在方式0,且处于接收状态,则REN置为“1”,SCON的控制字为10H,并行数据采用间隔调用子程序的方式读入,程序如下:

START: CLR P1.0 ;输入并行数据 SETB P1.0 ;允许串行移位,等待移位脉冲 MOV SCON ,#10H ;设串行口方式0,启动接收 JNB RI,$ ;等待接收一帧数据 CLR RI ;清中断标志位 MOV A,SBUF ;读入接收数据 MOV 60H,A ;存入固定单元 RET

9.3.2 工作方式1的应用 串行方式1主要用于异步双机通信,波特率由定时器T1产生。 [例9.3] 利用串行口方式1实现一个数据块的传送,数据块存在内部RAM的60H~6FH中,波特率选为2400,并形成和校验数据一起发送。

串行口工作为方式1,且处于发送的单工模式,则SCON控制字为40H。方式1的波特率由T1产生,设T1工作于方式2自动重装初值模式,晶振频率为11.0592 MHz时,计数初值为F4H。用于和校验的算术和存放在70H中,并在数据块的末尾传送出去。 通过上面的分析,采用查询法传送数据块的子程序如下:

MOV TMOD,#20H ;设置T1为工作方式2 MOV TL1,#0F4H ;给T1送初值 MOV TH1,#0F4H SETB TR1 MOV SCON,#40H ;设置串行口为工作方式1 MOV R0,#60H ;数据块首址送R0 MOV R1,#10H ;数据块长度送R1 MOV 70H,#00H

DWFP:MOV A,@R0 MOV SBUF,A ;发送数据 ADD A,70H ;对和校验求和 MOV 70H,A JNB TI,$ ;未发送完等待 CLR TI

INC R0 DJNZ R1,DWFP MOV SBUF,A ;发送和校验 JNB TI,$ CLR TI RET

9.3.3 工作方式2与工作方式3的应用 方式2和方式3都是11位异步通信方式,所不同处仅在于波特率。方式2的波特率只有固定的两种,而方式3的波特率则可由用户设定。 [例9.4] 利用串行口方式2编制一发送程序,将片内RAM中60H~6FH单元的数据串行发送出去,第九数据位TB8作奇偶校验位。 根据要求,将串行口设置为方式2、单工发送,则SCON控制字为80H。波特率选为fosc/64。采用中断方式发送的主程序和中断程序如下:

ORG 0000H AJMP ZCX1 ;转主程序 NOP 0RG 0023H ;串行中断程序 INC R0 ;被发送数据地址增1 MOV A,@R0 ;取出待发数据 MOV C,PSW.0 ;将奇偶位送TB8 MOV TB8,C MOV SBUF,A ;发送数据 DJNZ R1,CSJS ;判断是否发送完 CLR ES ;发送完关中断

CSJS: CLR TI ;清中断标志 RETI NOP ZCX1: ORG 0100H ;主程序 MOV SP,#20H ;置堆栈指针 MOV SCON,#80H ;串行口设置为方式2 MOV PCON,#00H ;波特率选为fosc/64 MOV R0,#60H ;数据块首址送R0

MOV R1,#10H ;数据块长度送R1 SETB EA ;开总中断 SETB ES ;开串行口中断 MOV A,@R0 ;取出待发数据 MOV C,PSW.0 ;将奇偶位送TB8 MOV TB8,C MOV SBUF,A ;发送数据 SJMP ¥ ;等待中断

[例9. 5] 试编制串行口在方式3下接收数据块的程序。设单片机晶振为11 [例9.5] 试编制串行口在方式3下接收数据块的程序。设单片机晶振为11.0592 MHZ,波特率为2400 b/s,接收数据存在片内RAM的40H起始单元的一段区间内,数据块长度由发送方先发送过来(不超过允许值),每接收一个数据都核对其奇偶校验位,正确存储数据,否则给出出错标志。 根据要求,设T1工作于方式2,当SMOD=0时,T1计数初值为F4H。采用查询法编制的程序如下:

START: MOV TMOD,#20H ;置T1工作于方式2 MOV TH1,#0F4H ;置T1计数初值 MOV TL1,#0F4H SETB TR1 ;启动T1 MOV SCON,#0D0H ;置串行口工作于方式3允许接收 MOV PCON,#00H ;设SMOD=0

MOV R0,#40H ;接收数据区首址送R0 JNB RI,¥ ;等待接收数据块长度字节 CLR RI ;接收后清RI MOV A,SBUF ;将数据块长度读入后存入R1中 MOV R1,A OR0: JNB RI,¥ ;等待接收数据 CLR RI ;接收一个字符后清RI

MOV A,SBUF ;将接收字符读入A JB PSW.0,OR1 ;进行奇偶位校验 JB RB8,OR3 SJMP OR2 OR1: JNB RB8,OR3 OR2: MOV @R0,A ;校验正确存接收数据

INC R0 ;存储单元地址增1 CLR PSW.5 ;设置正确的标志 DJNZ R1,OR0 ;没接收完继续接收 SJMP $ ;接收完停机 OR3: SETB PSW.5 ;置校验出错标志 SJMP $ ;停机

9.4 PC机与单片机间的串行通信 9.4.1 RS-232C总线标准

表9-3 RS-232C信号引脚定义 引 脚 定 义(助记符) 引 脚 1 保护地(PG) 14 辅助通道发送数据(STXD) 2 引 脚 定 义(助记符) 引 脚 1 保护地(PG) 14 辅助通道发送数据(STXD) 2 发送数据(TXD) 15 发送时钟(TXC) 3 接收数据(RXD) 16 辅助通道接收数据(SRXD) 4 请求发送(RTS) 17 接收时钟(RXC) 5 清除发送(CTS) 18 未定义 6 数据准备好(DSR) 19 辅助通道请求发送(SRTS) 7 信号地(GND) 20 数据终端准备就绪(DTR) 8 接收线路信号检测(DCD) 21 信号质量检测 9 22 音响指示(RI) 10 23 数据信号速率选择 11 24 发送时钟 12 辅助通道接收线信号检测(SDCD) 25 13 辅助通道允许发送(SCTS)  

表9-3中定义的许多信号线是为通信业务联系或信息控制而设置的,在计算机串行通信中主要使用以下一些信号: (1) 数据传输信号:发送数据(TXD),接收数据(RXD)。 (2) 调制解调器控制信号:请求发送(RTS),清除发送(CTS),数据准备好(DSR),数据终端准备就绪 (DTR)。 (3) 时钟信号:发送时钟(TXC),接收时钟(RXC)。 (4) 地线:保护地(PG),信号地(GND)。

RS-232C总线的其他标准规定如下: (1)  RS-232C总线标准逻辑电平:+5~+15 V表示逻辑“0”,-15~-5 V表示逻辑“1”,噪声容限为2 V。 (2) 标准数据传输速率:50 b/s、75 b/s、110 b/s、300 b/s、600 b/s、1200 b/s、2400 b/s、4800 b/s、9600 b/s、19 200 b/s。 9.4.2 RS-232C接口电路 1. MAX232接口电路 MAX232芯片是MAXIM公司生产的具有两路接收器和驱动器的IC芯片,其内部有一个电源电压变换器,可以将输入+5 V的电压变换成RS-232C输出电平所需的±12 V电压。

MAX232芯片的引脚结构如图9-16所示。其中管脚1~6(C1+、V+、C1-、C2+、C2-、V-)用于电源电压转换,只要在外部接入相应电解电容即可;管脚7~10和管脚11~14构成两组TTL信号电平与RS-232C信号电平的转换电路,对应管脚可直接与单片机串行口的TTL电平引脚和PC机的RS232电平引脚相连。具体连接可参看图9-17。

图9-16 MAX232引脚图

2.PC机与AT89C51单片机串行通信电路 图9-17是由芯片MAX232实现PC机与AT89C51单片机串行通信的典型接线图。图中外接电解电容C1、C2、C3、C4用于电源电压变换,提高抗干扰能力,它们可以取相同数值电容1.0 μF/16 V。电容C5用于对+5 V电源的噪声干扰进行滤波,其值一般为0.1 μF。

图9-17 用MAX232实现串行通信接口电路图

3.PC机与多个单片机间的串行通信 图9-18表示一台PC机与多个单片机间的串行通信电路。这种通信系统一般为主从结构,PC机为主机,单片机为从机。主从机间的信号电平转换由MAX232芯片实现。

图9-18 PC机和多个单片机串行通信电路