欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    51单片机串口工作方式0和1.ppt

    • 资源ID:14408685       资源大小:1.15MB        全文页数:35页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    51单片机串口工作方式0和1.ppt

    串口工作方式5.1 方式0 同步移位寄存器方式,比特率固定为fosc/12。 常用于外接移位寄存器,以扩展并行I/O口,SM2位必须为0 。 1方式0发送: 当CPU执行写入发送缓冲器SBUF的指令时,串行口即把SBUF中的8位数据以fosc/12的固定比特率从RXD引脚串行输出,低位在先,TXD引脚输出同步移位脉冲,发送完8位数据置“1”中断标志位TI,图5-1,CPU响应中断后:CLR TI,请求中断,写入SBUF后自动开始发送,5.2.2 用74LS164扩展并行输出口74LS164:8位串入并出移位寄存器。图是利用74LS164扩展二个8位并行输出口的接口电路。.,图5-2-1,5.2 用AT89C51的串行口扩展并行口,RXD/TXD/,74HC595: 8位串入并出移位寄存器,带锁存及三态输出功能。 (相当于74LS164+273+244),清0,串行口工作于方式0:同步移位寄存器方式发送,fosc/12,每当新数据写入SBUF,即把SBUF中的8位数据以串行移出,2方式0接收 向串口的SCON写入控制字(置为方式0,并置“1”REN位,同时RI=0)时,串行口即开始接收数据。RXD为数据输入端,TXD为移位脉冲信号输出端,也以fosc/12的固定比特率,当收到8位数据时置“1” RI。表示一帧数据接收完,时序如下:,图5-2,CPU响应中断后:CLR RI,RI=0时,其中REN=1,请求中断,写入SBUF后自动开始发送,5.2.1 用74LS165扩展并行输入口,图9-21,P.159-160,74LS165:8位并入串出移位寄存器。图9-22是利用74LS164扩展二个8位并行输入口的接口电路。,并行锁存,串行口工作于方式0:同步移位寄存器方式接收,fosc/12,每当向SCON写入控制字为方式0且REN=“1” ,即串行移入8位数据到SBUF,5.2.2 方式1 :8位异步收发,比特率可变(由定时器控制)SM0、SM1=01方式1一帧数据为10位,1个起始位(0),8个数据位,1个停止位(1),先发送或接收最低位。帧格式如图7-7:,方式1比特率=(2SMOD/32)定时器T1的溢出率 SMOD为PCON寄存器的最高位的值(0或1)。,图7-7,1方式1发送 2方式1接收,图7-8,图7-9,P.105,请求中断,请求中断,可写下一个要发送的数据,可从SBUF读取新接收的数据,写入SBUF后自动开始发送,5.3.1 比特率的制定方法 方式0、方式2的比特率是固定的;方式1、方式3比特率由定时器T1的溢出率来确定。5.3.2 定时器T1产生比特率的计算(1)方式0波特率=时钟频率fosc1/12,不受SMOD位的值的影响。若fosc=12MHz,比特率为fosc/12即1Mb/s。(2)方式2波特率=(2SMOD/64)fosc 若fosc=12MHz: SMOD=0 比特率=187.5kb/s; SMOD=1 比特率=375kb/s (3)方式1或方式3时,比特率为:比特率= (2SMOD/32)T1的溢出率 = fosc/12/(T1计数次数) (2SMOD/32)实际设定比特率时,T1常设置为方式2定时(自动装初值)这种方式不仅操作方便,也可避免因软件重装初值而带来的定时误差。,P.109,P.110,时钟振荡频率为6MHz或12 MHz时,产生的比特率偏差较大,故用到串口通信时通常选用11.0592MHZ晶体振荡器。,= /12,= /32,= /12/计次/16,9.6kbit/s 实际10.416 6MHz 1 0 2 FDH1.2kbit/s 实际1.302 6MHz 0 0 2 F4H,= /12/计次/16,= /12/计次/32,1200bps,9600bps,计1次,计3次,计24次,计3次,计6次,计12次,比特率,比特率,MCS-51 单片机串行接口的硬件,MCS-51 单片机串行接口的控制,MCS-51 单片机串行接口工作方式,P3.0 位的第二功能 收端 RXD P3.1 位的第二功能 发端 TXD,寄存器 SCON、PCON、SBUF 寄存器 IE、IP,方式 0 方式 2,方式 1 方式 3,串行口的结构,有两个数据缓冲寄存器SBUF,一个输入移位寄存器,一个串行控制寄存器SCON和一个特殊功能寄存器PCON等组成。,8 位SBUF是全双工串行接口寄存器, 它是特殊功能寄存器,地址为 99H,不可位寻址;串行输出时为发送数据缓冲器,发送寄存器只写不读,数据从发送端TXD(P3.1)输出;串行输入时为接收数据缓冲器,接收寄存器只读不写,数据从接收端 RXD(P3.0)输入;由指令确定是对发送寄存器或接收寄存器作用。,SM0、SM1 串行接口工作方式定义位,SM0、SM1 = 00 方式 0,8位同步移位寄存器 SM0、SM1 = 01 方式 1,10 位异步接收发送 SM0、SM1 = 10 方式 2,11 位异步接收发送 SM0、SM1 = 11 方式 3,11 位异步接收发送,7.1.1 串行口控制寄存器SCON,注意: 方式 0 的特点,方式 2、方式 3 的差异,SM2 多机通信控制位(方式2和3),SM2 = 0,无多机通信 SM2 = 1,允许多机通信,串行口控制寄存器SCON,REN 串行口接收数据控制位,REN = 1,允许串行口接收数据 REN = 0,禁止串行口接收数据,由软件置位或清除,7.1.2 特殊功能寄存器PCON,串行数据传送速率控制寄存器 PCON,SMOD = 0,定义波特率不变,SMOD = 1,定义波特率加倍,注:PCON 寄存器的地址为87H, 仅 b7 位有用,不可位寻址。,地址:87H,TDL:等待方式位,PD:掉电方式,GF1、 GF2通用标志位,ANL PCON,7FH:对SMOD位清零,ORL PCON,80H:对SMOD位置位,串行口的4种工作方式,SM0SM1,串行口工作方式选择位,可变,5.3.1 方式 0 移位寄存器输入/输出方式,非串行通信用方式扩展并行I/O,RXD、TXD 线的作用,用并入串出移位寄存器扩展并行输入口 用串入并出移位寄存器扩展并行输出口,RXD 串 并、并 串 数据传送线 TXD 同步时钟线,同步时钟为 fosc/12(固定波特率),注:为应用串行接口扩展并行接口的方式。,串行口为同步移位寄存器方式,方式 0 用于扩展并行 I/O口,串 并方式,扩展并行输出口,电路图,RXDTXD,DATACLK,功能线,RXD 接移位寄存器的数据输入端 TXD 接移位寄存器的同步时钟端,8031,串入并出移位寄存器,注: 注意信号方向,方式 0 用于扩展并行 I/O口,并 串方式,扩展输入口,电路图,功能线,RXDTXD,DATACLK,8031,并入串出移位寄存器,RXD 接移位寄存器的数据输出端 TXD 接移位寄存器的同步时钟端,注: 注意信号方向,方式 0 用于扩展并行 I/O口,例1:用 8031 的串口外接 1 个串入并出移位寄存器 芯片CD4094 扩展为 8 位并行输出口,并口接 8 个 LED,并循环轮流显示。,电路图,P1.0,DATACLK,TBS,CD4094,8031,TXD,RXD,方式 0 用于扩展并行 I/O口,编程,ORG 0000H LJMP MAIN ORG 0023H LJMP SBRMAIN: MOV SCON,#00H; 方式 0,TI = 0 SETB EA SETB ES MOV A,#80H ; 初值,左边 LED 亮 CLR P1.0 ; CD4094 输出并口关闭 MOV SBUF,A ; 数据传出,产生中断LOOP: SJMP $,方式 0 用于扩展并行 I/O口,编程(续),SBR: SETB P1.0 ; CD4094 输出并口打开,LED 亮 ACALL DELAY CLR TI ; 手动清中断标志 RR A ; 循环位移 ; 80H、40H、20H、10H、08H CLR P1.0 ; CD4094 输出并口关闭 MOV SBUF,A ; 数据传出,产生中断 RETI END,注: 延时子程序 DELAY 未给出,方式 0 用于扩展并行 I/O口,例2:用 8031 的串口外接 1 个并入串出移位寄存器 芯片 CD4014 扩展为 8 位并行输入口,并口 接 8 个开关量输入,开关 K 闭合时有效。,电路图,P/S,CD4014,8031,P1.0,K,RXD,TXD,DATA,CLK,P1.1,方式 0 用于扩展并行 I/O口,编程,START: JB P1.0,START ; 若 K 未合上则循环查询 SETB P1.1 ; CD4014 并行数据输入有效 MOV SCON,#00X1XXX0B ; 方式 0,REN = 1 允许接收,RI = 0 CLR P1.1 ; CD4014 串行数据输出有效 LOOP: JNB RI,LOOP ; 若 RI = 0 数据未收完 ; 若 RI = 1 数据已收完 CLR RI ; 手动清 RI,准备下次传送数据 MOV A,SBUF,方式 1 10 位异步接收/发送(波特率可变),方式 1 的数位,1 位起始位 值 0 8 位数据位 为有用信息(低位在前,可含 1 位校验位) 1 位停止位 值 1,异步传送时的速率设置,速率设置的方法 设置定时器 T1 的初值 常用波特率: 用T1作为波特率发生器,B=(2SMOD/32)T1溢出率。,串行口为8位异步通信接口,方式 1(续),异步发送时的工作过程,发送条件 清 SCON 中发送中断标志 TI = 0,发送指令 MOV SBUF,A,注: 需发送的 8 位字节数据送串行数据缓冲器 SBUF 后将启动异步发送开始。,起始位 0、停止位 1 在执行发送指令时自动加入,发送传输线 TXD、GND,发送 10 位数据结束 发送中断标志 TI = 1,注: 若需继续发送,置TI = 0,送数据到 SBUF,方式 1(续),异步接收时的工作过程,接收条件 清 SCON 中接收中断标志 RI = 0 置 SCON 中接收控制标志 REN = 1,接收传输线 RXD、GND,接收同步位 接收传输线 RXD 有从 1 到 0 的信号,接收数据 9 位数据送数据接收器,8 位字节数据送串行数据缓冲器 SBUF1 位停止位送入 SCON 中的 RB8 = 1,接收 10 位数据结束 接收中断标志 RI = 1,注: 若需继续接收,置RI = 0,方式 1 用于串行通信,例3:8031串行口双工方式收发 ASCII 字符,最高 1 位用来作奇偶校验位,采用奇校验方式, 波特率为 1200 。,工作方式,数据区,主频选用,方式 1, 7 位 ASCII 码,1 位校验码,发送数据区首址 20H,接收数据区首址 40H,T1 设置,fosc = 6MHz,方式 2,初值为 F4H(查表 10.2),方式 1 用于串行通信,主程序(2 个单片机均有),ORG 0000HLJMP MAINORG 0023HLJMP SBR1MOV TMOD,#20H ; 定时器 T1 设置为方式 2MOV TL1,#0F4HMOV TH1,#0F4H ; 装定时器 T1 的初值SETB TR1 ; 启动定时器 T1,方式 1 用于串行通信,主程序(2 个单片机均有),MOV SCON,#50H ; 串口工作方式 1,REN = 1MOV R0,#20H ; 发数据区首址MOV R1,#40H ; 收数据区首址SETB ET1 ; 开 T1 中断SETB ES ; 开串口中断SETB EA ; 开总中断ACALL SOUT ; 调用发送子程序SJMP $,方式 1 用于串行通信,串行口中断服务程序,SBR1: JNB RI,SEND ACALL SIN ; 若 RI = 1,调用接收子程序 SJMP NEXTSEND: ACALL SOUT ; 若 RI = 0,调用发送子程序NEXT: RETI,方式 1 用于串行通信,发送子程序,SOUT: MOV A,R0 MOV C,P CPL C MOV ACC.7,C INC R0 MOV SBUF,A CLR,TI RET,方式 1 用于串行通信,接收子程序,SIN: MOV A,SBUF MOV C,P CPL C ANL A,#7FH MOV R1,A INC R1 CLR RI RET,7.3 单片机串行口的应用,7.3.1 串行口扩展显示器 【例7-1】用8位串入并出移位寄存器74HC164扩展显示器。,功能:把数据从显示缓冲区送到数码管。入口;将要显示的数放在以DIS0为首的8个单元中。出口:把预置的数输出以更新原有的显示。,MOVR2,08H;显示8个数码管 MOVR0,DIS7;显示缓冲区未地址送入R0DL0:MOVA,R0;取要显示数作查表偏移量MOVDPTR,TAB;指向字形表首MOVCA,ADPTR;查表得字形码MOVSBUF,A;发送显示DL1: JNBT1,DL1;等待发送完一帧CLRT1;清中断标志,准备继续发送 DECR0;更新显示单元 DJNZR2,DL0;重复显示所有数码管TAB:DB 0C0H,0F9H,0A4H,0B0H,99H;0,1,2,3,4,DB 92H,82H,0F8H,80H,90H;5,6,7,8,9,DB 88H,83H,0C6H,0A1H,86H;A,B,C,D,E, DB 8EH,0BFH,8CH,0FFH;F,P,暗,7.3.2 串行口扩展的键盘,在方式0下,串行口作同步移位寄存器用,以8位数据为一帧,先发送或接收最低位,每个机器周期发送或接收一位,故其波特率是固定的,为fosc12。串行数据由RXD(P3.0)端输入或输出。,CJNER1,08,LP1 SJMPRCVIN1:MOVA,R0 ADDA,A JMPADPTRTAB:AJMPOPR0 AJMPOPR1 AJMPOPR7OPR0: LJMPSTARTOPR7: LJMPSTART END,ORG0100HSTART:MOVR7,20MOVR0,50HMOVDPTR,#TABRCVI:MOV SCON,10HJNBRI,$CLRRIMOVA,SBUFMOVR0,#0MOVR1,#0LP1:RRCAJNCN1INCR0INCR1,

    注意事项

    本文(51单片机串口工作方式0和1.ppt)为本站会员(啊飒飒)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开