24.4定时疆计微最的工作方式 2,45定时卷计量香应用 ◆方起(10=) ,0、旧为两个立的8位加法 厂几0与方式01类,计数范周为 256 作为车门控方式的定时备,借用定时/什数1的控制位,F1 2当定时器/件数器0工作在方式3时,具有3个定时器/针数器。 nna 发生) 245定时赛计舞应用 24定时器计新应用 序流福, n□ 时中入 245,定时汁数每应用 2.4.5定时计数是应用 —10ms 克时唇物造 -100a
11 Copyright © Http:// mcu.scetc.net 2.4.4定时器/计数器的工作方式 方式3 (M1=1,M0=1) 1. 当定时器/计数器0工作在方式3时,TL0、TH0成为两个独立的8位加法计 数器使用。 TL0与方式0或1类似,计数范围为1~256。 TH0作为非门控方式的定时器,借用定时器/计数器1的控制位TR1、TF1 。 2.当定时器/计数器0工作在方式3时,具有3个定时器/计数器。 8位定时器/计数器TL0 8位定时器TH0 16位定时器/计数器1(可选择方式0~2,只能用作串行口的波特率 发生器) SiChuan Engineering Technical College-1959 61 Copyright © Http:// mcu.scetc.net 2.4.5.定时器/计数器应用 例1:编写一段程序,让51MCU的P1.7输出1ms的方波(用定时器T1完成), fosc=12MHz。 定时器初值计算(TCY=1us)此时定时时间采用0.5ms 1、采用方式0:N=8192-500/1=7692=1E0CH 所以(TH1)=1E0H,(TL1)=0CH 2、采用方式1:N=65536-500/1=65036=0FE0C 所以(TH1)=0FEH,(TL1)=0CH 注意定时器的初 值计算方法! SiChuan Engineering Technical College-1959 62 Copyright © Http:// mcu.scetc.net 2.4.5.定时器/计数器应用 程序流程: 开 始 P1.7置1 T1模式设置 T1初值设置(0.5ms) 中断设置 开中断 循环等待中断 启动定时器T1 中断入口 T1初值设置(0.5ms) 中断返回 P1.7取反 主程序流程 中断服务子程序流程 SiChuan Engineering Technical College-1959 63 Copyright © Http:// mcu.scetc.net ORG 0000H ;主程序 AJMP MAIN ORG 001BH ;定时中断1入口 AJMP SERT1 MAIN:SETB P1.7 MOV TMOD,#10H ;设T1为方式1 MOV TH1,#0FEH ;给T1赋初值 MOV TL1,#0CH SETB ET1 ;开定时器T1中断 SETB EA SETB TR1 ;启动定时器T1 SJMP $ SERT1:MOV TH1,#0FEH ;定时器回赋初值 MOV TL1,#0CH CPL P1.7 RETI END 中断程序基本结构 定时器初始化、开中断 中断服务程序 2.4.5.定时器/计数器应用 SiChuan Engineering Technical College-1959 64 Copyright © Http:// mcu.scetc.net 例2:编写一段程序,让51MCU的P1.7输出占空比为70%,频率为100HZ的 矩形波(用定时器完成),fosc=6MHz。 思路:此题中,高电平时间为10ms×70%=7ms,低电平为3ms。对于这种高、 低电平时间不一致的波形,通常取出两个时间的相同单位时间作为定时器的 定时时间,对于不同的电平采用不同的定时次数。此例中,可用1ms作为定时 器的定时时间。高电平段定时7次,低电平段定时3次,即可实现矩形波输出。 定时器初值:(65536-X)*2µS=1ms X=65536-1000/2=65036=FE0CH 2.4.5.定时器/计数器应用 SiChuan Engineering Technical College-1959 65 Copyright © Http:// mcu.scetc.net 程序流程: 主程序流程 中断服务子程序流程 开 始 P1.7置1 T0模式设置 T0初值设置(1ms) 中断设置 循环计数器R0←7 循环等待中断 开中断 中断入口 P1.7取反 P1.7=1? R0赋值为7 中断返回 N Y R0赋值为3 T0回赋初值 (1ms) R0-1=0? Y N 2.4.5.定时器/计数器应用 SiChuan Engineering Technical College-1959 66
245,定时得计数舞应用 2.45.定时海计数露应用 325并行输入着出接口 525并行物入输出装口 也可按位传 机我行写P1口指号 3) 2-P时口1位的执眼 25并行输入输出楼口 025并行轴入抛出族口 3、负载能力 三、2口 电路害开客电洛。色无外装上拉电。 2-6口1位结原 12
12 Copyright © Http:// mcu.scetc.net 程序清单: ORG 0000H ;主程序 AJMP MAIN ORG 000BH ;定时中断T0入口 AJMP SERT0 MAIN:SETB P1.7 MOV TMOD,#01H ;设T0为方式1 MOV TH0,#0FEH ;给T0赋初值 MOV TL0,#0CH MOV R0,#7 SETB ET0 ;开定时器T0中断 SETB EA SETB TR0 ;启动定时器T0 SJMP $ 中断基本程序 结构 方式设定、初 值设定1mS 开中断启动定 时器、等待中断 2.4.5.定时器/计数器应用 SiChuan Engineering Technical College-1959 67 Copyright © Http:// mcu.scetc.net 程序清单(续): SERT1:MOV TH0,#0FEH ;定时器回赋初值 MOV TL0,#0CH DJNZ R0,EXIT CPL P1.7 JNB P1.7,DFZ MOV R0,#7 SJMP EXIT DFZ: MOV R0,#3 EXIT: RETI END 判断I/O状态、 更新初值 2.4.5.定时器/计数器应用 SiChuan Engineering Technical College-1959 68 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 MCS-51单片微型计算机芯片有32根输人/输出线,组成4个8位并行输 入/输出接口,分别称为PO口、P1口、P2口和P3口。这4个接口可以并行 输人或输出8位数据;也可按位使用,即每一根输人输出线都能独立地用 作输人或输出。 一 、P1口 1、结构 P1口由8个这样的电路所组成。图 中,锁存器起输出锁存作用。P1口的 8 个锁存器组成特殊功能寄存器,该寄存 器也用符号 P1表示。场效应管V1,与 上拉电阻组成输出驱动器,以增大负载 能力。上拉电阻的具体结构这里不作介 绍。三态门 1是输人缓冲器,三态门2 在端口操作时用。 图2-15 P1口1位的结构原理图 SiChuan Engineering Technical College-1959 69 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 2、功能 8031/8051/8751单片机的 P1口只有一种功能——通用输入输出接口。 有输入、输出、端口操作3中工作方式: (1)输出方式:计算机执行写P1口指令 MOV P1,#02H (2)输入方式:计算机执行读P1口指令 MOV A,P1 (3)端口操作:指令可直接进行端口操作 ANL Pl, #data 执行过程分成 “读一修改一写”三步。 8032/8052单片机P1口中的 P1.0与 P1.1除了作为通用 I/O接口外, P1.0(T2)还作为定时器/计数器 2的外部计数脉冲输人端,P1.1还作为定 时器/计数器 2的外部控制输人端 (T2EX)。 SiChuan Engineering Technical College-1959 70 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 3、负载能力 P1口输出时能驱动4个LSTTL负载。通常把100μA的输人电流 定义为一个TTL负载的输人电流,所以P1口输出电流不小于400 μA。P1口内部有上拉电阻,因此在输入时,即使由集电极开路 电路或漏极开路电路驱动,也无需外接上拉电阻。 SiChuan Engineering Technical College-1959 71 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 二、P2口 P2口有两种用途:通用I/O接口或高8位地址总线。图2-16是P2口1位 的结构原理图。图中的模拟开关受内部控制信号控制,用于选择P2口 的工作状态。 SiChuan Engineering Technical College-1959 72
号25并行输入物出楼口 025并行输入物出按口 1线状态 三、P5 2通用0口 24 二为时,位 ●2.5并行输入输出接口 2.5并行输入输出按口 、口 26行物入物出获 26申行入M出获口 1。计算机摩行通信基础 3
13 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 1.地址总线状态 计算机从片外 ROM中取指令,或者执行访问片外 RAM、片外 ROM的指令。模拟开关在右边,P2口出现程序计数器PC的高8位 地址或数据指针DPTR的高8位地址(A15~A8)。模拟开关在左边, 引脚与数据相连。 2.通用 I/O接口状态 P2口作准双向通用 I/O接口使用时,其功能与 P1口相同,有输入、 输出及端口操作 3种工作方式,负载能力也相同。 SiChuan Engineering Technical College-1959 73 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 三、P3口 P3口除了作为准双向通用I/0接口使用外,每一根线还具有第二种 功能。P3口用作 I/0 接口时,其功能与P1口相同。P3口作为第二功能 使用时,其锁存器Q端必须为高电平,单片机复位时,锁存器输出端为 高电平。P3口第二功能中的输人信号RXD,INT1、INT2、T0、T1经缓冲器 3输人,可直接进人芯片内部。 作为I/O时,此位=1 作为第二功能,Q=1 SiChuan Engineering Technical College-1959 74 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 四、P0口 V1、V2构成输出驱动器,与门3、倒相器 4及模拟开关构成输出控 制电路。三态门 1是输人缓冲器。 PO口有两种功能:地址/数据分时复用总线和通用 I/O接口。 控制信号=1,开关在上方,地址/数据分时复用总线 SiChuan Engineering Technical College-1959 75 Copyright © Http:// mcu.scetc.net §2.5 并行输入/输出接口 1、地址/数据分时复用总线 单片机系统扩展片外存贮器时,P0口作为地址/数据分时复用总线使用。 2、通用I/O接口 假如系统未扩展片外存储器,P0 口作为准双向通用 I/O接口使用。如 果输人由集电极开路或漏极开路电路驱动,应外加提升电阻。输出时, 如果负载是 MOS电路,应当外加提升电阻。P0口输出时能驱动8个 LSTTL负载,即输出电流不小于800μA。 SiChuan Engineering Technical College-1959 76 1. 计算机串行通信基础 随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通 信功能愈来愈显得重要。计算机通信是指计算机与外部设备或计算机与 计算机之间的信息交换。 通信有并行通信和串行通信两种方式。在多微机系统以及现代测控系 统中信息的交换多采用串行通信方式。 §2.6 串行输入/输出接口 计算机通信是将计算机技术和通信技术的相结合,完成计算机与外部设 备或计算机与计算机之间的信息交换 。可以分为两大类:并行通信与串 行通信。 并行通信通常是将数据字节的各位用多条数据线同时进行传送 。 并行通信控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收 方的各位同时接收存在困难。 §2.6 串行输入/输出接口
26串行物入物出接口 526.1申行通信的基本颜老 行情是将字节分成一位一位的武在一条输上逐个地代是 事行透能分为鼻少漫横表用沙漫信。 026.1事行通信的基本擦老 02.6,1率行通信的基本散念 日名四 均为“收了的)。 026.1串行通信的基本颜念 0261串行通情的盖本源念 传敏速难 10收字将关20车将号。20位/秒-240m 经 14
14 79 串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送。 §2.6 串行输入/输出接口 串行通信的特点:传输线少,长距离传送时成本低,且可以利用电话 网等现成的设备,但数据的传送控制比并行通信复杂。 串行通信分为异步通信和同步通信。 80 一、异步通信与同步通信 1、异步通信 异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发 送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可 能一致。 §2.6.1串行通信的基本概念 81 异步通信是以字符(构成的帧)为单位进行传输,字符与字符 之间的间隙(时间间隔)是任意的,但每个字符中的各位是以固定 的时间传送的,即字符之间是异步的(字符之间不一定有“位间隔” 的整数倍的关系),但同一字符内的各位是同步的(各位之间的距 离均为“位间隔”的整数倍)。 §2.6.1串行通信的基本概念 82 异步通信的数据格式 : 一帧包含内容: 起始位(1位,低电平);数据位(5~8位); 奇偶校验位(1位);停止位(1~2位,高电平) 从起始位到停止位结束的时间周期称为1帧。 例如:用ASCII码编码传送,数据位为7位,加一个奇偶校验位、一个 起始位及一个停止位,每帧共10位。 低位 高位 §2.6.1串行通信的基本概念 83 相邻两个字符之间的间隔可以是任意长度的,两个相邻字符之间根据 需要插入任意个高电平的空闲位。 例如: 字符A(ASCII码)异步通信的帧格式,设采用偶校验,1位停止位。 0 1 0 0 0 0 0 1 0 1 起始位 数据位 偶校验位 停止位 异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销 较小,但每个字符要附加2~3位用于起止位,各帧之间还有间隔,因此传 输效率不高。 §2.6.1串行通信的基本概念 Copyright © Http:// mcu.scetc.net 1.波特率(Baud Rate)是每秒钟传输二进制代码的位数,单位是:位/秒。 例如:每秒钟传送240个字符,而每个字符格式包含10位(1个起始位、1 个停止位、8个数据位),这时的比特率为: 10位/字符 × 240字符/秒 = 2400位/秒=2400 bps 位传送时间Td = 1/2400 =0.417ms §2.6.1串行通信的基本概念 传输速率 SiChuan Engineering Technical College-1959 84
026.1串行通信的基本念 026.1串行通信的基本源念 二、行的方 的沿个方向,不能实反 聚工 的围 26申行抛入物出日 826串行物入物出按口 出了 26事行物入物出口 、传距离与传输速率的关系 行口传行情位的大巨 (的1美 15
15 85 2、同步通信 同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全 同步。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的 字符间不留间隙,即保持位同步关系,也保持字符同步关系。发送方对接收方 的同步可以通过两种方法实现。 外同步 自同步 §2.6.1串行通信的基本概念 86 二、串行通信的传输方向 1、单工 单工是指数据传输仅能沿一个方向,不能实现反向传输。 2、半双工 半双工是指数据传输可以沿两个方向,但需要分时进行。 3、全双工 全双工是指数据可以同时进行双向传输。 单工 半双工 全双工 §2.6.1串行通信的基本概念 87 三、信号的调制与解调 利用调制器(Modulator)把数字信号转换成模拟信号,然后送到通 信线路上去,再由解调器(Demodulator)把从通信线路上收到的模 拟信号转换成数字信号。由于通信是双向的,调制器和解调器合并在 一个装置中,这就是调制解调器MODEM。 §2.6 串行输入/输出接口 88 四、串行通信的错误校验 1、奇偶校验 在发送数据时,数据位尾随的1位为奇偶校验位(1或0)。奇校验时,数据中“1” 的个数与校验位“1”的个数之和应为奇数;偶校验时,数据中“1”的个数与校 验位“1”的个数之和应为偶数。接收字符时,对“1”的个数进行校验,若发现 不一致,则说明传输数据过程中出现了差错。 2、代码和校验 代码和校验是发送方将所发数据块求和(或各字节异或),产生一个字节的校验 字符(校验和)附加到数据块末尾。接收方接收数据同时对数据块(除校验字节 外)求和(或各字节异或),将所得的结果与发送方的“校验和”进行比较,相 符则无差错,否则即认为传送过程中出现了差错。 3、循环冗余校验 这种校验是通过某种数学运算实现有效信息与校验位之间的循环校验,常用于对 磁盘信息的传输、存储区的完整性校验等。这种校验方法纠错能力强,广泛应用 于同步通信中。 §2.6 串行输入/输出接口 89 2、传输距离与传输速率的关系 串行接口或终端直接传送串行信息位流的最大距离与 传输速率及传输线的电气特性有关。当传输线使用每0.3m (约1英尺)有50PF电容的非平衡屏蔽双绞线时,传输距 离随传输速率的增加而减小。当比特率超过1000 bps 时, 最大传输距离迅速下降,如9600 bps 时最大距离下降到 只有76m(约250英尺)。 §2.6 串行输入/输出接口 90 串行通信接口标准 一、RS-232C接口 RS-232C是EIA(美国电子工业协会)1969年修订RS-232C标准。RS-232C定义了数 据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。 1、机械特性 RS-232C接口规定使用25针连接器,连接器的尺寸及每个插针的排列位置都有明 确的定义。(阳头) §2.6 串行输入/输出接口