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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于SOPC技術(shù)的遠程測控系統(tǒng)設(shè)計方案

          基于SOPC技術(shù)的遠程測控系統(tǒng)設(shè)計方案

          作者: 時間:2009-09-01 來源:網(wǎng)絡(luò) 收藏

            3 系統(tǒng)的實現(xiàn)

            3.1 系統(tǒng)初始化

            系統(tǒng)初始化是指系統(tǒng)上電復(fù)位后到運行main()函數(shù)前,初始化硬件,構(gòu)建應(yīng)用程序運行環(huán)境的過程。如圖3所示,Nios II的HAL程序庫為用戶提供了這段代碼,代碼的入口標(biāo)號是"reset"。

            程序先對CPU進行初始化,其功能包括初始化指令和數(shù)據(jù)Cache,設(shè)置堆棧指針(stack Pointer)等,然后調(diào)用"alt main()"函數(shù)。

            alt main()函數(shù)對CPU及外設(shè)初始化,其功能包括調(diào)用alt os int()函數(shù)初始化OS,默認情況下完成對μC/OS-II初始化,調(diào)用alt_sys_int()函數(shù)初始化系統(tǒng)設(shè)備及軟件模塊等,然后調(diào)用"main()"函數(shù)。

            3.2 主函數(shù)main()

            主函數(shù)"main()"負責(zé)進行網(wǎng)絡(luò)監(jiān)聽,響應(yīng)終端的TCP連接請求。若同時要求能與多個終端建立TCP連接和傳輸數(shù)據(jù),需要為每個終端的網(wǎng)絡(luò)數(shù)據(jù)處理都開辟一個新的線程,主函數(shù)的流程如圖4所示。

            服務(wù)器為每個客戶端都開一個線程專門與之進行socket通信。Socket數(shù)據(jù)處理線程主要包括三個方面工作:從套接字上接收數(shù)據(jù)包;解析并存儲數(shù)據(jù)包;打包并發(fā)送數(shù)據(jù)包等。

            3.3 實驗

            為驗證設(shè)計方案,選用瑞士SENSIRION公司生產(chǎn)的傳感器SHT75,測控溫、濕度,該一體化數(shù)字式傳感器將敏感元件、信號放大器、模數(shù)轉(zhuǎn)換器、數(shù)字接口電路集成在同一芯片上,使用I2C IP核可以方便地和處理器連接。實驗結(jié)果表明,該設(shè)計切實可行。

            4 結(jié)束語

            本設(shè)計基于和嵌入式系統(tǒng)技術(shù),實現(xiàn)了的要求。此設(shè)計可應(yīng)用于各種惡劣環(huán)境,稍加改進,也可適用于網(wǎng)絡(luò)信息家電、家庭安全等方面。隨著芯片技術(shù)和總線技術(shù)的發(fā)展,嵌入式遠程網(wǎng)絡(luò)化測控在工業(yè)中的應(yīng)用定會更加廣泛。


          上一頁 1 2 下一頁

          關(guān)鍵詞: SOPC 遠程測控

          評論


          相關(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); })();