運用Matlab GUI制作跨平臺串口控制界面 首先在matlab中制作所需要的界面,由于實際需要,我設(shè)置了一些串口屬性設(shè)置的下拉菜單,一個打開/關(guān)閉串口的開關(guān)按鈕,一個用于控制的滑塊(slider)組建,以及一些顯示信息的文本框。 界面如上圖所示。 在程序編寫時有一些注意事項: 1、當(dāng)串口還沒有打開時,拖動slider發(fā)送數(shù)據(jù)會產(chǎn)生錯誤,為了避免這種情況,我將slider的初始enable設(shè)置為off,即剛開始滑塊是不可用的,只有打開串口之后才激活,關(guān)閉串口又自動設(shè)置為不可用。 2、在關(guān)閉程序之后如果沒有關(guān)閉串口并刪除串口對象,在下次打開程序時就會提示串口已被占用,所以在程序中我添加了關(guān)閉程序時直接關(guān)閉并刪除串口對象,以免出錯。 運行結(jié)果如圖: 將硬件平臺連接好之后,進行試驗,結(jié)果表明可以實現(xiàn)對舵機的實時控制。 接下來就要進行程序的移植工作,主要分為windows平臺和linux平臺。 Windows 平臺 首先在matlab中設(shè)置編譯器(compiler),通過mbuild –setup命令,會列出電腦上已安裝的編譯器,需要選擇一個合適的, 在本人的win7x64系統(tǒng)上,有這個vc2010,就選擇它了,成功之后會有提示,否則請安裝正確適用的編譯器,設(shè)置好編譯器后,就可以進行編譯。 要用到mcc命令,mcc –m test,test為我的fig和m文件名稱,執(zhí)行完之后會在當(dāng)前目錄生成可執(zhí)行文件,這里就是test.exe文件,直接雙擊,首先出現(xiàn)一個dos黑窗口,這個是可以顯示可能的出錯信息或者正常運行信息,可以選擇不出現(xiàn)這個窗口,數(shù)秒鐘之后,就出現(xiàn)了脫離matlab的程序界面,與matlab中利用guide運行界面一樣,但是實現(xiàn)了脫離matlab運行,控制效果也相差無幾。 小結(jié):這個生成的程序雖然實現(xiàn)了windows下脫離matlab運行,但是其實還需要一些特定的環(huán)境變量,在某些機器上要正常運行需要安裝matlab目錄下一個叫MCRINSTALLER.EXE的文件,安裝之后,就可在windows系統(tǒng)中運行。 Linux平臺 同樣選擇合適的編譯器: 這里選擇gcc編譯器,同windows平臺一樣利用mcc命令進行編譯,會生成可執(zhí)行文件: 直接運行會發(fā)現(xiàn)提示沒有所需要的庫,無法運行,需要手動添加環(huán)境變量,添加之后就可以運行: 可以看到一些在windows下可以正常顯示的字符在這里顯示亂碼,是因為linux的字庫還不夠全,我這是直接把windows下的fig和m文件拿過來用,就出現(xiàn)了這種問題,不過無傷大雅,只要在linux下的matlab中對有亂碼的字符編輯一下,該刪的刪,該改的改,沒什么大問題。 小結(jié):在linux系統(tǒng)下,同樣要設(shè)置添加環(huán)境變量,程序才能正常運行,同時由于同一端口的端口號在windows和linux下是不同的,需要在程序中進行更改。
完整的Word格式文檔51黑下載地址:
Matlab-GUI制作跨平臺串口控制界面.doc
(849.5 KB, 下載次數(shù): 10)
2018-5-28 09:21 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|