• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    串行通信的工作原理

    2019-04-26 05:21:58侯光輝
    電子技術(shù)與軟件工程 2019年6期
    關(guān)鍵詞:數(shù)據(jù)位波特率下位

    文/侯光輝

    在工業(yè)應(yīng)用中,新設(shè)備的開(kāi)發(fā)都需要有說(shuō)服力的理論依據(jù)和足夠的實(shí)驗(yàn)數(shù)據(jù)來(lái)支撐,而實(shí)際開(kāi)發(fā)過(guò)程中會(huì)遇到多樣的困難,這就需要前期的系統(tǒng)仿真,來(lái)驗(yàn)證方案的正確性、可行性以及可能會(huì)存在的風(fēng)險(xiǎn)。本文以串行接口RS-232 為例闡述串行通信的工作過(guò)程。

    1 系統(tǒng)概述

    系統(tǒng)分為上位機(jī)與下位機(jī)兩部分,上位機(jī)是通過(guò)LabVIEW 完成控制命令的下發(fā),以及讀取下位機(jī)回傳的狀態(tài),并顯示在窗口;下位機(jī)為電機(jī)控制系統(tǒng),通過(guò)Proteus 仿真實(shí)現(xiàn),該系統(tǒng)以單片機(jī)AT89S52 為控制器,ULN2003A 為電機(jī)驅(qū)動(dòng)器,完成上位機(jī)命令的接收過(guò)程以及反饋電機(jī)的運(yùn)動(dòng)狀態(tài),系統(tǒng)框架如圖1所示。

    表1:串口管腳說(shuō)明

    圖1:系統(tǒng)流程示意圖

    圖2:串口連線(xiàn)圖

    2 通信原理

    串行接口(Serial Interface)簡(jiǎn)稱(chēng)串口,其傳遞方式為數(shù)據(jù)逐位按順序傳送。根據(jù)信息的傳送方向以及時(shí)間關(guān)系,串行通訊可以進(jìn)一步分為單工、半雙工和全雙工三種。

    串行接口按電氣標(biāo)準(zhǔn)及協(xié)議來(lái)分,包括RS-232-C、RS-422、RS485 等。RS-232 為 標(biāo)準(zhǔn)串口,是最常用的一種串行通訊接口,比較常見(jiàn)的為9 芯D 型插座(DB9),信號(hào)管腳如表1所示。RS-422 標(biāo)準(zhǔn)全稱(chēng)是“平衡電壓數(shù)字接口電路的電氣特性”,典型的RS-422 是四線(xiàn)接口,RS-485 與RS-422 相仿。

    串行通信連線(xiàn)規(guī)則:數(shù)據(jù)接收針腳與數(shù)據(jù)發(fā)送針腳彼此交叉相連,信號(hào)地對(duì)應(yīng)相接。當(dāng)使用一個(gè)串口時(shí)只需將2 線(xiàn)與3 線(xiàn)連接,可完成自發(fā)自收的過(guò)程,如圖2中a 所示;使用一對(duì)串口時(shí)(包含同一臺(tái)計(jì)算機(jī)或分別在不同計(jì)算機(jī)上),連接方法為2-3 交叉相連,5 線(xiàn)直連,如圖2中b 所示。

    圖3:LabVIEW 上位機(jī)界面

    圖4:電機(jī)仿真系統(tǒng)

    串口通信參數(shù)包含:波特率、數(shù)據(jù)位、停止位和奇偶校驗(yàn)等。其中波特率是衡量符號(hào)傳輸速率的參數(shù),數(shù)據(jù)位是衡量通信中實(shí)際數(shù)據(jù)位的參數(shù),停止位用于表示單個(gè)包的最后一位,奇偶校驗(yàn)位是在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。

    3 串口的使用

    為解決串口資源不足的問(wèn)題,可借助于軟件創(chuàng)建虛擬串口,和實(shí)際的串口工作機(jī)制一致。使用串口測(cè)試工具,測(cè)試串口的通信是否正常時(shí)需要注意以下兩點(diǎn):

    (1)通信的對(duì)應(yīng)端口,需要保持其波特率、數(shù)據(jù)位、校驗(yàn)位、停止位、流控制等設(shè)置一致。

    (2)通信過(guò)程中,發(fā)送設(shè)置應(yīng)該與顯示設(shè)置保持一致,不然會(huì)出現(xiàn)收發(fā)內(nèi)容不一致的現(xiàn)象。

    4 上位機(jī)軟件設(shè)計(jì)

    LabVIEW 是由美國(guó)國(guó)家儀器公司開(kāi)發(fā)的圖形化程序開(kāi)發(fā)平臺(tái)。采用數(shù)據(jù)流編程方式,數(shù)據(jù)流向決定了程序的執(zhí)行順序。LabVIEW通過(guò)VISA 模塊能與大多數(shù)儀器總線(xiàn)連接,包括GPIB、USB、串口、PXI、VXI 和以太網(wǎng)等,因此被廣泛地應(yīng)用于汽車(chē)、航空、半導(dǎo)體、電子設(shè)計(jì)生產(chǎn)、過(guò)程控制和生物醫(yī)學(xué)等各個(gè)領(lǐng)域。

    利用LabVIEW 中VISA 模塊中的串口函數(shù),編寫(xiě)串口測(cè)試程序相對(duì)比較簡(jiǎn)單,一般流程為:VISA 配置串口、VISA 寫(xiě)入、VISA 讀取、VISA 關(guān)閉。

    上位機(jī)界面如圖3所示,左側(cè)是控制電機(jī)的狀態(tài),右側(cè)是讀取電機(jī)的實(shí)時(shí)狀態(tài)。程序采用雙線(xiàn)程方式,在實(shí)時(shí)讀取下位機(jī)回傳狀態(tài)的同時(shí),滿(mǎn)足電機(jī)設(shè)置狀態(tài)的命令下發(fā)。需要注意的是在數(shù)據(jù)讀取的時(shí)候,需要對(duì)數(shù)據(jù)幀頭進(jìn)行判斷,只有幀頭正確的前提下才能讀取并解析數(shù)據(jù)字節(jié)。

    5 電機(jī)調(diào)速仿真系統(tǒng)

    Proteus 軟件是英國(guó)Labcenter Electronics公司出版的EDA 工具軟件。常用于單片機(jī)等數(shù)字電路仿真,在編譯方面,支持IAR、Keil和MPLAB 等多種編譯器。

    該仿真系統(tǒng)中以單片機(jī)AT89S52 為核心控制芯片,ULN2003A 為步進(jìn)電機(jī)的驅(qū)動(dòng)芯片,如圖4所示。其中P1 為Proteus 中的串口模塊,芯片AT89S52 由美國(guó)Atmel 公司生產(chǎn)的一款低功耗、高性能的8 位單片機(jī),具有 32個(gè)外部雙向I/O 口,以及全雙工串行口等特點(diǎn)。ULN2003A 是一個(gè)7 路反向器電路,常用于電機(jī)、繼電器、顯示以及照明電路中的驅(qū)動(dòng)部分。

    6 聯(lián)合調(diào)試

    同時(shí)運(yùn)行Proteus 仿真文件與LabVIEW上位機(jī)文件。在上位機(jī)中設(shè)置好圈數(shù)后,點(diǎn)擊“正轉(zhuǎn)”或“反轉(zhuǎn)”,設(shè)置狀態(tài)的命令將會(huì)通過(guò)串口傳遞到下位機(jī),在下位機(jī)中可以看到電機(jī)開(kāi)始運(yùn)轉(zhuǎn),指示燈指示相應(yīng)的狀態(tài),“VIRTUAL TERMINAL”中看到數(shù)據(jù)的傳遞,同時(shí)上位機(jī)的右側(cè)“讀取狀態(tài)”中會(huì)有相應(yīng)的狀態(tài)變化。狀態(tài)的實(shí)際變化與理論上的一致。

    7 結(jié)語(yǔ)

    本文通過(guò)應(yīng)用LabVIEW編寫(xiě)上位機(jī)軟件,借助串口控制步進(jìn)電機(jī)的過(guò)程,驗(yàn)證工業(yè)中串行通信數(shù)據(jù)交換的傳輸過(guò)程,以及實(shí)現(xiàn)的方法。其中串口的連接部分是通過(guò)虛擬串口,其作用和實(shí)際串口一致。為應(yīng)對(duì)現(xiàn)代化設(shè)備的高速率更新,以及項(xiàng)目前期的快速推進(jìn)提供了一種快捷高效的論證結(jié)果的方法。

    猜你喜歡
    數(shù)據(jù)位波特率下位
    A320飛機(jī)大氣數(shù)據(jù)的采集和計(jì)算在排故中的應(yīng)用
    CAN 總線(xiàn)波特率自適應(yīng)程序設(shè)計(jì)
    智能制造(2020年5期)2020-07-03 06:24:00
    發(fā)射機(jī)房監(jiān)控系統(tǒng)之下位機(jī)
    基于FPGA的異步串行通信波特率容錯(cuò)設(shè)計(jì)
    一種適用于FPGA系統(tǒng)中的變速箱電路設(shè)計(jì)
    景洪電廠(chǎng)監(jiān)控系統(tǒng)下位機(jī)數(shù)據(jù)傳輸網(wǎng)絡(luò)改造
    圍觀黨“下位”,吐槽帝“登基”
    減少調(diào)度自動(dòng)化設(shè)備通訊串口丟包率的措施
    CAN總線(xiàn)并發(fā)通信時(shí)下位機(jī)應(yīng)用軟件設(shè)計(jì)
    C*Core芯片SCI串口波特率容限優(yōu)化
    家居| 吉水县| 哈密市| 宿迁市| 晋州市| 合水县| 阳西县| 郁南县| 宜春市| 吉首市| 奇台县| 罗山县| 临西县| 康定县| 青州市| 杭锦后旗| 嘉黎县| 桦川县| 日喀则市| 瑞金市| 盐池县| 盘山县| 桂林市| 双江| 乌拉特前旗| 平罗县| 大宁县| 莱阳市| 万山特区| 佛教| 辽宁省| 九江市| 重庆市| 云龙县| 乌拉特中旗| 渭源县| 象山县| 海门市| 苍山县| 桐乡市| 宝应县|