国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

STM32微控制器虛擬串口通信實現(xiàn)與仿真

2018-09-17 06:24:28熊軍洲
科教導(dǎo)刊·電子版 2018年17期
關(guān)鍵詞:串口

熊軍洲

摘 要 針對STM32微控制器串口通信,提出了一種虛擬串口通信仿真方法,采用虛擬串口軟件、串口調(diào)試助手及Keil軟件相結(jié)合的方式對串口的發(fā)送和接收進行仿真。結(jié)果表明,該方法在不需要硬件的前提下STM32微控制器串口能依靠軟件仿真正常地發(fā)送和接收數(shù)據(jù),驗證串口正常工作。

關(guān)鍵詞 STM32 串口 虛擬串口軟件 串口調(diào)試助手 Keil

中圖分類號:TP335 文獻標識碼:A

1實現(xiàn)原理與仿真設(shè)置

該方法不需要硬件開發(fā)板和仿真器,也不關(guān)注計算機是否有串口,而是利用虛擬串口軟件(Virtual Serial Port Driver,VSPD)創(chuàng)建虛擬的串行通信接口,因此計算機上需要安裝VSPD軟件、串口調(diào)試助手和Keil uVision5軟件。VSPD成對地創(chuàng)建虛擬串口,這些虛擬的串口與真實的物理串口在使用上完全一致,通過虛擬互連將創(chuàng)建的成對串口相互連在一起,相當于使用數(shù)據(jù)線連接了兩個串口,從而可以實現(xiàn)發(fā)送和接收數(shù)據(jù)的仿真。新建虛擬串口的數(shù)量是不受限制的,因此可以方便地擴展串口的數(shù)量。具體的仿真設(shè)置如下:

1.1打開VSPD軟件,創(chuàng)建虛擬串口

打開軟件后,在出現(xiàn)的界面上manage ports選擇兩個串口號然后點擊Add pair,這時界面左側(cè)的Serial ports explorer部分的Virtual ports下顯示兩個虛擬串口COM1和COM2。這兩個串口即為創(chuàng)建完的串口,如果需要繼續(xù)增加串口,只需在manage ports下繼續(xù)選擇串口號然后點擊Add pair即可。將虛擬串口COM1和COM2與STM32微控制器中的一個USART綁定,即可實現(xiàn)USART的仿真調(diào)試。

1.2打開Keil uVision5軟件,綁定串口

將編寫的串口程序編譯鏈接生成可執(zhí)行文件后,在Dubug模式下進行調(diào)試仿真。在軟件下方出現(xiàn)的Command窗口命令欄中先后輸入兩條命令:MODE和ASSIGN,其格式如下:

MODE COMx baudrate, parity, databits, stopbits

ASSIGN channel outreg

MODE命令為設(shè)置將要綁定的虛擬串口參數(shù)。COMx(x=1,2,3……)為虛擬串口號,baudrate為串口的有效波特率(如1200, 2400, 9600, 或 19200),parity為奇偶檢驗設(shè)置(parity為0表示無檢驗位,為1表示奇檢驗,為2表示偶檢驗),databits為數(shù)據(jù)位的個數(shù)(databits為8表示8位數(shù)據(jù)位,為7表示7位數(shù)據(jù)位),stopbits為停止位的個數(shù)(為1表示1位停止位,為15表示1.5位停止位,為2表示2位停止位)。

ASSIGN命令為將計算機創(chuàng)建的虛擬串口與微控制器的仿真串口綁定。channel為虛擬串口 COMx(x=1,2,3……),inreg和outreg為微控制器串口的輸入和輸出(inreg取值為SxIN, outreg取值為SxOUT,x=1,2,3)。

本文將MODE和ASSIGN命令分別設(shè)置為:

MODE COM1 9600,0,8,1

ASSIGN COM1 S2OUT

仿真多個串口時,由于創(chuàng)建的虛擬串口較多,為避免每次仿真時都要輸入命令,可以創(chuàng)建一個配置文件USART.txt,將以上的MODE和ASSIGN命令先后寫入,如有多個串口需要綁定則需要寫入多組MODE和ASSIGN命令,格式相同,具體參數(shù)根據(jù)實際程序要求設(shè)置。創(chuàng)建完配置文件后,將后綴改為.ini,如本文將USART.txt改為USART.ini,在設(shè)置Keil參數(shù)時,將Debug選項卡中的Initialization File路徑中。

1.3打開串口調(diào)試助手,配置參數(shù)

設(shè)置端口號為創(chuàng)建的虛擬串口COM2,按仿真程序設(shè)置波特率為9600 ,無奇偶檢驗位,停止位為1位,數(shù)據(jù)位為8位。

2串口收發(fā)仿真測試

通過軟件仿真串口程序,串口調(diào)試助手顯示如圖2所示:

由測試結(jié)果可知,通過虛擬串口,串口調(diào)試助手和微控制器之間能夠正確地收發(fā)數(shù)據(jù),通信正常。

3結(jié)束語

本文介紹了STM32串口仿真時使用虛擬串口的方法,全部采用軟件仿真的方式,成本低,效率高,大大減少了軟件開發(fā)時間。測試結(jié)果驗證了該方法的有效性,在實踐開發(fā)和教學(xué)當中具有很好的應(yīng)用價值。

參考文獻

[1] 王益涵,孫憲坤,史志才.嵌入式系統(tǒng)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2016.

[2] 陳志旺.STM32嵌入式微控制器快速上手(第2版)[M].北京:電子工業(yè)出版社,2014.

[3] 張勇.ARM Cortex-M3嵌入式開發(fā)與實踐[M].北京:清華大學(xué)出版社,2017.

猜你喜歡
串口
淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
數(shù)字電源內(nèi)部數(shù)據(jù)傳輸?shù)拇谕ㄐ欧椒▽崿F(xiàn)
USB接口的多串口數(shù)據(jù)并行接收方法探索
串口技術(shù)的實物調(diào)試和虛擬仿真聯(lián)合教學(xué)模式
基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
地礦測繪(2015年3期)2015-12-22 06:27:26
基于并行控制的FPGA多串口拓展實現(xiàn)
游戏| 昆明市| 乌拉特前旗| 武鸣县| 红安县| 永嘉县| 秦安县| 鄂托克前旗| 赤城县| 台州市| 许昌县| 渝中区| 乌审旗| 吴江市| 镇平县| 沾化县| 华容县| 翁源县| 织金县| 潜江市| 邵武市| 延寿县| 平山县| 玉溪市| 鄂州市| 淮安市| 武山县| 项城市| 军事| 永兴县| 南京市| 祥云县| 拜泉县| 平武县| 静乐县| 长兴县| 腾冲县| 白水县| 昭觉县| 英德市| 沾化县|