一、借助虛擬串口驅(qū)動(dòng)軟件模擬PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信原理
虛擬終端(比如:Proteus中51單片機(jī))的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))分別與虛擬串口驅(qū)動(dòng)軟件所模擬出其中一個(gè)虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))一一對(duì)應(yīng)接通后,再與虛擬串口驅(qū)動(dòng)軟件所模擬出另外一個(gè)虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))交叉對(duì)應(yīng)接通來相互發(fā)送和接收數(shù)據(jù),從而實(shí)現(xiàn)相互通信。
二、借助虛擬串口驅(qū)動(dòng)軟件模擬PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信原理圖

三、虛擬通信串口驅(qū)動(dòng)軟件操作
(1)、虛擬通信串口驅(qū)動(dòng)軟件所模擬出虛擬串口間通信原理。
虛擬串口驅(qū)動(dòng)軟件所模擬出虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))交叉對(duì)應(yīng)接通來相互發(fā)送和接收數(shù)據(jù),從而實(shí)現(xiàn)相互通信。
(2)、虛擬通信串口驅(qū)動(dòng)軟件所模擬出虛擬串口間通信原理圖。

(3)、下載虛擬通信串口驅(qū)動(dòng)軟件,安裝完成后的圖標(biāo),如下所示。
(4)、雙擊打開虛擬通信串口驅(qū)動(dòng)軟件圖標(biāo),彈出以下界面。

(5)、在虛擬通信串口驅(qū)動(dòng)軟件界面點(diǎn)擊“添加端口”,左邊Virtual Serial Port Driver欄下Virtual port處出現(xiàn)添加兩個(gè)虛擬通信串口:COM2與COM3。

(6)、右鍵點(diǎn)擊電腦上的計(jì)算機(jī),在彈出列表中選中屬性,會(huì)彈出一個(gè)關(guān)于電腦控制面板的信息界面,點(diǎn)擊左上邊設(shè)備管理器,彈出設(shè)備管理器界面,找到端口項(xiàng)點(diǎn)開,出現(xiàn)新增兩個(gè)虛擬通信串口:COM2->COM3與COM3->COM2。

四、PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信的單片機(jī)C語言程序與Proteus仿真電路圖
(1)、燒寫PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信的單片機(jī)C語言程序
#includevoid main() { TMOD=0x20;//定時(shí)器工作方式為方式2,8位自動(dòng)重裝。 TH1=0xfd;//初始化計(jì)數(shù)器高8位:1111 1101,對(duì)應(yīng)波特率為9600。 TL1=0xfd;//初始化計(jì)數(shù)器低8位 TR1=1;//啟動(dòng)定時(shí)器1 SM0=0;//設(shè)定串口工作方式1(10位異步通信) SM1=1;//設(shè)定串口工作方式1 REN=1;//打開串口中斷接收允許 PCON = 0;//波特率不加倍 P1 = SBUF;//表示PC端串口調(diào)試助手給單片機(jī)接收數(shù)據(jù)緩存寄存器發(fā)送某數(shù)據(jù),然后單片機(jī)接收數(shù)據(jù)緩存寄存器接收PC端串口調(diào)試助手發(fā)來的某數(shù)據(jù),并賦給P1端口。 while(!RI);//判斷串口接收中斷標(biāo)志位是否為1,若為1則單片機(jī)發(fā)送數(shù)據(jù)緩存寄存器給PC端串口調(diào)試助手發(fā)送數(shù)據(jù)結(jié)束。 RI = 0;//表示單片機(jī)接收數(shù)據(jù)緩存寄存器可重新接收PC端串口調(diào)試助手發(fā)送數(shù)據(jù)。 SBUF = P1;//表示單片機(jī)接收數(shù)據(jù)緩存寄存器把從PC端串口調(diào)試助手獲取的某數(shù)據(jù)(用P1端口表示)賦給單片機(jī)發(fā)送數(shù)據(jù)緩存寄存器。 while(!TI);//判斷串口發(fā)送中斷標(biāo)志位是否為1,若為1則單片機(jī)發(fā)送數(shù)據(jù)緩存寄存器給PC端串口調(diào)試助手發(fā)送數(shù)據(jù)結(jié)束。 TI = 0;//TI(即串口發(fā)送中斷標(biāo)志位)=0,表示單片機(jī)發(fā)送數(shù)據(jù)緩存寄存器可重新給PC端串口調(diào)試助手發(fā)送數(shù)據(jù)。 }
(2)、PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信的Proteus仿真電路圖

(3)、右鍵點(diǎn)擊Proteus仿真電路圖中的COMPIM元件,在彈出列表中選中編輯屬性,會(huì)彈出一個(gè)編輯元件的信息界面,在Physical port處將通信串口COM1改為通信串口COM3,在Physical Baud Rate將4800改為9600,在Virtual Baud Rate處將4800改為9600,其它不變,之后點(diǎn)擊確定。

五、PC端串口調(diào)試助手軟件操作
(1)、下載PC端串口調(diào)試助手軟件,安裝完成后的圖標(biāo),如下所示。

(2)、雙擊打開PC端串口調(diào)試助手軟件圖標(biāo),彈出以下界面。

(3)、在PC端串口調(diào)試助手軟件界面串口處將通信串口COM1改為通信串口COM2,在波特率處將4800改為9600,選上十六進(jìn)制顯示及十六進(jìn)制發(fā)送,點(diǎn)擊“打開串口”。

(4)、在PC端串口調(diào)試助手軟件界面點(diǎn)擊“打開串口”彈出的界面

(5)、回到虛擬串口驅(qū)動(dòng)軟件界面,Virtual Serial Port Driver欄下Virtual port處的通信串口COM2出現(xiàn)[9600-N-8-1],表示PC端串口調(diào)試助手的通信串口COM2已激活。

(6)、回到PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信的Proteus仿真電路圖界面,啟動(dòng)Proteus仿真電路。

(7)、再次回到虛擬串口驅(qū)動(dòng)軟件界面,Virtual Serial Port Driver欄下Virtual port處的通信串口COM3出現(xiàn)[9600-N-8-1],表示Proteus仿真電路圖中51單片機(jī)借助COMPIM元件(RS-232串口(即9針端口)與MAX232芯片結(jié)合體)激活通信串口COM3。

六、PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信(注意:先啟動(dòng)PC端串口調(diào)試助手軟件中的串口,再運(yùn)行Proteus仿真電路,否則PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)無法相互通信。)
(1)、在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長(zhǎng)條輸入框輸入發(fā)送給Proteus仿真電路圖中51單片機(jī)的數(shù)據(jù)。

(2)、Proteus中51單片機(jī)未接到PC端串口調(diào)試助手軟件發(fā)送數(shù)據(jù)的初始狀態(tài)。

(3)、在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長(zhǎng)條輸入框輸入發(fā)送給Proteus仿真電路圖中51單片機(jī)的數(shù)據(jù)后,點(diǎn)擊PC端串口調(diào)試助手軟件界面中的“手動(dòng)發(fā)送”,讓PC端串口調(diào)試助手軟件給Proteus中51單片機(jī)發(fā)送數(shù)據(jù)。

(4)、Proteus中51單片機(jī)接收到PC端串口調(diào)試助手軟件發(fā)送的數(shù)據(jù)。

(5)、在Proteus中51單片機(jī)接收到PC端串口調(diào)試助手軟件發(fā)送數(shù)據(jù)的同時(shí),PC端串口調(diào)試助手軟件也接收了Proteus中51單片機(jī)發(fā)送的初始狀態(tài)數(shù)據(jù)。

(6)、再次在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長(zhǎng)條輸入框輸入發(fā)送給Proteus中51單片機(jī)的數(shù)據(jù)。

(7)、Proteus中51單片機(jī)未接到PC端串口調(diào)試助手軟件再次發(fā)送數(shù)據(jù)的初始狀態(tài)。

(8)、再次在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長(zhǎng)條輸入框輸入發(fā)送給Proteus仿真電路圖中51單片機(jī)的數(shù)據(jù)后,點(diǎn)擊PC端串口調(diào)試助手軟件界面中的“手動(dòng)發(fā)送”,再次讓PC端串口調(diào)試助手軟件給Proteus中51單片機(jī)發(fā)送數(shù)據(jù)。

(9)、Proteus中51單片機(jī)再次接收到PC端串口調(diào)試助手軟件發(fā)送的數(shù)據(jù)。

(10)、在Proteus中51單片機(jī)接收到PC端串口調(diào)試助手軟件再次發(fā)送數(shù)據(jù)的同時(shí),PC端串口調(diào)試助手軟件也再次接收了Proteus中51單片機(jī)發(fā)送的初始狀態(tài)數(shù)據(jù)。

-
51單片機(jī)
+關(guān)注
關(guān)注
278文章
5716瀏覽量
135181 -
串口驅(qū)動(dòng)
+關(guān)注
關(guān)注
2文章
86瀏覽量
19476 -
虛擬通信
+關(guān)注
關(guān)注
0文章
3瀏覽量
6972
發(fā)布評(píng)論請(qǐng)先 登錄
BLE-SER串口通信藍(lán)牙模塊嵌入式設(shè)備應(yīng)用
51單片機(jī)驅(qū)動(dòng)HMI串口屏,串口屏的下載方式
智能顯示模塊串口與單片機(jī)連接通信成功,偶爾收到的命令是亂碼有哪些什么原因?
單片機(jī)中的串口通訊串行同步通信與串行異步通信
學(xué)習(xí)單片機(jī)快速方法
請(qǐng)問單片機(jī)與上位機(jī)進(jìn)行異步串行通信的條件是什么呢?
模擬電子技術(shù)信號(hào)與系統(tǒng) 通信 單片機(jī)技術(shù)
rtstudio是否可像keil加載ini解決虛擬串口與mcu串口通訊?
單片機(jī)怎么驅(qū)動(dòng)電機(jī)?
AT89C51 單片機(jī)中文資料
使用USB轉(zhuǎn)TTL串口板和ST-LINK調(diào)試下載器給STM32單片機(jī)下載程序
虛擬通信串口驅(qū)動(dòng)軟件與51單片機(jī)相互通信原理圖
評(píng)論