有很多事,把它說清楚了,就簡(jiǎn)單了,比如用觸摸屏開發(fā)HMI。
觸摸屏是很常見的,比如說你用的智能手機(jī),用手指在上面劃劃劃就能顯示出我們想要的頁面,比如說早些年很流行的畫畫板,用觸摸筆在上面畫一畫就能畫出讓你開心的圖畫,如此這般地?cái)?shù)不過來。
1、什么是串口觸摸屏
串口觸摸屏首先是一種觸摸屏,是可以顯示的,文字、圖案等,是觸摸操作的,你用手指在上面觸摸、滑動(dòng)就能控制屏幕、傳遞信息,然后它是使用串行通信的,在觸摸屏與控制器之間,通過串口進(jìn)行數(shù)據(jù)交換。
2、串口觸摸屏的優(yōu)點(diǎn)
串口觸摸在工業(yè)控制領(lǐng)域應(yīng)用很廣泛,它:
l 指令簡(jiǎn)單。用串口指令就能讓觸摸屏與控制器之間進(jìn)行通信,進(jìn)而命令其他設(shè)備動(dòng)作。
l 具有通用性。只要控制器支持串行通信,就能使用這種觸摸屏,那么其實(shí)市面上大部分工業(yè)控制器都是可以的,類似單片機(jī)、PLC等等。
l 用戶操作界面(GUI)設(shè)計(jì)不難。一般用廠家提供的開發(fā)軟件做GUI設(shè)計(jì)不算難,假如你有VB、C#等編程的基礎(chǔ),那么就更容易了,無非就是放置控件、編輯控件的屬性、設(shè)置事件、編輯動(dòng)作代碼等就可以了。
3、串口觸摸屏的應(yīng)用
串口觸摸屏一般用于工業(yè)控制、設(shè)備制造上等,用來代替?zhèn)鹘y(tǒng)的按鍵、旋鈕、數(shù)碼管等元件,在一個(gè)屏幕上就能顯示和控制。
4、怎么用串口觸摸屏開發(fā)HMI
串口觸摸屏一般需要配合控制器一起使用,控制器向觸摸屏發(fā)送顯示信息在觸摸屏上顯示,例如數(shù)據(jù)變化、設(shè)備狀態(tài)反饋等,觸摸屏向控制器發(fā)送控件的操作信息讓控制器知道操作者對(duì)觸摸屏做了哪些操作,如某個(gè)按鍵按下、某個(gè)多選框被勾選等。
4.1開發(fā)流程是怎樣的
一般來說,串口觸摸屏是需要和控制器聯(lián)合使用的,控制器種類很多,PLC、單片機(jī)、DSP、FPGA等都可以的,只要支持串口通信即可。
開發(fā)的第一步,需要熟悉產(chǎn)品的資料,然后按照廠家提供的規(guī)則和要求進(jìn)行二次開發(fā)。接下來,把線接好,在電腦中的廠家提供的開發(fā)軟件上開發(fā)GUI,同時(shí)可以進(jìn)行與觸摸屏對(duì)應(yīng)的控制器的開發(fā),GUI開發(fā)好后下載到觸摸屏里面。一般來說,很難做到一次性就開發(fā)成功的,還需要一些調(diào)試和修改的工作。經(jīng)過一段時(shí)間有效的工作,那么就完成觸屏的開發(fā)。下面就詳細(xì)地介紹一下。
4.2 需要哪些工具
用串口觸摸屏來開發(fā)人機(jī)交互接口,一般來說除了觸摸屏之外,還需要這些工具:
l 開發(fā)軟件:開發(fā)軟件一般由廠家提供,主要功能是用于編輯觸摸屏的界面。一般的觸屏開發(fā)流程是在開發(fā)軟件上編輯好界面(GUI)之后,然后下載到觸摸屏上。開發(fā)軟件上設(shè)計(jì)的界面和觸摸屏上顯示的界面幾乎是一樣的,在開發(fā)軟件上做界面開發(fā),和電腦上做軟件開發(fā)的方法類似,一般就是控件 代碼,先放置控件,如按鍵、文本框等,然后設(shè)置控件的事件和動(dòng)作即可,添加必要的代碼。
l 串口下載線:串口下載線有兩個(gè)功能:1,用于開發(fā)軟件編輯好的界面從開發(fā)軟件下載到觸屏上。2,用于觸屏調(diào)試,和控制器程序的調(diào)試。
l 串口調(diào)試助手:用于串口指令和數(shù)據(jù)調(diào)試。
4.3 先要了解什么
需要查看觸摸屏的產(chǎn)品手冊(cè),了解以下內(nèi)容:
l 電源和信號(hào)電平:用什么樣子的電源,信號(hào)電平是多少。一般12VDC和5VDC的比較常見,TTL的信號(hào)電平比較多一些。
l 接線方式:觸屏的接線方式。一般來說,串口觸摸屏至少需要四根線,VCC、GND、TXD、RXD,分別是電源正、電源負(fù)、串口接收端、串口發(fā)送端。當(dāng)觸屏與控制器的串口連接時(shí),一般觸屏的TXD要接控制器的RXD,觸屏的RXD要接控制器的TXD,然后它們需要共地。
l 通信協(xié)議:串口有很多種模式,搞清楚數(shù)據(jù)位是多少位,是否有校驗(yàn)位,停止位的信息。如“8,N,1”就表示8為數(shù)據(jù)位,無校驗(yàn),1位停止位。
l 指令:指令規(guī)則是廠家提供的,表示用什么指令控制屏幕的顯示,點(diǎn)擊屏幕會(huì)發(fā)出什么樣子的數(shù)據(jù)給控制器等等。
4.4 怎么使用開發(fā)軟件
開發(fā)軟件就是拿來做觸屏界面(GUI)的,先設(shè)置好有多少個(gè)頁面,然后在頁面上放置控件,編輯好動(dòng)作、事件代碼和屬性,一個(gè)觸屏的界面就做好了。
圖3 是一款觸摸屏的開發(fā)軟件的界面:
左側(cè)的“控件列表”,當(dāng)觸摸屏的型號(hào)選定之后,該屏能支持的控件就都出現(xiàn)在列表里面了。一般的控件有:按鍵、文本框、多選框、圖片控件等,開發(fā)者根據(jù)需要選擇。
中間是 “主界面”,一般在開發(fā)軟件里主界面顯示怎樣的,下載到觸屏里面也就是這個(gè)樣子的。在開發(fā)的時(shí)候,點(diǎn)一下左邊的“控件列表”里面需要的控件,在主界面就會(huì)新添加一個(gè)一樣的控件,再用鼠標(biāo)拖動(dòng)位置,拖動(dòng)控件的四個(gè)角的方框調(diào)整控件的大小,做成我們期待的樣子就可以了。
下方的“動(dòng)作和事件程序編輯”區(qū)域是為了設(shè)置控件或者頁面的事件與動(dòng)作,如你點(diǎn)擊或者其他對(duì)觸屏上的某個(gè)控件動(dòng)作之后想讓觸屏干什么,對(duì)于串口觸摸屏,就是設(shè)置讓觸屏上的串口發(fā)出怎樣的數(shù)據(jù)。在編輯動(dòng)作和事件的時(shí)候,先要用鼠標(biāo)選定對(duì)象,比如某個(gè)控件、比如某個(gè)頁面,選定后再在下方編輯動(dòng)作和事件代碼。
右側(cè)的“頁面列表”顯示了這個(gè)觸屏有幾個(gè)畫面。在設(shè)計(jì)的時(shí)候一般會(huì)把觸屏分為幾個(gè)畫面,一個(gè)畫面完成一個(gè)特定的功能,每一個(gè)畫面可以放置若干個(gè)你需要的控件。
右側(cè)的“屬性編輯”框用于查看和設(shè)置控件的屬性,如控件名、長(zhǎng)寬高、字體大小、顏色等。使用的時(shí)候還是需要先選定,再使用。
上方的“菜單欄”是一些常用到的功能,如“編譯”是在開發(fā)軟件上做完GUI設(shè)計(jì)之后需要編譯一下,看一下有無錯(cuò)誤?!跋螺d”就是把做好的GUI下載到觸摸屏里面去。
一般在開發(fā)軟件上設(shè)計(jì)GUI的流程如下:
4.5 控制器程序編寫
這里的控制器是一定要有串口的,且串口的電平要與觸屏匹配。
控制器的程序包括兩部分:
l 發(fā)送指令。控制器通過串口向觸摸屏發(fā)送給指令,用于觸屏顯示。舉個(gè)例子,假如觸屏當(dāng)前在頁面1時(shí),控制器向觸屏發(fā)送字符串指令:t0.txt="控制器電路板儀器軟件開發(fā)找我",那么就可以讓頁面1上的文本控件t0顯示文字“控制器電路板儀器軟件開發(fā)找我”。其他具體的指令,查看產(chǎn)品手冊(cè)。
l 接收觸屏發(fā)來的數(shù)據(jù)??刂破鲬?yīng)當(dāng)監(jiān)視串口,隨時(shí)接收觸屏發(fā)來的數(shù)據(jù),這些數(shù)據(jù)包括了控件的事件信息,如按鍵按下,頁面切換等。數(shù)據(jù)格式,還是得參看產(chǎn)品手冊(cè)。
4.6 調(diào)試
GUI做好了,控制器的程序也寫好了,以為很完美,可是現(xiàn)實(shí)往往是打臉的。不是這里有問題,就是那里有問題,那么就需要調(diào)試了。
串口助手是個(gè)好軟件能顯示收發(fā)的串口數(shù)據(jù),串口下載線也需要。在電腦上安裝好串口助手,并接上串口下載線。當(dāng)串口下載線的另一頭與觸屏連接時(shí),串口助手就模擬控制器,當(dāng)串口下載線的另一頭與控制器連接時(shí),串口助手就模擬了觸屏。在串口助手上能看到收發(fā)的信息,與設(shè)想來個(gè)可視化的對(duì)比,問題一般就無所遁形了。
以上只是介紹某一種串口觸摸屏的開發(fā)方法,不同的屏幕有不同的方法,根據(jù)廠家的手冊(cè)來開發(fā)即可,例如,有另外一種觸屏的開發(fā)基本全是用控制器的指令來控制,開發(fā)軟件只用于生成觸屏的背景,由計(jì)算機(jī)將圖片和漢字點(diǎn)陣通過開發(fā)軟件預(yù)先存儲(chǔ)到串口屏的存儲(chǔ)器中,然后由控制器通過串口發(fā)送指令調(diào)用顯示。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。