<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 基于Matlab GUI的串口通信編程實(shí)現(xiàn)

          基于Matlab GUI的串口通信編程實(shí)現(xiàn)

          作者: 時(shí)間:2010-07-09 來(lái)源:網(wǎng)絡(luò) 收藏
          0 引言
          是MathWorks公司開(kāi)發(fā)的一種科學(xué)計(jì)算軟件。運(yùn)行穩(wěn)定、可靠、使用方便,是廣大科研人員進(jìn)行科學(xué)研究的得力助手。不僅具有強(qiáng)大的科學(xué)計(jì)算功能,還具有滿足一般要求的數(shù)據(jù)采集以及界面設(shè)計(jì)開(kāi)發(fā)功能。Matlab (Graphic User Interface)就是內(nèi)置于Matlab的進(jìn)行圖形界面開(kāi)發(fā)的模塊。
          本文利用Matlab 設(shè)計(jì)通過(guò)進(jìn)行數(shù)據(jù)發(fā)送和接收的界面,并利用內(nèi)置于Matlab的API數(shù)據(jù)發(fā)送與接收功能。

          1 Matlab GUl介紹
          啟動(dòng)Matlab后,運(yùn)行g(shù)uide命令即可以啟動(dòng)Matlab 開(kāi)發(fā)工具。如圖1所示。

          本文引用地址:http://www.ex-cimer.com/article/157311.htm


          新建Blank GUI,如圖2所示。
          在新建Blank GUI界面中,包含了一般的界面元素,如菜單、按鈕、坐標(biāo)軸、控件等。添加必要的串口參數(shù)設(shè)置按鈕。
          運(yùn)行后的界面如圖3所示。



          2 串口數(shù)據(jù)發(fā)送與接收功能
          2.1 建立串口流程的基本步驟

          Matlab提供了對(duì)串口進(jìn)行打開(kāi)、關(guān)閉、以及串口參數(shù)設(shè)置等操作的一系列函數(shù)。利用這些函數(shù)可以選擇串口號(hào)、設(shè)置串口通信參數(shù)(波特率、數(shù)據(jù)位、停止位、校驗(yàn)位等)、進(jìn)行中斷控制、流控制。從建立串口通信到結(jié)束串口通信的完整流程包括以下幾個(gè)步驟:
          (1)為應(yīng)用程序創(chuàng)建串口對(duì)象。該功能的函數(shù)為:

          其中參數(shù)port為完整的串口名稱(chēng),如cornl。PropertyName為串口通信參數(shù),如baudrate,startbits等。創(chuàng)建串口對(duì)象的過(guò)程中,也可以忽略PropertyName。其函數(shù)為:

          (2)連接打開(kāi)串口。實(shí)現(xiàn)該功能的函數(shù)為:

          obj即為使用創(chuàng)建串口對(duì)象函數(shù)的返回值。在連接打開(kāi)串口后,可以對(duì)串口通信參數(shù)進(jìn)行修改。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();