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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ZigBee和Android的智能移動(dòng)監(jiān)控系統(tǒng)設(shè)計(jì)

          基于ZigBee和Android的智能移動(dòng)監(jiān)控系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2013-01-04 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/257200.htm2.2信息處理與控制子系統(tǒng)

          信息處理與控制子系統(tǒng)是在智能移動(dòng)平臺(tái)上研發(fā)的。智能平臺(tái)體系從上到下由應(yīng)用程序、應(yīng)用程序框架、外部庫、Andr oid運(yùn)行時(shí)庫、硬件抽象層HAL(Hardware Abstraction Laycr)和Linux內(nèi)核組成。
          智能移動(dòng)平臺(tái)的研發(fā)需要借助Eclipse、NDK和JNI等工具和方法。信息處理與控制子系統(tǒng)的MVC模式如圖8所示。本文是按MVC模式研發(fā)信息處理與控制子系統(tǒng)的。
          Android應(yīng)用程序的設(shè)計(jì)必須要遵循單線程模型。當(dāng)Android應(yīng)用程序啟動(dòng)時(shí),Android系統(tǒng)會(huì)同時(shí)啟動(dòng)一個(gè)對應(yīng)的主線程即UI線程,用于處理與用戶界面UI(User Interface)相關(guān)的事件。UI線程不是線程安全的。
          此設(shè)計(jì)需要將環(huán)境信息實(shí)時(shí)地顯示在Android應(yīng)用程序上,同時(shí)需要及時(shí)地將用戶操作轉(zhuǎn)換成用戶命令發(fā)送至信息采集與傳輸子系統(tǒng)。岡此,為了避免阻塞UI線程,設(shè)計(jì)了一個(gè)守候線程并采用了基于zbHandler的消息傳遞機(jī)制。UI線程和守候線程的關(guān)系如圖9所示。
          守候線程是借助于本地方法獲取Linux底層驅(qū)動(dòng)環(huán)境信息的。信息處理與控制子系統(tǒng)中的本地方法被封裝在一個(gè)名為Jni的類中,其定義如下:

          結(jié)語

          本文研究了基于網(wǎng)絡(luò)和Android智能移動(dòng)平臺(tái)的監(jiān)控系統(tǒng)的設(shè)計(jì)。經(jīng)過嚴(yán)格的測試,本系統(tǒng)能夠完成對環(huán)境信息的實(shí)時(shí)監(jiān)測,并能及時(shí)地響應(yīng)用戶發(fā)出的各種控制命令,系統(tǒng)的設(shè)計(jì)達(dá)到了預(yù)期的目標(biāo)。

          更多關(guān)于技術(shù)的資訊,歡迎訪問與非網(wǎng)ZigBee技術(shù)專區(qū)


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: ZigBee 智能移動(dòng)監(jiān)控系統(tǒng) S3C6410 Android CC2530

          評論


          相關(guān)推薦

          技術(shù)專區(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); })();