<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 嵌入式系統在曙光4000A大規模機群監控系統中的應用

嵌入式系統在曙光4000A大規模機群監控系統中的應用

作者: 時(shí)間:2009-04-02 來(lái)源:網(wǎng)絡(luò ) 收藏

  對于采集卡主芯片的選擇,由于需要支持TCP/IP網(wǎng)絡(luò ),需要支持IIC接口,同時(shí)還可以支持內存控制以及Flash控制器,因此選擇了三星公司的ARM芯片S3C4510B,該芯片采用ARM7TDI內核,32位RISC架構。對于操作的選擇,uClinux具有免費、開(kāi)源、可裁減性好、對TCP/IP網(wǎng)絡(luò )協(xié)議支持的較好并且穩定性高等優(yōu)點(diǎn),因此選擇uClinux作為操作。同時(shí)由于IIC總線(xiàn)技術(shù)有連接簡(jiǎn)單、數據傳輸速率高、高可靠性等優(yōu)點(diǎn),所以采集卡的主芯片和采集單片機使用IIC總線(xiàn)相連。

  2.2 采集卡(多路器)的功能

  采集卡的主要作用,一方面是從與每組節點(diǎn)機相連的采集單片機中通過(guò)IIC總線(xiàn)讀取節點(diǎn)機的信息,另一方面監聽(tīng)自身的事先約定的端口,當有連接請求并收到發(fā)送數據的命令后送出從采集卡中讀取的數據。硬件上已經(jīng)有了IIC和網(wǎng)絡(luò )接口,軟件方面,可以從網(wǎng)上資源中獲取S3C4510B芯片的IIC控制器和網(wǎng)絡(luò )驅動(dòng)程序,然后集成到uClinux操作中。此外還需要一段采集程序實(shí)現系統的主要功能。

  采集程序根據系統需要的功能,分為兩個(gè)部分,一部分定時(shí)從IIC總線(xiàn)讀取數據,另一部分監聽(tīng)某個(gè)約定端口、收取命令并發(fā)送數據。這兩個(gè)部分分別由兩個(gè)線(xiàn)程來(lái)執行。兩個(gè)線(xiàn)程共享同一塊數據緩沖區。線(xiàn)程一通過(guò)IIC總線(xiàn)讀取采集卡中的數據,寫(xiě)入緩沖區中,線(xiàn)程二一方面讀取緩沖區中的數據發(fā)送,另一方面在發(fā)送完畢后,把已經(jīng)發(fā)送了的緩沖區填寫(xiě)為無(wú)效數據。由于數據緩沖區屬于臨界區域,這兩個(gè)線(xiàn)程在使用緩沖區的時(shí)候要嚴格互斥。

  程序的主體結構如下:

  read_iic(){ //線(xiàn)程一運行的函數

  打開(kāi)iic設備;

  while(1) {

  讀取iic設備的數據;

  寫(xiě)入全局緩沖區中;

  休眠一定的時(shí)間;

 ?。?p> ?。?p>  send_data() { //線(xiàn)程二運行的函數

  綁定本地端口;

  監聽(tīng)本地端口;

  while(1) {

  收到命令;

  發(fā)送全局緩沖區中的數據;

  填寫(xiě)無(wú)效數據;

 ?。?p> ?。?p>  main() {

  初始化全局緩沖區;

  創(chuàng )建線(xiàn)程一;

  創(chuàng )建線(xiàn)程二;

 ?。?p>  2.3 運行情況以及發(fā)展方向

  在實(shí)際運行1周后,集群運行狀況良好,其中采集卡功能良好,在規定的延遲內數據傳輸流暢,沒(méi)有出現數據漏傳、丟失等現象,說(shuō)明中的運行很穩定,發(fā)揮了預期的作用。

  在將來(lái)的升級工作中,可以考慮在這個(gè)采集卡中加入嵌入式數據庫技術(shù),把收到的數據存儲起來(lái),并且和uClinux提供的Web服務(wù)結合,在Web服務(wù)中顯示監控系統的數據,這樣就可以在任何一臺機器上以瀏覽網(wǎng)頁(yè)的形式監控整個(gè)集群,從而節省了監控節點(diǎn)的開(kāi)銷(xiāo),提高了采集卡的利用率。

三:結束語(yǔ)

  體積小、靈活性高,已經(jīng)被到各行各業(yè),例如汽車(chē)、家電、航空、精密儀器等等。本文介紹的監控系統中的,結合了ARM技術(shù)、IIC總線(xiàn)技術(shù),采用了uClinux嵌入式操作系統,體積小、可擴展性好、成本低,數據流向清晰明確,現在已經(jīng)作為配套產(chǎn)品提供給用戶(hù)。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

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

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>