




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章8051串行口的C编程,本章主要介绍串行通信概念及51系列单片机的串行口问题,将具体介绍以下内容:,51单片机串行口-串行口结构、串行口的控制寄存器、串行口的工作方式、串行口的初始化、应用举例。,计算机串行通信基础-基本概念。,1,通信方式,6.1计算机串行通信基础,基本概念,并行通信方式空间上区分各位数据及联络控制信号。占用传输线多,速度快。,串行通信方式时间上区分各位数据及联络控制信号。占用传输线少,速度慢。,2,6.251单片机串行口,一、串行口结构,8051系列单片机片上有UART(通用异步收发)用于串行通信,发送时数据由TXD端发出,接收时数据由RXD端输入。,TTL电平:短距离机间通信RS232电平:与计算机通信。(驱动芯片MAX232),3,二、串行口的控制寄存器,与串行口有关的控制寄存器有:,1串行口控制寄存器SCON,工作方式控制位,中断标志,接收允许位,(硬件置位,软件清0),0禁止1允许(软件设置),4,工作方式控制位SM0、SM1,5,2电源控制寄存器PCON,SMOD:串行口波特率加倍位。,6,三、串行口的工作方式,串行口共有四种工作方式,方式110位异步通信方式,10位=1位起始位(0)+8位数据位+1位停止位(1),其中起始位和停止位在发送时是自动插入的。,7,发送:SBUF=?;,SBUF=“abc”;,发送条件TI=0;(软件清0)发送完毕TI=1;(硬件置位),8,接收:?=SBUF;,例子:serial_data=SBUF;,接收条件REN=1;(软件置位)收到数据RI=1;(硬件置位)读数完毕RI=0;(软件清0),9,波特率=2SMOD*(定时器1的溢出率)/32,例子:波特率=9600,fosc=11.059M,则设置PCON=0 x00;/SMOD=0;TMOD=0 x20;TH1=0 xfd;TL1=0 xfd;TR1=1;/启动定时器1ES=1;/开串行口中断EA=1;/开CPU中断,10,四、串行口的初始化,1.串行口波特率,使用单片机串口时,选用的晶振比较固定6MHz,12MHz,11.0592MHz。常用于和计算机的通信;选用的波特率也相对固定。串行口常用的波特率及相应的设置见表8-3。,11,2.初始化步骤,设置产生波特率的定时器1、串行口控制和中断控制。,具体步骤:,(1)确定定时器1的工作方式,编程TMOD寄存器;,(2)计算定时器1的初值,装载TH1和TL1;,(4)确定串行口的控制,编程SCON和PCON;,(5)开CPU和源中断,编程IE中的ES和EA位。,(3)启动定时器1,编程TCON中的TR1位;,12,五、串行口应用举例,例1:发送字符串程序,#include#defineucharunsingnedchar#defineuintunsignedintucharidatatrdata10=M,C,S,-,5,1,0 x0d,0 x0a,0 x00;,13,main()uchari;uintj;/*在11.0592MHz下,设置9600波特率,方式1*/TMOD=0 x20;/设置定时器1的方式TH1=0 xfd;/设置定时器1的初值TL1=0 xfd;SCON=0 x50;/设置串行口方式1,并允许接收PCON=0 x00;TR1=1;/启动定时器1,14,while(1)i=0;while(trdatai!=0 x00)/发送字符串SBUF=trdatai;while(TI=0);TI=0;i+;for(j=0;j12500;j+);/延时,15,例2:发送单字符子函数,voidsend_char(ucharhex)SBUF=hex;while(TI=0);TI=0;,16,例3:发送字符串子函数,voidsend_string(uchar*string)while(*string!=0)send_char(*string);string+;,17,例4:发送字符串程序。例1的程序可以改写成调用子函数的方式。,main()uintj;while(1)send_string(trdata);for(j=0;j12500;j+);,18,main()uintj;while(1)send_string(“MCS-51”);send_char(0 x0d);send_char(0 x0a);for(j=0;j=buffer_size)comrxdwrite=0;,26,ucharstring_compare(uchar*string,ucharnumb
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025药店合作协议
- 2025标准版隧道支护施工合同范本
- 2025合同样本:物业为公寓楼提供清洁服务的合同范本
- 电工理论考试题(高级)
- 调解简单版的协议书范本10篇
- 2025汇丰投资合同管理策略
- 2025短期合同工(固定期限)合同协议书
- 导游资格证考试地方导游基础知识试题
- 安全考试题之电气篇
- 田亩征用合同(标准版)
- 智能化设计资源管理-洞察及研究
- AI时代网络安全产业人才发展报告(2025年)-安恒信息
- 2025股权融资合同书
- 2025员工试用期合同协议书模板
- 供电服务技巧培训
- 2025浙江大学医学院附属儿童医院膳食部劳务派遣后勤工人招聘(莫干山院区)备考模拟试题及答案解析
- 2025湖南衡阳工会招聘11名工会社会工作者备考考试题库附答案解析
- 2024-2025学年广东省广州市花都区黄广中学八年级上学期10月考数学试卷(含答案)
- 铁路现场安全知识培训课件
- 体育器材技术服务和售后服务的内容和具体措施
- 2025-2026人教版(2024)七年级上册英语教学计划 (三篇)
评论
0/150
提交评论