单片机电子教案第章2_第1页
单片机电子教案第章2_第2页
单片机电子教案第章2_第3页
单片机电子教案第章2_第4页
单片机电子教案第章2_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本章分为三节,主要介绍:6.280C51的串行口6.1计算机串行通信基础6.3单片机串行口应用举例6.1计算机串行通信基础

随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功能愈来愈显得重要。计算机通信是指计算机与外部设备或计算机与计算机之间的信息交换。通信有并行通信和串行通信两种方式。在多微机系统以及现代测控系统中信息的交换多采用串行通信方式。计算机通信是将计算机技术和通信技术的相结合,完成计算机与外部设备或计算机与计算机之间的信息交换。可以分为两大类:并行通信与串行通信。并行通信通常是将数据字节的各位用多条数据线同时进行传送。并行通信控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收方的各位同时接收存在困难。

串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送。串行通信的特点:传输线少,长距离传送时成本低,且可以利用电话网等现成的设备,但数据的传送控制比并行通信复杂。

6.1.1串行通信的基本概念

一、异步通信与同步通信1、异步通信

异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。

异步通信是以字符(构成的帧)为单位进行传输,字符与字符之间的间隙(时间间隔)是任意的,但每个字符中的各位是以固定的时间传送的,即字符之间是异步的(字符之间不一定有“位间隔”的整数倍的关系),但同一字符内的各位是同步的(各位之间的距离均为“位间隔”的整数倍)。异步通信的数据格式:异步通信的特点:不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字符要附加2~3位用于起止位,各帧之间还有间隔,因此传输效率不高。2、同步通信同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符间不留间隙,即保持位同步关系,也保持字符同步关系。发送方对接收方的同步可以通过两种方法实现。

外同步自同步面向字符的同步格式:此时,传送的数据和控制信息都必须由规定的字符集(如ASCII码)中的字符所组成。图中帧头为1个或2个同步字符SYN(ASCII码为16H)。SOH为序始字符(ASCII码为01H),表示标题的开始,标题中包含源地址、目标地址和路由指示等信息。STX为文始字符(ASCII码为02H),表示传送的数据块开始。数据块是传送的正文内容,由多个字符组成。数据块后面是组终字符ETB(ASCII码为17H)或文终字符ETX(ASCII码为03H)。然后是校验码。典型的面向字符的同步规程如IBM的二进制同步规程BSC。

面向位的同步格式:此时,将数据块看作数据流,并用序列01111110作为开始和结束标志。为了避免在数据流中出现序列01111110时引起的混乱,发送方总是在其发送的数据流中每出现5个连续的1就插入一个附加的0;接收方则每检测到5个连续的1并且其后有一个0时,就删除该0。

典型的面向位的同步协议如ISO的高级数据链路控制规程HDLC和IBM的同步数据链路控制规程SDLC。同步通信的特点是以特定的位组合“01111110”作为帧的开始和结束标志,所传输的一帧数据可以是任意位。所以传输的效率较高,但实现的硬件设备比异步通信复杂。

二、串行通信的传输方向1、单工单工是指数据传输仅能沿一个方向,不能实现反向传输。2、半双工半双工是指数据传输可以沿两个方向,但需要分时进行。3、全双工全双工是指数据可以同时进行双向传输。

单工半双工全双工三、信号的调制与解调

利用调制器(Modulator)把数字信号转换成模拟信号,然后送到通信线路上去,再由解调器(Demodulator)把从通信线路上收到的模拟信号转换成数字信号。由于通信是双向的,调制器和解调器合并在一个装置中,这就是调制解调器MODEM。四、串行通信的错误校验

1、奇偶校验在发送数据时,数据位尾随的1位为奇偶校验位(1或0)。奇校验时,数据中“1”的个数与校验位“1”的个数之和应为奇数;偶校验时,数据中“1”的个数与校验位“1”的个数之和应为偶数。接收字符时,对“1”的个数进行校验,若发现不一致,则说明传输数据过程中出现了差错。3、循环冗余校验这种校验是通过某种数学运算实现有效信息与校验位之间的循环校验,常用于对磁盘信息的传输、存储区的完整性校验等。这种校验方法纠错能力强,广泛应用于同步通信中。2、代码和校验代码和校验是发送方将所发数据块求和(或各字节异或),产生一个字节的校验字符(校验和)附加到数据块末尾。接收方接收数据同时对数据块(除校验字节外)求和(或各字节异或),将所得的结果与发送方的“校验和”进行比较,相符则无差错,否则即认为传送过程中出现了差错。五、传输速率与传输距离

1、传输速率比特率是每秒钟传输二进制代码的位数,单位是:位/秒(bps)。如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位、1个停止位、8个数据位),这时的比特率为:10位×240个/秒=2400bps波特率表示每秒钟调制信号变化的次数,单位是:波特(Baud)。波特率和比特率不总是相同的,对于将数字信号1或0直接用两种不同电压表示的所谓基带传输,比特率和波特率是相同的。所以,我们也经常用波特率表示数据的传输速率。2、传输距离与传输速率的关系串行接口或终端直接传送串行信息位流的最大距离与传输速率及传输线的电气特性有关。当传输线使用每0.3m(约1英尺)有50PF电容的非平衡屏蔽双绞线时,传输距离随传输速率的增加而减小。当比特率超过1000bps时,最大传输距离迅速下降,如9600bps时最大距离下降到只有76m(约250英尺)。6.1.2串行通信接口标准

一、RS-232C接口RS-232C是EIA(美国电子工业协会)1969年修订RS-232C标准。RS-232C定义了数据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。1、机械特性RS-232C接口规定使用25针连接器,连接器的尺寸及每个插针的排列位置都有明确的定义。(阳头)2、功能特性4、过程特性过程特性规定了信号之间的时序关系,以便正确地接收和发送数据

。远程通信连接近程通信连接5、RS-232C电平与TTL电平转换驱动电路6、采妄用RS混-23片2C接希口存在自的问题1、传输距摇离短,悄传输速李率低RS-亭232要C总线扒标准受邮电容允怒许值的梁约束,顿使用时范传输距俘离一般浙不要超串过15斜米(线湖路条件辽好时也膨不超过黄几十米订)。最饮高传送依速率为溜20K参bps黎。2、有电平紫偏移RS-寄232示C总线蝇标准要缎求收发肃双方共冷地。通宾信距离止较大时殃,收发皱双方的昂地电位冒差别较蹦大,在父信号地仅上将有若比较大烧的地电完流并产意生压降跃。3、抗干扰赚能力差RS-治232融C在电括平转换秀时采用堤单端输债入输出蹈,在传币输过程证中当干巨扰和噪史声混在决正常的虚信号中粗。为了烦提高信怪噪比,茶RS-卷232监C总线星标准不令得不采牺用比较绣大的电谊压摆幅扭。二、RS-4额22A接场口RS-初422框A输出驱动湖器为双端己平衡驱动顺器。如果其恐中一条线绩为逻辑“奇1”状态炉,另一条游线就为逻窗辑“0”贯,比采用逮单端不平桌衡驱动对盗电压的放计大倍数大悲一倍。差分电落路能从地藏线干扰气中拾取盘有效信环号,差疮分接收时器可以磨分辨2纷00m烫V以上闹电位差丈。若传观输过程线中混入事了干扰奏和噪声吨,由于躬差分放宇大器的颤作用,侍可使干漫扰和噪耕声相互触抵消。骗因此可适以避免携或大大畜减弱地丑线干扰惕和电磁也干扰的世影响。RS-4饥22A传监输速率(坦90Kb某ps)时缠,传输距执离可达1决200米任。三、RS-4虽85接口RS-4钢85是R逃S-42维2A的变厚型:RS默-422锣A用于全态双工,而烛RS-4筛85则用呼于半双工捐。RS-况485是近一种多发送器标准,眨在通信鹊线路上原最多可侍以使用蛋32惩对差分贼驱动器耕/接收捧器。如词果在一急个网络彩中连接突的设备伤超过3先2个,塌还可以孟使用中亚继器。RS-4场85的信尊号传输采失用两线间勾的电压来题表示逻辑酬1和逻辑验0。由于四发送方需闷要两根传捆输线,接收方迹也需要两火根传输线拼。传输线窜采用差动筝信道,所能以它的干拖扰抑制性顾极好,又坦因为它的清阻抗低,锁无接地问进题,所以传输距溪离可达该120渡0米,传输速敏率可达1贸Mbps私。RS-4其85是一忍点对多点剃的通信接碑口,一般泽采用双绞线的结构隶。普通旬的PC查机一般泉不带R饺S48票5接口茶,因此菊要使用际RS-置232桐C/R来S-4执85转采换器。歇对于单怪片机可完以通过妈芯片M饮AX4秆85来纳完成T反TL/弄RS-苦485敢的电平虏转换。鹅在计算烫机和单清片机组浸成的R烂S-4暂85通岗信系统槽中,下兄位机由衰单片机大系统组烟成,上闷位机为旨普通的郊PC机华,负责误监视下珠位机的对运行状贸态,并茂对其状蹄态信息朝进行集颂中处理巩,以图脑文方式炕显示下丛位机的霉工作状绿态以及参工业现遗场被控薯设备的衔工作状挖况。系俘统中各铅节点(被包括上照位机)膏的识别暴是通过聪设置不鞠同的站银地址来碎实现的盒。6.280C凯51的凑串行口有两个物掌理上独立叼的接收、拉发送缓冲究器SBU泊F,它们帮占用同一疾地址99遍H;接锻收器是双房诚缓冲结构托;发送御缓冲器,塑因为发送族时CPU岭是主动的苗,不会产哭生重叠错步误。6.2报.180C5顽1串行口暑的结构SCON稳是一个芬特殊功能甲寄存器,卧用以设定封串行口的苹工作方式妈、接收/牺发送控制患以及设置烫状态标志愁:6.2.格280C朝51串堪行口的机控制寄磁存器SM0和筹SM1为结工作方式拜选择位,夫可选择四摄种工作方超式:●SM2跑,多机债通信控葵制位,主要概用于方子式2和锤方式3肢。当接收机稳的SM恋2=1都时可以圾利用收舰到的R岔B8来惹控制是柿否激活设RI(RB8光=0时不伸激活RI抓,收到的弱信息丢弃杨;RB8如=1时收础到的数据材进入SB难UF,并覆激活RI怨,进而在财中断服务委中将数据佳从SBU详F读走)吴。当SM2亩=0时,役不论收到巡寿的RB8舒为0和1榨,均可以效使收到的核数据进入定SBUF扣,并激活驴RI(即此时员RB8不棍具有控制爪RI激活豆的功能)螺。通过控血制SM2诵,可以实鬼现多机通哨信。在方式0敌时,SM捉2必须是稀0。在方僚式1时,猴若SM2竞=1,则仿只有接收李到有效停车止位时,孝RI才置悟1。●REN,居允许串行尖接收位。由软满件置R柴EN=首1,则锅启动串惜行口接递收数据写;若软香件置R察EN=丝式0,则刮禁止接印收。●TB8,脂在方式2窜或方式3应中,是发香送数据的昌第九位,可以用烟软件规定貌其作用。掏可以用作亦数据的奇涛偶校验位柳,或在多舍机通信中僵,作为地百址帧/数宫据帧的标多志位。在方式牲0和方征式1中苹,该位厅未用。●RB8,篇在方式2给或方式3娱中,是接江收到数据防的第九位,作为半奇偶校押验位或患地址帧辅/数据沿帧的标此志位。仪在方式牛1时,怜若SM托2=0悔,则R壳B8是伸接收到命的停止偶位。●TI,发常送中断标衣志位。在方式兴0时,当线串行发送茄第8位数换据结束时虽,或在其阵它方式,甩串行发送鸣停止位的期开始时,糖由内部硬镜件使TI弯置1,向恰CPU发鞠中断申请亏。在中断贺服务程序晌中,必须苍用软件将士其清0,绢取消此中觉断申请。●RI,接志收中断标盲志位。在方判式0时便,当串观行接收水第8位姜数据结赖束时,泉或在其盼它方式哲,串行镰接收停包止位的渣中间时薪,由内默部硬件气使RI点置1,晨向CP找U发中赌断申请赛。也必攻须在中秋断服务莫程序中滥,用软溜件将其膛清0,没取消此沃中断申莫请。PCO倘N中只大有一位夏SMO觉D与串斯行口工呀作有关:SMO雀D(P流CON霉.7)序波想特率倍誉增位。外在串行谢口方式酬1、方豪式2、随方式3适时,波阵特率与丹SMO毅D有关继,当S制MOD趣=1时茎,波特稼率提高陪一倍。螺复位时欲,SM煤OD=散0。6.2伐.380C5障1串行口色的工作方住式一、方相式0方式0屋时,串弟行口为垄同步移储位寄存怒器的输亡入输出闷方式。脉主要用侧于扩展有并行输美入或输艰出口。钟数据由小RXD翅(P3斜.0)慨引脚输哗入或输刻出,同毙步移位洒脉冲由测TXD鱼(P3且.1)兆引脚输姿出。发蹈送和接散收均为乳8位数糟据,低杠位在先湖,高位欢在后。痰波特率腹固定为寄fos抵c/1露2。1、方析式0输余出2、方鸣式0输周入方式0接领收和发送邀电路二、方亿式1方式1是盆10位数恭据的异步奇通信口。察TXD为趟数据发送典引脚,R们XD为数它据接收引喇脚,传送贿一帧数据烂的格式如寸图所示。寄其中1位阶起始位,天8位数据扮位,1位号停止位。1、方坡式1输除出2、方式擦1输入用软件秤置RE夺N为1录时,接户收器以妹所选择瓶波特率讨的16谋倍速率论采样R爸XD引照脚电平旅,检测奴到RX视D引脚铜输入电尊平发生附负跳变梦时,则才说明起症始位有词效,将箭其移入型输入移通位寄存碎器,并看开始接光收这一竿帧信息勤的其余醒位。接类收过程龟中,数共据从输龟入移位明寄存器灰右边移予入,起鞋始位移圣至输入验移位寄砖存器最缠左边时从,控制执电路进君行最后倍一次移栽位。当悔RI=探0,且经SM2恳=0(钞或接收咸到的停棋止位为诱1)时母,将接状收到的某9位数烂据的前伟8位数疤据装入温接收S净BUF计,第9者位(停舞止位)炼进入R绍B8,暴并置R幅I=1棚,向C问PU请剂求中断爸。三、方式曲2和方式决3方式2蹲或方式锤3时为封11位相数据的翁异步通缴信口。挥TXD哄为数据闯发送引释脚,R肉XD为斗数据接及收引脚。方式2裕和方式捕3时起离始位1攻位,数馒据9位策(含1肆位附加悄的第9略位,发嘉送时为狼SCO妹N中的中TB8董,接收克时为R跌B8)备,停止周位1位箱,一帧珠数据为能11位锣。方式少2的波盲特率固即定为晶恼振频率永的1/璃64或辨1/3桂2,方怜式3的最波特率闲由定时仁器T1看的溢出班率决定欢。1、方式办2和方式腰3输出发送开始猜时,先把冷起始位0窃输出到T裙XD引脚恒,然后发匙送移位寄叫存器的输桌出位(D廉0)到T跪XD引脚米。每一个宪移位脉冲未都使输出垫移位寄存尘器的各位肢右移一位妖,并由T适XD引脚渔输出。第一次移老位时,停使止位“1塞”移入输环出移位寄呈存器的第蕉9位上舒,以后每隶次移位,胡左边都移袜入0。当裁停止位移腹至输出位见时,左边御其余位全盒为0,检贤测电路检彼测到这一渗条件时,索使控制电谈路进行最绝后一次移钟位,并置环TI=1继,向CP租U请求中年断。2、方式继2和方式弄3输入接收时若,数据漠从右边悔移入输貌入移位臣寄存器愉,在起哄始位0尽移到最遵左边时挡,控制疑电路进户行最后想一次移攀位。当扯RI=条0,且蜻SM2父=0(怜或接收巾到的第轿9位数汗据为1致)时,长接收到抗的数据工装入接换收缓冲侵器SB茄UF和管RB8斜(接收俱数据的竞第9位愉),置蜘RI=抢1,向煮CPU淘请求中摸断。如房诚果条件仆不满足尺,则数态据丢失拔,且不卫置位R衰I,继役续搜索奸RXD资引脚的坝负跳变压。四、波特继率的计算在串行印通信中末,收发糠双方对雕发送或喉接收数益据的速议率要有活约定。杏通过软固件可对凤单片机望串行口扮编程为借四种工朵作方式乱,其中漆方式0层和方式唯2的波伏特率是贝固定的额,而方锯式1和受方式3蔑的波特君率是可躬变的,欢由定时手器T1耽的溢出张率来决潜定。串行口的决四种工作漆方式对应三种波泥特率。由于遥输入的穷移位时肤钟的来干源不同错,所以啦,各种智方式的惜波特率道计算公氏式也不途相同。方式0蒜的波特棚率=宪f爪osc绢/12方式2的录波特率镇=(2SMOD/64)食·fo窗sc方式1必的波特博率=帝(2SMOD/32义)·(江T1溢寄出率)方式3的来波特率职=(2SMOD/32)驾·(T1创溢出率)当T1作悉为波特率痒发生器时雨,最典型判的用法是惠使T1工碌作在自动叮再装入的桑8位定时齐器方式(失即方式2高,且TC商ON的T住R1=1部,以启动羞定时器)治。这时溢棚出率取决舱于TH1才中的计数衡值。T1溢损出率=陕fos讽c/{留12×[锋256坦-(TH谦1)]}在单片机告的应用中券,常用的使晶振频率拖为:12海MHz和撒11.0熄592M稻Hz。所疯以,选用参的波特率险也相对固画定。常用赤的串行口悠波特率以栗及各参数毒的关系如碗表所示。串行口工证作之前,套应对其进晒行初始化每,主要是丘设置产生复波特率的榨定时器1绍、串行口斤控制和中毙断控制。渡具体步骤亏如下:确定T1的工糊作方式(编程T阅MOD寄况存器);计算T1的初殊值,装载T残H1、T究L1;启动T1(编程T愉CON中辜的TR1殊位);确定串行口傍控制(编程S知CON寄永存器);串行口魄在中断岁方式工邀作时,刺要进行己中断设惜置(编瓣程IE、去IP寄存器)街。6.3伪单片机跨串行口屋应用举庸例在计算机住分布式测嫩控系统中常,经常要档利用串行骄通信方式倚进行数据虫传输。8狡0C51糟单片机的源串行口为串计算机间道的通信提膝供了极为雹便利的条损件。利用友单片机的觉串行口还标可以方便督地扩展键贿盘和显示陪器,对于况简单的应野用非常便次利。这里险仅介绍单圈片机串行淹口在通信萝方面的应真用,关于丹键盘和显设示器的扩否展将在下惕一章介绍朋。6.3.升1单片机把与单片摧机的通饲信一、点容对点的耻通信1、硬僻件连接二、应用徒程序设1号港机是发丧送方,逝2号机爆是接收醋方。当1号机发送时,先发浪送一个叮“E1创”联络亮信号,舱2号机言收到后虽回答一峡个“E竹2”应层答信号是,表示担同意接殖收。当1号机收循到应答信鞋号“E2偶”后,开始娃发送数据妇,每发送胁一个数据稿字节都要偶计算“校丹验和”,毙假定数据辰块长度为廊16个字汗节,起始务地址为4抢0H,一凯个数据块锣发送完毕驻后立即发园送“校验搏和”。2号机柴接收数泥据并转存哥到数据笋缓冲区眠,起始伴地址也卷为40莫H,每庸接收到奖一个数籍据字节怖便计算澡一次“倦校验和叹”,当觉收到一勾个数据或块后,异再接收唤1号机利发来的塔“校验眨和”,袖并将它惭与2号帮机求出湾的校验衣和进行钓比较。词若两者毅相等,独说明接虫收正确乏,2号难机回答箱00H张;若两教者不相衡等,说盏明接收矛不正确码,2号潮机回答畜0FF奔H,请递求重发尾。1号机接花到00H龙后结束发端送。若收替到的答小复非零奋,则重孙新发送枣数据一薪次。双芬方约定书采用串行口说方式1进行通恢信,一帧信息碍为10位粮,其中有虹1个起始筐位、8个椒数据位和番一个停止罗位;波特详率为24内00波特者,T1工象作在定时蚊器方式2致,振荡频酬率选用1胞1.05圆92MH否Z,查表填可得TH诵1=TL库1=0F渠4H,P背CON寄哗存器的S胁MOD位哥为0。发送程序茧清单如下睁:ASTA复RT:C咐LR土EAMOV转TMO指D,#2词0H同;妄定时器1待置为方式锡2MOV雄T售H1,坚#0F际4H叛;知装载定泥时器初腿值,波治特率2挣400MOV愿TL1腐,#0F俱4HMOV瘦P霸CON后,#0浇0HSET厦B茅TR1渗;启动唉定时器MOV绝S所CON狮,#5在0H甚;设失定串口剧方式1脖,且准签备接收硬应答信紫号ALOO高P1:M竖OV姻SBUF缸,#0E止1H史;发星联络信号JNB池T也I,$三;等待芒一帧发软送完毕CLR阶T协I象;允许克再发送JNB园RI,丢$崖;闹等待2号党机的应答嫌信号CLR羡R拖I凑;掠允许再罪接收MOV膏A私,SB消UF亮;2号条机应答牧后,读纸至AXRL兽A,#漆0E2H海;判甚断2号机燥是否准备舍完毕JNZ竞A匠LOO屑P1识;2号机机未准愿备好,短继续联去络ALO拢OP2晨:MO死V犯R0,中#40毁H淋;2号萍机准备套好,设巴定数据河块地址免指针初工值MOV次R兴7,#京10H煤;设定政数据块甲长度初否值MOV碰R网6,#炼00H毙;清校破验和单位元ALO虏OP3干:MO彻V摸SBU窝F,@您R0液;桐发送一而个数据嚼字节MOV伸A,R娃6ADD己A滥,@R火0鸭;碰求校验倦和MOV叙R6,欠A缝;保存颤校验和INC嫩R0JNB终TI,男$CLR扶T畜IDJNZ顷R7茎,ALO御OP3浸;点整个数据墨块是否发校送完毕MOV聋S齿BUF吓,R6刺;发补送校验蒙和JNB耳T柴I,$CLR坦TIJNB图R毫I,$殃;等待扑2号机奴的应答裳信号CLR滴RIMOV周A辛,SB嗽UF案;2谈号机应兴答,读策至AJNZ违AL蓬OOP2笼;2号意机应答“伯错误”,伯转重新发系送RET亮;2译号机应增答“正逮确”,裁返回接收程序割清单如下耻:BST滨ART痛:CL未R鄙EAMOV阳T准MOD赛,#2和0HMOV舌T移H1,忆#0F劲4HMOV译T乒L1,锤#0F拔4HMOV浪P友CON采,#0忙0HSET村B幸TR1MOV凭S衣CON岸,#5泉0H仗;设贩定串口项方式1扬,且准茄备接收BLOO统P1:J抱NB山RI,$除;等待1劈燕号机的联抓络信号CLR希R别IMOV令A嘉,SB双UF册;收支到1号仙机信号XRL忧A横,#0裁E1H超;判是需否为1魂号机联材络信号JNZ妻BL毅OOP1倡;不棍是1号机括联络信号盘,再等待MOV到S液BUF肢,#0自E2H沸;温是1号对机联络耗信号,阀发应答帆信号JNB符TI仓,$CLR泥TIMOV煌R叮0,#狼40H始;宵设定数榆据块地必址指针血初值MOV舌R7,弄#10H蒜;设定数行据块长度柜初值MOV肠R姐6,#统00H曲;瓶清校验电和单元BLO印OP2勉:JN罗B倚RI,倦$CLR鼓RIMOV播A森,SB斤UFMOV句@攻R0,贝A维;旬接收数客据转储INC届R0ADD柜A,R亮6劳;求校验造和MOV牵R柿6,ADJNZ诸R7凑,BLO聋OP2纳;撞判数据块位是否接收替完毕JNB绩RI,杜$配;完裹毕,接收道1号机发床来的校验陶和CLR老RIMOV径A尽,SB桶UFXRL畅A,R叹6习;比较咸校验和JZ听END乞1红;校顾验和相等遥,跳至发蚕正确标志MOV点S国BUF航,#0巴FFH杆;校严验和不测相等,赛发错误带标志JNB损T思I,$拿;转痛重新接筒收CLR炭T蝴IEND1君:MOV催SB奸UF,#拿00HRET二、多塑机通信1、硬侍件连接单片机矮构成的的多机系防统常采挠用总线枕型主从领式结构浇。所谓龙主从式动,即在赶数个单翁片机中饥,有一芽个是主仆机,其样余的是饱从机,旦从机要睛服从主颠机的调未度、支派配。8列0C3题1单片述机的串往行口方票式2和亦方式3兼适于这制种主从告式的通冰信结构扯。当然木采用不锈同的通树信标准仔时,还腔需进行甚相应的袖电平转暴换,有鸭时还要摇对信号凝进行光勒电隔离雪。在实伯际的多芽机应用赌系统中游,常采弦用RS丈-48旬5串行老标准总惧线进行提数据传医输。2、通信跪协议所有从机青的SM2自位置1,辽处于接收鹊地址帧状息态。主机发送凯一地址帧洒,其中8模位是地址衔,第9位妙为地址/扣数据的区晓分标志,吵该位置1敢表示该帧凡为地址帧逝。所有从讯机收到构地址帧皇后,都作将接收旦的地址纷与本机敢的地址鞋比较。戚对于地袋址相符端的从机负,使自炸己的S个M2位严置0(魔以接收悟主机随京后发来春的数据巩帧),隙并把本星站地址赏发回主服机作为加应答;望对于地挣址不符增的从机乱,仍保那持SM定2=1砌,对主花机随后短发来的遍数据帧君不予理丑睬。从机发飘送数据丧结束后用,要发埋送一帧乐校验和奶,并置记第9位倘(TB牺8)为鸽1,作韵为从机许数据传涨送结束脑的标志颤。主机接抚收数据下时先判丸断数据恨接收标邮志(R耽B8)造,若R浇B8=牧1,表野示数据役传送结烛束,并抵比较此膏帧校验土和,若坊正确则爆回送正腰确信号田00H快,此信胖号命令耳该从机摘复位(矮即重新秘等待地吼址帧)陶;若校辩验和出按错,则爱发送0壁FFH杯,命令泡该从机加重发数劈燕据。若盈接收帧梁的RB毅8=0亏,则存浮数据到匠缓冲区希,并准凝备接收鹿下帧信茶息。主机收到皆从机应答皆地址后,里确认地址竿是否相符农,如果地描址不符,连发复位信远号(数据谷帧中TB居8=1)默;如果地月址相符,明则清TB耽8,开始渣发送数据棕。从机收刷到复位禾命令后南回到监贝听地址地状态(缺SM2细=1)馆。否则汪开始接奥收数据帜和命令岔。3、应靠用程序主机发送屑的地址联环络信号为纷:00H沃,01H创,02H殿,…数…(即从即机设备地炮址),地虑址FFH姜为命令各而从机复位专,即恢复妥SM2=街1。主机命矛令编码测为:0扶1H,牺主机命割令从机哑接收数件据;0租2H,奴主机命战令从机候发送数稳据。其危它都按孤02H泊对待。RRDY更=1:表葬示从机准冲备好接收复。TRD交Y=1锦:表示桶从机准陆备好发阴送。ERR路=1:著表示指从机接终收的命敏令是非劝法的。程序分为翠主机程序伞和从机程苍序。约定概一次传递待数据为1社6个字节闷,以01滤H地址的骨从机为例。主机程蒸序清单润:设从机灵地址号星存于4梯0H单技元,命册令存于宾41H阔单元。MAIN绍:MOV爹TM努OD,#梳20H他;效T1方式聪2MOV扑T投H1,犯#0F苏DH暖;初始乒化波特螺率96烟00MOV傲T刻L1,林#0F宝DHMOV惑P姓CON烛,#0法0HSETB泥TR愉1MOV脚S即CON滴,#0葛F0H书;串仇口方式楚3,多畅机,准埋备接收络应答LOOP纽奉1:SE定TB手TB8MOV焰SBU散F,40古H棒;愈发送预通宇信从机地院址JNB基TI,苍$CLR脱TIJNB块R抬I,$牺;等敲待从机会对联络罚应答CLR索RIMOV扯A,S侄BUF众;接收应剖答,读至敞AXRL著A,4谦0H汗;判应学答的地六址是否王正确JZ洽A医D_OKAD_E扩RR:M重OV菜SBUF榨,#0F天FH疗;叼应答错误顽,发命令榴FFHJNB冒T箭I,$CLR饱T搂ISJM转P身LOO步P1减;返回阔重新发顶送联络剂信号AD_O筹K:CL纵RT脏B8震;应猎答正确MOV摄S杨BUF刚,41改H霸;发送漆命令字JNB像T步I,$CLR熄TIJNB计RI,郊$牧;等胁待从机对性命令应答CLR堆R床IMOV养A,S疗BUF杰;接加收应答,售读至AXRL脑A薯,#8脖0H赠;判断匹应答是警否正确JNZ能C哑O_O切KSET座B余TB8SJMP贡AD能_ERR姿;惑错误处理CO_O首K:MO惹VA录,SBU类F怠;应报答正确,枝判是发送研还是接收脚命令XRL秃A岁,#0订1HJZ馒SE棕_DAT糕A管;从贷机准备好帮接收,可疾以发送MOV省A,S字BUFXRL炮A慢,#0画2HJZ此RE_洞DAT妄A苍;封从机准辣备好发施送,可宪以接收LJMP绢SE死_DAT宫ARE_D锣ATA:菜MOV翼R6,僚#00H拍;清校验巴和接收1妨6个字节携数据MOV裁R0,害#30HMOV费R慢7,#焦10HLOO畅P2:沉JNB草R眠I,$CLR摔R预IMOV北A够,SB承UFMOV疼@竿R0,制AINC昏R统0ADD稼A奇,R6MOV撇R栗6,ADJN懂Z繁R7,筝LOO跑P2JNB轿RI,纠$CLR册R骄IMOV升A,S疼BUF腐;接收辉校验和并暑判断XRL羽A夸,R6JZ片X栽YOK时;校庄验正确MOV葵SBU妈F,#0郊FFH女;校验错链误JNB彼TI,小$CLR皂T哲ILJM糖P锡RE_停DAT亏AXYO钥K:旅MOV饿S宗BUF园,#0住0H布;对校验和钻正确,械发00扒HJNB功TI,蜓$CLR虽TISET特B躬TB8锄;置再地址标小志LJMP腰RE封TENDSE_D锣ATA:挺MOV军R6,阔#00H卸;发盐送16个佳字节数据MOV聚R0,毁#30HMOV久R7,塞#10HLOO尖P3姜:MO颈V某A,@最R0MOV枣S炊BUF尽,AJNB货T禁I,$CLR火T贱IINC怠R0ADD跑A舱,R6MOV糟R逃6,ADJNZ亡R7授,LOO疤P3MOV吹A蛾,R6MOV鉴S慰BUF欺,A奴;发奴校验和JNB辱TI,酸$CLR岛TIJNB迈RI,捆$CLR禾RIMOV狼A,S穗BUFXRL隐A,#气00HJZ笼RET记_EN周D臭;匀从机接压收正确SJM危P杰SE_雕DAT奔A泻;晓从机接障收不正绝确,重枯新发送RET颂_EN干D:R嘴ET从机程序墓清单:设本机蜡号存于盐40H得单元,坊41H秘单元存溪放“发卡送”命亲令,4捷2H单富元存放充“接收厚”命令保。MAIN榆:MOV杆TM驳OD,#邻20H晕;初始化视串行口MOV议TH1隙,#0F甜DHMOV惭TL1恳,#0F款DHMOV结PCO插N,#0葱0HSET丑B报TR1MOV非SCO构N,#0罗F0HLOOP倦1:SE徐TB贵EA告;开中悄断SET朽B惜ESSET嫁B祖RRD月Y柴;发送鄙与接收山准备就幼绪SET货B眠TRD圆YSJM饭P艺LOO悼P1SER翼VE:列PUS输H拉PSW逮;捧中断服凭务程序PUS每H烘ACCCLR瘦ESCLR冒RIMOV碧A,S踏BUFXRL惩A屯,40守H荣;判床断是否羽本机地酱址JZ担SER誉_OKLJMP嘴EN幻玉DI屋;非本伶机地址,浸继续监听SER_巡寿OK:C斩LR荡SM2烫;疼是本机地胆址,取消敞监听状态MOV疮SBU夕F,40撒H餐;本鸣机地址发挎回JNB耽T扬I,$CLR苏T游IJNB寺R设I,$CLR估R哑IJB谨RB像8,E掩NDI新I摘;是复抄位命令惑,恢复村监听MOV夫A地,SB粮UF推;不阿是复位遣命令,凝判是“拉发送”播还是“奏接收”XRL予A,4年1HJZ舞SE艳RIS麻E咸;散收到“和发送”参命令,程发送处略理MOV妄A,S作BUFXRL扔A,4赢2HJZ栋SERI炼RE窝;收到厅“接收”甜命令,接驱收处理SJM婚P市FFM张L城;非法惩命令,沫转非法秆处理SERI炕SE:J述BT已RDY,勒SEND享;从机动发送是否冤准备好MOV亿SBU述F,#0但0HSJM伤P倾WAI掀T01SEND愿:MOV铺SB透UF,#套02H茎;守返回“发妄送准备好吨”WAI偿T01赤:JN食B葵TI肾,$CLR绒TIJNB巾RI风,$CLR院RIJB身RB佛8,咏END仗II白;主品机接收斗是否准挺备就绪LCA跌LL净SE粗_DA遮TA驶;发送蒸数据LJM小P捉ENDFFM购L:M革OV晃SB平UF,摩#80苏H哥;发嫂非法命塞令,恢哭复监听JNB象TI,谅$CLR岛TILJMP骂EN般DIISER虫IRE欧:JB坦R炕RDY偏,R拾ECE累;从呜机接收冻是否准层备好MOV朋SBU刑F,#0于0HSJMP忽WA课IT02REC替E:M博OV袄SB管UF,姑#01森H鞋;返回态“接收区准备好踩”WEI兽T02伐:JN纪B缩慧TI,纵$CLR澡T卵IJNB赴RI,男$CLR窗RIJB市RB8,朵ENDI鸽I及;主机发妄送是否就俘绪LCA止LL肤RE贴_DA缎TA余;肌接收数晓据LJMP雾ENDENDI况I:SE泼TB前SM挎2ENDI兵:SET设B密ESEND殿:PO扯P滔ACCPOP畏P枕SWRET旁ISE_淡DAT用A:C盼LR页TR论DY鼻;发送塞数据块真子程序MOV证R6,阴#00HMOV艰R樱0,#宏30HMOV哈R左7,#拣10HLOOP奏2:MO京VA,土@R0MOV连S重BUF底,AJNB袄TI,顾$CLR筋TIINC温R优0ADD判A,R坝6MOV叹R6,坏ADJNZ催R7沫,LOO析P2脉;数据块偶发送完毕常?MOV陵A,R追6MOV竖SBU桥F,AJNB披T严I,$采;发啄送校验浓和CLR汉TIJNB恶R踢I,$CLR赢RIMOV佳A考,SB掉UFXRL诉A,#慰00H蚁;判发送蜓是否正确JZ够SEN逝D_O气KSJMP溉SE剪_DAT泄A筛;发送弟错误,重霞发SEN六D_O眯K:S规ETB烈S辟M2君;乌发送正梳确,继疮续监听SETB合ESRETRE_D根ATA:券CLR俭RRD航Y高;接吹收数据块挨子程序MOV金R思6,#羊00HMOV圈R0,骂#30HMOV末R7,蓝#10HLOOP斤3:JN回BR虾I,$CLR迁RIMOV跪A冬,SB惰UFMOV焰@涂R0,践AINC估R0ADD颈A,R杨6MOV久R阅6,ADJNZ地R7哥,LOO贩P3茎;接收数速据块完毕项?JNB遭RI,采$舒;接亿收校验和CLR腿R凝IMOV屑A,S度BUFXRL腊A,R妹6兄;判断柏校验和是替否正确JZ横R登ECE克_OKMOV尽S汤BUF贞,#0鹅FFH颗;缝校验和可错误,演发FF随HJNB铜T齿I,$CLR洽T摇ILJM位P凑RE_米DAT刚A望;重杆新接收RECE姜_OK:烧MOV凭A,#走00H轰;校验贱和正确,新发00HMOV渴SBU宣F,AJNB梁T愁I,$CLR请T垦ISET存B松SM2撤;肆继续监狱听SETB霜ESRET6.3.贝2单明片机与P小C机的通鞠信在工控更系统(澡尤其是粉多点现尚场工控拜系统)啊设计实洁践中,经单片机恋与PC渠机组合漏构成分狗布式控女制系统朋是一个线重要的兔发展方肺向。分酱布式系盾统主从商管理,抽层层控晓制。主浆控计算隔机监督脾管理各井子系统凡分机的篮运行状贸况。子群系统与葡子系统朴可以平两等信息替交换,企也可以邻有主从赶关系。会分布式次系统最忘明显的侮特点是花可靠性峰高,某摩个子系俯统的故白障不会怎影响其静它子系效统的正悼常工作杰。1台P抄C机即陆可以与派1个8销0C3秋1单片物机应用蒙系统通帖信,也额可以与落多个8铺0C3扇1单片场机应用赖系统通乳信;可励以近距丙离也可顾以远距兆离。单渔片机与象PC机令通信时引,其硬拦件接口椅技术主赤要是电攀平转换钟、控制志接口设盗计和远王近通信去接口的粱不同处内理技术尖。在DOS园操作环境互下,要实票现单片机服与微机的递通信,只把要直接对犁微机接口铜的通信芯段片825浪0进行口扭地址操作冶即可。在虾WIND捎OWS的抹环境下,健由于系统廉硬件的无碑关性,不只再允许用梅户直接操汗作串口地锯址。如果横用户要进类行串行通效信,可以席调用WI鹅NDOW杨S的AP傅I应用程披序接口函还数,但其渐使用较为枣复杂,而忆使用V孔B通信控义件(Ms桃comm师)却可以统很容易的早解决这一霞问题。VB是W帮INDO杂WS图形刻工作环境鸣与Bas汇ic语言节编程简便

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论