<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于VB實(shí)現PC機與單片機的串行通訊

基于VB實(shí)現PC機與單片機的串行通訊

作者: 時(shí)間:2012-03-22 來(lái)源:網(wǎng)絡(luò ) 收藏

口的操作可分為以下幾步進(jìn)行:①口初始化;②發(fā)送聯(lián)絡(luò )信號;③接收聯(lián)絡(luò )信號;④發(fā)送數據。以下程序由匯編語(yǔ)言編寫(xiě):
ORG 0030H
START:MOV SP,#60H
MOV TMOD, #20H ;T1工作模式2
MOV TH1, #72H
MOV TL1, #72H ;波特率110HZ
SETB TR1
MOV ON, #00H ;SMOD=0
MOV SCON, #50H ;方式1
MOV R0,#20H
MOV R2,#30 ;數據個(gè)數
XX1:MOV A,#55H
MOV SBUF,A ;發(fā)送聯(lián)絡(luò )信號
WAIT1:JBC TI,WAIT2 ;等待發(fā)送完畢
AJMP WAIT1
WAIT2:JBC RI,READ ;等待接收完畢
AJMP WAIT2
READ:MOV A,SBUF ;接收聯(lián)絡(luò )信號
CJNE A,# 0AAH,XX1 ;接收數據不正確,重新開(kāi)始
LOOP:MOV A,@R0
MOV SBUF,A
WAIT: JBC TI, LOOP1
AJMP WAIT ;等待發(fā)送完畢
LOOP1:INC R0
DJNZ R2,LOOP
END
(2)計算機的串行程序
為了更方便地實(shí)時(shí)了解數據采集的情況,我們把從讀來(lái)的數據分別賦給數組,然后描繪出波形曲線(xiàn)。
首先開(kāi)啟一個(gè)項目,并在窗體上安排一個(gè)MSCOMM控件,作為串行的信道。按下F4調出屬性窗口,變量COMPORT屬性為2,另外將 Rthreshold屬性設為1,意思就是只要外界傳送任何字符串,隨即引發(fā)事件。安排一個(gè)定時(shí)器,作為連續動(dòng)作的執行控件,一旦一位數據發(fā)送完就引發(fā)中斷,發(fā)送下一個(gè)數據。設置一個(gè)picturebox對象,把由傳送來(lái)的數據以線(xiàn)條方式繪制在此圖片框控件上。按下F4調出屬性窗口,其N(xiāo)ame屬性改為“Graph1”。
MSCOMM控件支持以文本和二進(jìn)制格式傳輸數據,由于下位機是,處理二進(jìn)制數據較為方便。因此本例中以二進(jìn)制格式發(fā)送和接受數據,支持字節變量類(lèi)型來(lái)存儲二進(jìn)制數據,從串口讀入的字節被保存在字節數組變量中,因此定義兩個(gè)BYTE類(lèi)型的動(dòng)態(tài)數組來(lái)存放和接受數據,在接受數據時(shí)采用事件驅動(dòng)法,當接受緩沖區有Rthreshold個(gè)數據時(shí),引起ONCOMM事件。
本程序接收從單片機發(fā)來(lái)的30個(gè)數據,當數據進(jìn)入機的輸入緩沖區后,程序會(huì )不斷讀取輸入緩沖區的數據,并將這些讀入的數據收在一起,賦給數組。
因為支持坐標格式,我們用SCALE函數作出坐標,定義X軸由0到30,表示有30個(gè)數據,Y軸由-20到+20,表示采集數據的范圍是-20 到+20,表達式為SCALE(0,+20)-(30,-20),為了實(shí)時(shí)采集數據,可以用定時(shí)器不斷地更新曲線(xiàn)。這樣就可以動(dòng)態(tài)地顯示被采集的數據。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>