亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于無線傳輸?shù)奶摂M串口設(shè)計(jì)

        2021-02-07 23:19:11李小龍朱海霞趙凱熠趙晨翔董正琪
        無線互聯(lián)科技 2021年22期

        李小龍 朱海霞 趙凱熠 趙晨翔 董正琪

        摘 要:文章設(shè)計(jì)了一種無線傳輸?shù)奶摂M串口系統(tǒng),采用Windows驅(qū)動(dòng)+上位機(jī)軟件+下位機(jī)終端的方式,實(shí)現(xiàn)了PC與下位機(jī)的高速數(shù)據(jù)傳輸。電腦通過虛擬出的串口控制下位機(jī)完成包括但不限于UART、SPI、IIC總線、顯示屏以及各種外設(shè)。

        關(guān)鍵詞:虛擬串口;ESP32;WiFi

        0 引言

        傳統(tǒng)的電磁信號(hào)傳輸是利用實(shí)體串口接收和發(fā)送信息,PC的核心是一個(gè)高速的中央處理器,它并沒有集成UART之類的低速通信接口。實(shí)際開發(fā)時(shí),通過USB/PCI-E總線連接MCU,或者USB轉(zhuǎn)TTL線材,這些需要寫操作系統(tǒng)與MCU的通信協(xié)議。這類傳統(tǒng)的實(shí)體串口開發(fā)不僅需要大量的財(cái)力物力,而且在這樣長(zhǎng)的數(shù)據(jù)交換鏈中數(shù)據(jù)極易丟失。

        本項(xiàng)目研究目的就是通過無線和虛擬硬件技術(shù),在PC操作系統(tǒng)中虛擬出串口,并通過無線技術(shù)與下位機(jī)通信,實(shí)現(xiàn)操作系統(tǒng)直接控制下位機(jī)的無線串口。

        1 虛擬串口的意義

        在傳統(tǒng)的測(cè)控系統(tǒng)中,通常電信號(hào)傳輸信息,這種傳輸方式常常會(huì)帶來電磁干擾和信號(hào)衰減。利用電磁信號(hào),脫離物理連接就可以克服電信號(hào)傳輸帶來的電磁干擾和信號(hào)衰減,同時(shí)也避免了錯(cuò)綜復(fù)雜的線路連接,有效地節(jié)省人力物力。

        本文以串口為起點(diǎn),對(duì)無線傳輸協(xié)議,傳輸硬件選擇,傳輸中數(shù)據(jù)的壓縮和復(fù)原,數(shù)據(jù)的加密,Windows底層驅(qū)動(dòng)等進(jìn)行研究,試圖在PC設(shè)備上虛擬出一個(gè)無線的串口,并在此基礎(chǔ)上虛擬SPI,IIC,CAN,SDIO等總線,提供PC與單片機(jī)的無線通信方式。圖1為虛擬串口與實(shí)體串口的數(shù)據(jù)鏈,圖中能直觀看出實(shí)體串口數(shù)據(jù)鏈臃長(zhǎng)、不安全。

        2 系統(tǒng)總體設(shè)計(jì)

        本項(xiàng)目是基于ESP32且具有上位機(jī)的通信軟件,上位機(jī)驅(qū)動(dòng)程序與下位機(jī)解析控制的從控制器設(shè)計(jì)。上位機(jī)部分用QT實(shí)現(xiàn)文本編輯,數(shù)據(jù)可視化與通信;驅(qū)動(dòng)程序部分負(fù)責(zé)將文本數(shù)據(jù)轉(zhuǎn)化為無線信號(hào)轉(zhuǎn)發(fā)給下位機(jī),同時(shí)接收下位機(jī)的反饋;下位機(jī)用ESP32解析指令并運(yùn)行,同時(shí)反饋狀態(tài)。

        3 上位機(jī)軟件開發(fā)

        上位機(jī)采用QT開發(fā),軟件分為3個(gè)部分。第一部分是數(shù)據(jù)傳輸?shù)牡讓?,包括TCP/UDP的套接字和Qt5封裝的串口類,負(fù)責(zé)數(shù)據(jù)的傳輸與接收;第二部分是數(shù)據(jù)的編輯部分,負(fù)責(zé)顯示數(shù)據(jù),同時(shí)編輯數(shù)據(jù),支持語法高亮等特性;第三部分是可視化界面,包括數(shù)據(jù)波形顯示器以及圖片顯示器等,保留給開發(fā)人員,便于下位機(jī)的數(shù)據(jù)分析。本項(xiàng)目開發(fā)的上位機(jī)軟件界面如圖2所示。

        4 驅(qū)動(dòng)開發(fā)

        這一部分主要負(fù)責(zé)將串口與TCP/UDP之間的數(shù)據(jù)轉(zhuǎn)發(fā)。采用Microsoft Visual Studio(WDK)開發(fā)。本項(xiàng)目開發(fā)的Windows驅(qū)動(dòng)界面如圖3所示。

        5 下位機(jī)開發(fā)

        下位機(jī)采用ESP32開發(fā),ESP32兩個(gè)240m的核心,核心0用來執(zhí)行各種指令,核心1用來處理WiFi通信,解析指令,運(yùn)行中斷。為了避免數(shù)據(jù)錯(cuò)誤,系統(tǒng)采用freertos的開發(fā),充分利用了互斥量、定時(shí)器和中斷管理。本次開發(fā)采用VScode(PIO)。下位機(jī)主函數(shù)部分如圖4所示,負(fù)責(zé)初始化各個(gè)模塊并啟動(dòng)各個(gè)線程。

        6 字符串解析函數(shù)

        傳統(tǒng)的腳本語言繼承了自然數(shù)計(jì)算等功能,造成系統(tǒng)解算時(shí)間很長(zhǎng)。

        字符串解析分成兩個(gè)部分,一個(gè)是用用戶自定義函數(shù),另一個(gè)是系統(tǒng)的自動(dòng)解析回調(diào)。得益于雙核結(jié)構(gòu),用戶可以充分利用其中一個(gè)核心完成用戶的任務(wù),而不影響我們的字串穿解析。

        字符串解析的核心是int sscanf(const char *, const char*, ...);所以函數(shù)繼承c語言的一切特性,包括正則表達(dá)式。

        受限于各種編譯器和優(yōu)化,不同平臺(tái)編譯出來的代碼可能有所差異。最終采用了c++來編譯我們的文件。當(dāng)然,具體的系統(tǒng)中改用c語言+結(jié)構(gòu)體指針能有更好的執(zhí)行效率。

        #define debugLen 50

        int DebugConut=0;

        7 結(jié)語

        本項(xiàng)目研究的目的就是通過無線和虛擬硬件技術(shù),在PC操作系統(tǒng)中虛擬出串口,并通過無線技術(shù)與下位機(jī)通信,實(shí)現(xiàn)操作系統(tǒng)直接控制下位機(jī)的無線串口。在串口的基礎(chǔ)上引入IIC,SPI等總線。在最終的成品上,直接寫UART/IIC/ SPI的協(xié)議,PC直接與連接在下位機(jī)的傳感器通信。

        [參考文獻(xiàn)]

        [1]黃麗娥.網(wǎng)口設(shè)備虛擬串口設(shè)備技術(shù)的設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2012.

        [2]郭書軍,田志鵬.基于單片Wi-Fi MCU CC3200的無線串口[J].儀器儀表用戶,2016(1):24-27.

        [3]楊思俊.基于VB6.0的太陽能發(fā)電基站電源的上位機(jī)軟件設(shè)計(jì)[J].科技廣場(chǎng),2011(1):133-135.

        [4]楊楊,潘洪躍.基于虛擬串口的數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].大眾科技,2008(4):73-75.

        (編輯 王雪芬)

        Design of virtual serial port based on wireless transmission

        Li Xiaolong, Zhu Haixia, Zhao Kaiyi, Zhao Chenxiang, Dong Zhengqi(NUAA Jincheng College, Nanjing 211156, China)

        Abstract:This paper designs a wireless transmission virtual serial port system, which uses Windows Driver + PC + lower terminal to realize high-speed data transmission between PC and lower computer. The computer controls the lower computer through the virtual serial port, including but not limited to UART, SPI, IIC bus, display screen and various peripherals.

        Key words:virtual serial port; ESP32; WiFi

        亚洲人成人无码www影院| 亚洲男女视频一区二区| 亚洲无毛成人在线视频| av无码小缝喷白浆在线观看| 99国内精品久久久久久久| 伊人精品无码AV一区二区三区| 少妇被日到高潮的视频| 激情文学婷婷六月开心久久| 中文字幕久久熟女蜜桃| 男人无码视频在线观看| 国产在线一区二区视频免费观看| 国产午夜免费啪视频观看| 亚洲乱码国产乱码精品精| 免费大片黄在线观看| 久久久久亚洲AV无码去区首| 国产三区二区一区久久| 国产色xx群视频射精| 国产亚洲日韩欧美一区二区三区| 人妻丝袜中文字幕久久| 91成人自拍在线观看| 久久久www免费人成精品| 国内精品久久久久影院优| 亚洲高清一区二区三区视频| 亚洲av午夜一区二区三| 精品国产午夜理论片不卡| 色综合久久加勒比高清88| 综合成人亚洲网友偷自拍| 日日躁夜夜躁狠狠躁| 亚洲男同志gay 片可播放| 在线视频一区二区在线观看| 精品国产精品久久一区免费式| 国产无遮挡又黄又爽在线观看| 91短视频在线观看免费| 亚州中文字幕乱码中文字幕| 欧洲多毛裸体xxxxx| 婷婷综合久久中文字幕蜜桃三电影| 人妻少妇精品一区二区三区| 可免费观看的av毛片中日美韩| 国产无人区码一码二码三mba| 亚洲AV成人无码久久精品在| 黑丝美腿国产在线观看|