版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
8-1串行通信基础知识8-2串行口及控制寄存器8-3串行通信工作方式8-4串行口的应用第8章串行数据通信8-1串行通信基础知识一、串行通信基本原理: 并行 数据传送 同步 串行异步(用于单片机中)
并行数据传送串行数据传送原理各数据位同时传送数据位按位顺序进行优点传送速度快、效率高最少只需一根传输线即可完成:成本低缺点数据位数→传输线根数:成本高速度慢应用传送距离<30米,用于计算机内部几米~几千公里,用于计算机与外设之间异步通信的双方需要两项约定:1.字符格式:一帧字符位数的规定:数据位,校验位,起始位和停止位。2.波特率(位/秒)和传送速率的规定:例:要求每秒传送120个字符,每帧为10位。解:
B=120×10=1200波特每位0.83ms
数据位传送输率=120×8=960位/秒(二)同步通信:
以一串字符为一个传送单位,字符间不加标识位,在一串字符开始用同步字符标识,硬件要求高,通讯双方须严格同步。二、串行通信的基本方式:(一)异步通信:以字符为传送单位用起始位和停止位标识每个字符的开始和结束字符,间隔不固定,只需字符传送时同步即可。异步通讯常用格式:一个字符帧D0D1D2D3D4D5D6D7停止位起始位三、串行接口功能:(1)发送器:并串数据格式转换,添加标识位和校验位,一帧发送结束,设置结束标志,申请中断。(2)接收器:串并数据格式转换,检查错误,去掉标识位,保存有效数据,设置接收结束标志,申请中断。(3)控制器:接收编程命令和控制参数,设置工作方式:同步/异步、字符格式、波特率、校验方式、数据位与同步时钟比例等。四、串行数据传送方向:1、单工通讯:数据单向传送。(1条数据线,单向)2、半双工通讯:数据可分时双向传送。(2条数据线,双向)3、全双工通讯:可同时进行发送和接收。(1条或2条数据线,双向)发送器接收器地线数据线发送接收器接收发送器地线数据线发送接收器接收发送器地线数据线五、异步串行通信的信号形式:1、远距离直接传输数字信号,信号会发生畸变,因此要把数字信号转变为模拟信号再进行传送。可利用光缆、专用通信电缆或电话线。方法:通常使用频率调制法(频带传送方式)。通常:“1”:1270Hz或2225Hz;“0”:1070Hz或2025Hz。2、因通信时(有干扰)信号要衰减,所以常采用RS232电平负逻辑,拉开“0”和“1”的电压档次,以免信息出错:RS232负逻辑(EIA电平):“0”:+3V—+25V;“1”:-3V—-25V。最大传输信息的长度为15米。TTL正逻辑:“0”:0—2.4V;“1”:3.6V—+5V;高阻:2.4V—3.6V。TTL电平直接传输距离一般不超过1.5米。RS232负逻辑:“0”:+5V—+15V;“1”:-5V—-15V。最大传输信息的长度为15米。RS-232C(电平转换芯片为MAX232)RS-422RS-4858-2 串行口及控制寄存器串行接口输入/输出引脚:TXD(P3.1)、RXD(P3.0)数据格式:按不同方式,一帧数据位数8/10/11发送/接收时,数据皆低位在前。一帧字符发送/接收结束,置位标志位(TI/RI),并申请串行中断。
中断控制:中断允许位ES、总允许EA;中断入口:0023H。D0D1D2D3D4D5D6D7停止位起始位D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D8停止位起始位D71个全双工串行接口,可同时进行发送和接收。8-2-1 MCS-51串行接口一、串行接口控制:1.数据缓冲器SBUF:发送SBUF和接收SBUF共用一个地址99H。 1)发送SBUF存放待发送的8位数据,写入SBUF将同时启动发送。发送指令:
MOV SBUF,A2)接收SBUF存放已接收成功的8位数据,供CPU读取。 读取串行口接收数据指令:
MOVA,SBUF2.节电控制寄存器PCON:SMOD(PCON.7):波特率加倍控制位。SMOD=1,波特率加倍;
SMOD=0,则不加倍。SM0、SM1:选择串行口4种工作方式。SM2:多机控制位,用于多机通讯。REN:允许接收控制位,REN=1,允许接收;REN=0,禁止接收。TB8:发送的第9位数据位,可用作校验位和地址/数据标识位。RB8:接收的第9位数据位或停止位。TI:发送中断标志,发送一帧结束,TI=1,必须软件清零;RI:接收中断标志,接收一帧结束,RI=1,必须软件清零。3.串行口控制/状态寄存器SCON(98H):请见P229!8-3串行通信工作方式(1)方式0:同步移位寄存器方式用于扩展并行I/O接口。1.一帧8位,无起始位和停止位。2.RXD:数据输入/输出端。TXD:同步脉冲输出端,每个脉冲对应一个数据位。3.波特率B=fosc/12 如:fosc=12MHz,B=1MHz,每位数据占1s。4.发送过程:写入SBUF,启动发送,一帧发送结束,TI=1。接收过程:REN=1且RI=0,启动接收,一帧接收完毕,RI=1。SM0、SM1选择四种工作方式。
发送时序写入SBUFRXD输出TXDTID0D1D2D3D4D5D6D7写REN=1RI=0RXD输入RI接收时序(a)(b)时序图:(2)方式1:8位数据异步通讯方式1.一帧10位:8位数据位,1个起始位(0),1个停止位(1)。2.RXD:接收数据端。TXD:发送数据端。3.波特率:用T1作为波特率发生器,
B=(2SMOD/32)×T1溢出率。4.发送:写入SBUF,同时启动发送,一帧发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且停止位为1(或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI=1;否则丢弃接收数据,不置位RI。当REN=1,CPU开始采样RXD引脚负跳变信号,若出现负跳变,才进入数据接收状态,先检测起始位,若第一位为0,继续接收其余位;否则,停止接收,重新采样负跳变。数据采样速率为波特率16倍频,在数据位中间,用第7、8、9个脉冲采样3次数据位,并3中取2保留采样值。写入SBUF采样(a)发送时序图TXD数据输出TID0D1D2D3D4D5D6D7停止位起始位RXD输入数据(b)接收时序图D0D1D2D3D4D5D6D7停止位起始位RI检测负跳变时序图:(3)
方式2和方式3:9位数据异步通讯方式1.一帧为11位:9位数据位,1个起始位(0),1个停止位(1)。 第9位数据位在TB8/RB8中,常用作校验位和多机通讯标识位。2.RXD:接收数据端,
TXD:发送数据端。3.波特率:方式2:B=(2SMOD/64)×fosc。 方式3:B=(2SMOD/32)×T1溢出率。4.发送:先装入TB8,写入SBUF并启动发送,发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且第9位为1(或SM2=0),将接收数据装入接收SBUF,第9位装入RB8,使RI=1;否则丢弃接收数据,不置位RI。(a)发送时序图写入SBUFTXD输出TIRXD输入(b)接收时序图RID0D1D2D3D4D5D6TB8停止位起始位D7D0D1D2D3D4D5D6RB8停止位起始位D7检测负跳变时序图:(4)计算找波特民率:方式0为固滚定波财特率岗:B=筑fo还sc坊/1县2方式2可选戒两种许波特冷率:B=这(2SM番OD/6缓4)骑×f厉os跪c方式1、3为可炒变波饱特率漆,用T1作波工特率兵发生饼器。B=便(2SM饱OD/3锹2)郑×T1溢出免率T1为方也式2的时隔间常执数:X约=慢28-扩t/轨T(请竟见P1蝇53)溢出邪时间碗:t=取(郑28-X凝)T舟=缸(村28-X揉)×烧12炭/清fo旨scT1溢出诉率=1踏/t辰=警fo津sc捐/滥[1浇2×越(2n-X戚)]波特婚率B=播(2SM稠OD/3宵2)伏×f站os讲c/菊[1底2×班(28-X截)]串行悬口方窝式1、3,根延据波叮特率银选择T1工作职方式组,计冰算时抽间常觉数。T1选方省式2:TH1=棕X炼=就28-口fo澡sc钥/1跌2×范2SM势OD/(惠32潜×B嚷)T1选方唉式1用于饼低波扮特率僻,需碰考虑T1重装乌时间锅常数豆时间悟。也可捐选工怠作方锁式3(请贷见P1灾56)。4种方晋式比洁较:方式波特率传送位数发送端接收端用途01/12fosc(固定不变)8(数据)RXDRXD接移位寄存器,扩充并口12SMOD/32T1溢出率10(起始位、8位数据位、停止位)TXDRXD单机通讯22SMOD/64fosc11(第9位为1:地址;为0:数据)TXDRXD多机通讯32SMOD/32T1溢出率11位(同方式2)TXDRXD多机通讯8-票4串行央口的糊应用串行破口初披始化脑编程独格式康:SI叠O:MO使V庆SC摧ON,#控制甜状态得字;写挎方式毯字且TI影=R搬I=哑0(毒MO涌V南PC府ON,#8筹0H粘);波特滑率加陈倍(拒MO先V简T北MO更D,#2勤0H窄);T1作波烤特率由发生拾器(水MO培V死T少H1,#X廊);选定幼波特背率(疼MO握V哀T警L1,#X挡)(世SE队TB宿TR姥1)(数SE体TB第EA掀);开串孕行口懂中断(厨SE偏TB巡寿ES没)发送替程序斥:1、查询轧方式亚:TR誓AM:MO房诚V体A,@R0;取数逝据MO丘V纯SB蜓UF,A;发送雨一个博字符WA膨IT:JB坚C终TI,NE遭XT;等待跳发送横结束SJ割MP坚W盐AI闯TNE床XT:CL嗓R接T悔IIN京C尘R0;准备唐下一思次发四送SJ背MP旷T改RA捆M2、中辫断方宵式:OR乘G塑0植02膝3H;串行请口中间断入诸口AJ冲MP乖S呢IN聋TMA既IN:…;初始插化编填程TR仍AM:MO程V袜A,@缝R0;取数唱据MO衔V乏S出BU品F,A;发送格第一牧个字锁符H:SJ总MP驼H;其它刺工作SI究NT:CL纪R菊T衬I;中断蹄服务然程序IN闷C柳R0MO去V竭A,@讯R0;取数浪据MO坏V父S差BU静F,A;发送盏下一苏个字逆符RE健TI先发桂送一牵个字失符,净等待TI嫩=1后再晃发送送下一壶个字音符。接收戚程序翁:1.查询引方式鼠:WA眉IT:JB论C承R黑I,NE期XT;查询隐等待SJ赛MP遮WA厅ITNE瓦XT:MO远V跌A,SB伟UF;读取唇接收幅数据MO兰V蝴@萝R0,A;保存毒数据CL堪R窄R捉IIN劲C访R0;准备京下一克次接各收SJ蝇MP纸WA刑IT2.中断剧方式精:OR聪G灿00术23属HAJ腰MP货R察IN肠TMA得IN:…;初始哀化编醉程H:SJ茄MP视H;其它咸任务RI漫NT:CL防R犹RI;清中丧断标眠志MO案V稠A,SB各UF;读取挣接收劳数据MO掉V沃@R0,A;保存必数据IN范C棋R0RE摩TIRE楼N=叠1、RI斤=0等待遮接收宫,当RI太=1,从SB愤UF读取巩数据姑。(一析)串贱行口方式0:串行筒口通阁过接渔口74锋LS有16加4实现钢:串幸行→并行禽的数武据转余换(显示北器接嗓口);通过狸接口74握LS蜂16衬5实现杰:并贵行→串行烛的数暗据转串换。用于胳接移铃位寄蚕存器岛扩充宴并口衣。程序择:MO央V蚊R7,#2际0;送络入20个字旨节MO至V呆R0,#2头0H;送首帐地址吊为20稻HSE救TB尊F扁0;置1,F0怠=1(设置始读入项字节赚奇偶币数标攻志)RC膀V0:CL下R战P1.赔0;P1.恨0=0(并行愁置入费数据钥)SE叫TB缺P1.现0;P1.惰0=1(允许遥串行锣移位果)RC碍V1:MO吃V稿SC个ON,#1谈0H;允许疯方式0接收JN掌B大RI,$;等待RI喉=1,顺序暂执行CL堪R脱RI;RI阅=0为下骂一帧臣数据外的接薄收准甩备MO黑V移A,SB械UF;取数MO嘴V临@R0,AIN填C奏R0CP认L交F0;取反攀,F0缓=0JB般F骄0,RC促V2;F0覆=1则转虽移,F0吉=0顺序霜执行DE膊C闷R7判是泥否接小收完辣偶数拣帧,因接收宿完则邀重新深并行侮置入SJ误MP贝R凯CV标1;否则忆再接匆收一允帧RC粱V2:DJ奇NZ款R7,RC缩慧V0;R7-1=写0?≠0跳(盏判是浮否已之读入递预定敲字节银数)……都….;对蛇读入桨数据世进行搬处理MA喊IN艳T:MO慌V弱SC竹ON,#8菠0H;串行携口初热始化MO务V盘PC成ON,#8希0H;波特眯率SE伞TB韵E僚ASE栽TB堵E磁S;开桨串行腥口中结断MO驻V对R0,#5挎0H;设腿数据仿指针MO势V欺R7,#1隙0H;数甚据长冤度LO绢OP:MO违V何A,@R0;取授一个拜字符MO甩V值C,P;加卫奇偶奋校验MO排V欠TB低8,CMO沃V击SB情UF,A;启动章一次核发送HE摘RE:SJ骄MP拜H兼ER旁E;CP怎U执行治其它钥任务(二银)异步读通讯达程序甚举例使:1.发送拼程序暗:将片纱内RA余M没50忘H起始润单元萍的16个数偶由串喇行口发送压。要求贪发送微波特霉率为毯系统迟时钟猜的32分频,暗并进隔行奇挺偶校乎验。OR仿G查0残02羡3H;串求行口旧中断过入口AJ阳MP嘱TR碌AN糠ITR义AN粉I:PU赤SH票A;保护蚊现场PU陕SH什PS勾WCL红R扬T惑I;清发激送结谨束标侄志DJ夕NZ京R7,NE收XT;是否艰发送吧完?CL条R甩E然S;发送勒完,株关闭勒串行洪口中牢断SJ泉MP受TE仪NDNE竞XT:IN善C应R0;未发赤送完片,修浙改指丙针MO潜V短A,@R0;取下奇一个困字符MO错V径C,P;加奇订偶校亚验MO洲V机T飘B8,CMO登V唯S更BU惊F,A;发送秩一个灾字符PO倍P废P祥SW;恢复警现场PO铺P握ATE它ND:RE佣TI蛮;中断疲返回2.接收陕程序香:RE港CS:MO战V丛SC拨ON,#5滑0H;串五行口跪方式1允许感接收MO区V仰TM袋OD,#2灭0H;T1方式2定时MO控V周TL状1,#0代F4雕H;写代入T1时间类常数MO岛V深TH敬1,#0浮F4尝H妖S穗ET捐B泊TR轨1逗;启动T1MO遥V命R0,#5屋0H;设数声据指蚂针MO架V丙R7,#1胞0H;接收身数据隐长度WA欲IT膝:圈J屑BC住R眯I,NE争XT;等待善串行丑口接仰收SJ生MP范WA乒ITNE洒XT勾:献MO新V责A,SB先UF;读取乡丰接收嗓字符MO剑V圣@R0,A;保存岭一个帮字符CL诉R般RIIN稳C曾R0;修改叉指针DJ付NZ贼R7,WA茶IT;全部唱字符伐接收农完?RE放T串行剂输入16个字术符,限存入屈片内RA佣M的50吓H起始赴单元,穴串行薯口波德特率患为24瞒00追(设晶捎振为11蛇.0丸59债2M静Hz验)。3.接收抖程序攀:RE谣CS:MO宰V股SC跃ON,#0岗D0串H;串爱行口狮方式3允许耐接收MO羽V悉TM多OD,#2击0H;T1方式2定时MO打V炸TL唉1,#0水F4漠H;写羊入T1时间斥常数MO贩V沸TH饲1,#0柱F4速H祸SE日TB垂T记R1馅;启动T1MO聚V和R0,#5抚0H;设数冒据指迈针MO墨V烤R7,#1朱0H;接收辟数据村长度WA熟IT镇:黑J咽BC节R向I,NE胡XT;等待锋串行皮口接海收SJ洁MP另WA扇ITNE贪XT惨:廊MO丹V歼A,SB川UF;取一志个接牢收字钢符JN摆B浆P,CO粗MP;奇偶慎校验JN外B男RB纤8,ER薪R;P≠税RB蜂8,数据墙出错SJ第MP牲RI翠GH班T;P=喷RB宏8,数据培正确CO眯MP专:邻J往B量RB狸8,ER矩RRI烘GH死T:事MO保V节@冻R0,A;保存张一个轮字符CL哥R栋RIIN猛C洽R0;修改成指针DJ弓NZ肤R7,WA侍IT;全部腥字符伯接收降完?CL回R老F0;F0棉=挖0,接收葵数据本全部寒正确RE瓦TE婆RR:SE购TB蝇F0;F0迫=承1,接收尿数据副出错RE老T串行殊输入16个字络符,消进行婆奇偶等校验诵。4.主从确分布你式微摸机系弯统:也叫集散兔控制话系统启:从浓机(存单片赞机)鞠作数飘据采过集或齐实时阀控制些,主机范(PC机)雅作数街据处叫理、构中央标管理卖等。应用宵:过菊程控宝制、旬仪器突仪表蜻、生俊产自脑动化伙和企弓业管历理等革方面倚。直接朴传送谈串行后通信摧接法PC机调工用的肺中断杠指令像为:IN男T长1忙4H①单机炮通信咬:②多机叉通信晶系统坏:PC机要昏对某并一指坚定了德地址厨编号惕的单紧片机殃通讯戒,就锈必须殊作好迅联络唱。①PC机处系于发驱送状局态,枪各单勿片机轮的串标行口田均处翼于接榆收状浴态并裕使其SM饥2=轻1,作好皮接收境地址蹦信息汽的准碍备。②PC机发策出要蓝通讯级的那拼台单方片机倘的地亡址编惩号,此然后咐发送胖通讯鹅数据验,发搂地址奥时必筒须使跨第9位信膀息为1,发糕数据甘时必禁须使碌第9位数钟据为0。③各单部片机芽收到PC机发慈来的剩地址沟信息钥后,影因此谈此时胶各SM律2=张1,所以甲将引抬起各吴单片谁机的杠中断桥。在浊中断术服务妨程序赛中,厉判断PC机发旁来的销地址漆是否蚀是自尿身的想地址斥编号盐,仅斧有符贯合地壤址编帽号的启那台境才使浩其S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学防性骚扰工作制度
- 巡察组健全工作制度
- 市直单位双拥工作制度
- 帮办代办工作制度范本
- 干部廉政谈话工作制度
- 平安中心户长工作制度
- 平安柳林建设工作制度
- 幼儿园宗教工作制度
- 廉洁文化工作制度汇编
- 开封检察院工作制度
- 血凝d-二聚体和fdp课件
- 服装厂班组级安全培训试题(附答案)
- 温湿度远程监控系统(ESP32 + MQTT + 小程序)
- 2025年面向电力行业的星地融合无线通信技术研究报告
- 湖北省襄阳市第四中学2025-2026学年高三上学期英语测试(六)(含答案含听力原文无音频)
- 毛尖茶的营销方案
- 注射用亚胺培南西司他丁钠氯化钠注射液-临床用药解读
- 新质生产力:个人发展的新机遇
- 2025年江西省高考思想政治试卷真题(含标准答案)
- 露天采矿汛期安全培训课件
- 咨询费居间协议合同范本
评论
0/150
提交评论