一、借助虛擬串口驅(qū)動軟件模擬PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信原理
虛擬終端(比如:Proteus中51單片機(jī))的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))分別與虛擬串口驅(qū)動軟件所模擬出其中一個虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))一一對應(yīng)接通后,再與虛擬串口驅(qū)動軟件所模擬出另外一個虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))交叉對應(yīng)接通來相互發(fā)送和接收數(shù)據(jù),從而實(shí)現(xiàn)相互通信。
二、借助虛擬串口驅(qū)動軟件模擬PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)相互通信原理圖
三、虛擬通信串口驅(qū)動軟件操作
(1)、虛擬通信串口驅(qū)動軟件所模擬出虛擬串口間通信原理。
虛擬串口驅(qū)動軟件所模擬出虛擬串口的TXD(發(fā)送數(shù)據(jù))和RXD(接收數(shù)據(jù))交叉對應(yīng)接通來相互發(fā)送和接收數(shù)據(jù),從而實(shí)現(xiàn)相互通信。
(2)、虛擬通信串口驅(qū)動軟件所模擬出虛擬串口間通信原理圖。
(3)、下載虛擬通信串口驅(qū)動軟件,安裝完成后的圖標(biāo),如下所示。
(4)、雙擊打開虛擬通信串口驅(qū)動軟件圖標(biāo),彈出以下界面。
(5)、在虛擬通信串口驅(qū)動軟件界面點(diǎn)擊“添加端口”,左邊Virtual Serial Port Driver欄下Virtual port處出現(xiàn)添加兩個虛擬通信串口:COM2與COM3。
(6)、右鍵點(diǎn)擊電腦上的計算機(jī),在彈出列表中選中屬性,會彈出一個關(guān)于電腦控制面板的信息界面,點(diǎn)擊左上邊設(shè)備管理器,彈出設(shè)備管理器界面,找到端口項點(diǎn)開,出現(xiàn)新增兩個虛擬通信串口: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;//定時器工作方式為方式2,8位自動重裝。 TH1=0xfd;//初始化計數(shù)器高8位:1111 1101,對應(yīng)波特率為9600。 TL1=0xfd;//初始化計數(shù)器低8位 TR1=1;//啟動定時器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元件,在彈出列表中選中編輯屬性,會彈出一個編輯元件的信息界面,在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ū)動軟件界面,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仿真電路圖界面,啟動Proteus仿真電路。
(7)、再次回到虛擬串口驅(qū)動軟件界面,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ī)相互通信(注意:先啟動PC端串口調(diào)試助手軟件中的串口,再運(yùn)行Proteus仿真電路,否則PC端串口調(diào)試助手軟件與Proteus中51單片機(jī)無法相互通信。)
(1)、在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長條輸入框輸入發(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ù)”右邊長條輸入框輸入發(fā)送給Proteus仿真電路圖中51單片機(jī)的數(shù)據(jù)后,點(diǎn)擊PC端串口調(diào)試助手軟件界面中的“手動發(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ù)的同時,PC端串口調(diào)試助手軟件也接收了Proteus中51單片機(jī)發(fā)送的初始狀態(tài)數(shù)據(jù)。
(6)、再次在PC端串口調(diào)試助手軟件界面的“發(fā)送的字符/數(shù)據(jù)”右邊長條輸入框輸入發(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ù)”右邊長條輸入框輸入發(fā)送給Proteus仿真電路圖中51單片機(jī)的數(shù)據(jù)后,點(diǎn)擊PC端串口調(diào)試助手軟件界面中的“手動發(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ù)的同時,PC端串口調(diào)試助手軟件也再次接收了Proteus中51單片機(jī)發(fā)送的初始狀態(tài)數(shù)據(jù)。
-
51單片機(jī)
+關(guān)注
關(guān)注
277文章
5711瀏覽量
127411 -
串口驅(qū)動
+關(guān)注
關(guān)注
2文章
86瀏覽量
19109 -
虛擬通信
+關(guān)注
關(guān)注
0文章
3瀏覽量
6929
發(fā)布評論請先 登錄
基于51/32單片機(jī)按鍵控制步進(jìn)電機(jī)正反轉(zhuǎn),A4988驅(qū)動
瑞薩Cortext-M85內(nèi)核RA8系列單片機(jī)的串口輸出實(shí)現(xiàn)方法

LabVIEW與單片機(jī)無法串口通信 提示串口打開錯誤 端口設(shè)置有問題嗎?
51單片機(jī)中為什么很少出現(xiàn)printf的身影

串口通信的開發(fā)環(huán)境配置
51單片機(jī)STC8H8K64U通過RA8889/RA8876如何控制彩屏 I2C源碼下載

基于51單片機(jī)的多路溫度檢測調(diào)節(jié)及串口顯示

基于51單片機(jī)的遙控開關(guān)仿真(雙機(jī)通信)

評論