单片机串口通信学号显示_触摸屏与单片机串口通信测试
工業(yè)現(xiàn)場(chǎng)在使用觸摸屏的時(shí)候,與第三方控制器進(jìn)行通信連接的時(shí)候,一般都是使用成熟的通信協(xié)議進(jìn)行通信連接。而這些協(xié)議的實(shí)現(xiàn)過程,觸摸屏廠商也已經(jīng)在編程環(huán)境中進(jìn)行了封裝集成,對(duì)于使用的工程師來說,通信的數(shù)據(jù)交換過程我們無需要關(guān)心。僅需要設(shè)置配置好控制器(PLC)的品牌,型號(hào)系列及基本的通信通道就可以了。當(dāng)然,這是觸摸屏通信的常規(guī)使用方法,這里就使用自定義協(xié)議如何實(shí)現(xiàn)觸摸屏與控制器(如,單片機(jī))的通信方法,分享給大家。以下通信測(cè)試方法除電腦外無需任何硬件,感興趣的話可以依照以下步驟還原測(cè)試過程。
工具及環(huán)境準(zhǔn)備
在開始測(cè)試前,我們需要準(zhǔn)備以下工具及軟件。
- 觸摸屏編程軟件:臺(tái)達(dá)DOPSoft 2.00.07
- 虛擬串口:Virtual Serial Port Driver
- 串口助手調(diào)試工具:stc-isp-15xx-v6.86v
DOPSoft 2.00.07
Virtual Serial Port Driver
stc-isp-15xx-v6.86v
虛擬串口
打開“Virtual Serial Port Driver”軟件,添加COM1、COM2兩個(gè)串口。添加完成后,如下所示;
串口助手設(shè)置
打開串口助手軟件(stc-isp-15xx-v6.86v)。在串口助手的串口號(hào)中設(shè)置為COM1,9600,8,n,1。此處設(shè)置為COM1后,觸摸屏中就只能配置為COM2。其必須與虛擬串口設(shè)置的串口號(hào)對(duì)應(yīng)。
到此,就完成了測(cè)試環(huán)境的搭建。以下開始觸摸屏部分的配置。
觸摸屏設(shè)置
觸摸屏設(shè)置為本次測(cè)試的核心。
STEP1
打開“DOPSoft 2.00.07”軟件,并新建工程。
STEP2
在通信端口配置頁面,按照如下配置通信端口。這里以觸摸屏的COM2作為此處測(cè)試的連接端口,故需要將觸摸屏的COM2的“連接“復(fù)選框取消選中。這樣才可以將其用作自定義通信方式使用。
SETP3
在畫面編輯頁面,按照下圖所示,設(shè)置10個(gè)數(shù)值輸入框。并將其地址設(shè)置為觸摸屏內(nèi)部存儲(chǔ)區(qū)域的$0-$10。
雙擊數(shù)值輸入框,彈出數(shù)值輸入框的配置對(duì)話框,如下所示。
在寫入地址對(duì)話框的后側(cè),點(diǎn)擊“…”,彈出輸入對(duì)話框。將連線名稱設(shè)置為內(nèi)部存儲(chǔ)區(qū)域(Internal Memory)。再將原件地址設(shè)置為“0”。
依照以上方法,將其他數(shù)值輸入框設(shè)置到地址1-10.
STEP4
設(shè)置畫面運(yùn)行過程中的腳本程序。
選中畫面,在右側(cè)的屬性欄,選擇“畫面Cycle宏”。
彈出觸摸屏腳本編輯對(duì)話框,點(diǎn)擊下圖所示按鈕,打開腳本程序代碼編寫向?qū)?duì)話框。
在腳本程序代碼編寫向?qū)?duì)話框中,選擇“命令”-“通信”-選擇命令。配置完成代碼參數(shù)后,選擇“更新宏”,完成代碼的添加。
代碼添加完成后,如下圖所示。
$M0 = INITCOM(1, 0, 1, 0, 0, 6, 0)//初始化端口
SELECTCOM(1)//設(shè)置觸摸屏通信端口為2號(hào)端口
$M1 = PUTCHARS($0, 20, 3000)//發(fā)送觸摸屏內(nèi)部$0開始的20個(gè)連續(xù)地址數(shù)據(jù)
Delay(300)//延時(shí)
$M0 = 0//清除端口初始化標(biāo)志
$M1 = 0//清除數(shù)據(jù)發(fā)送完成標(biāo)志
CLEARCOMBUFFER(1, 1)//清除串口緩存
STEP5
啟動(dòng)觸摸屏在線仿真。彈出如下所示的對(duì)話框,按照如圖所示的方式配置。
STEP6
按照地址,從上到下設(shè)置為1到10.
STEP7
打開串口助手,可以看到在串口助手的接收區(qū)域,已經(jīng)接收到觸摸屏在線仿真發(fā)送出來的數(shù)據(jù),且數(shù)據(jù)中可以看到有1到10(串口助手配置為16進(jìn)制顯示模式,其中16進(jìn)制的A即為十進(jìn)制的10)。
STEP8
在觸摸屏在線仿真頁面,將第一個(gè)數(shù)據(jù)改為9999。
再次查看串口助手中接收到的數(shù)據(jù),其中第一個(gè)數(shù)據(jù)已經(jīng)變?yōu)?F 27.
為了驗(yàn)證數(shù)據(jù)的正確性,打開電腦的計(jì)算器工具,將其設(shè)置為程序員模式。選擇16進(jìn)制輸入模式。輸入0F27,可以看到轉(zhuǎn)換為十進(jìn)制后數(shù)據(jù)為3879,這與觸摸屏輸入的數(shù)據(jù)9999無法對(duì)應(yīng)。這是什么地方錯(cuò)了嗎?其實(shí)不是。這只是數(shù)據(jù)的高低字節(jié)交換了,這在通信數(shù)據(jù)傳輸處理的時(shí)候需要特別注意。初次進(jìn)行串口通信調(diào)試,很多都被這個(gè)給折騰過。
在計(jì)數(shù)器模式下,輸入270F。可以看到其轉(zhuǎn)換后的十進(jìn)制數(shù)據(jù)為9999.與設(shè)置的輸入數(shù)據(jù)一致。
自此,使用觸摸屏進(jìn)行串口自定義協(xié)議通信的測(cè)試就已經(jīng)完成。
(轉(zhuǎn)載請(qǐng)注明來源函控自動(dòng)化工程師頭條號(hào))
總結(jié)
以上是生活随笔為你收集整理的单片机串口通信学号显示_触摸屏与单片机串口通信测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 无人驾驶板块龙头股 有技术实力的公司才有
- 下一篇: 支付宝可以绑定存折吗