91av视频在线观看_www性色_操操操操操操操操操操操操操操_久久中文字幕电影_日韩理伦片在线观看视频播放_欧美日韩成人网

  official blog  中文版 | ENGLISH

Customer Service Hotline:0517-86930968     13951262528

Current Location:Home > 技術文章 
基于IEEE802.11b的EPA溫度變送器設計
Updated:2019-7-1 10:43:09 Browse:1656 Close window Print this page
 摘要:介紹一種基于IEEE80211b的EPA溫度變送器的設計方案,闡述系統硬件和軟件結構,說明嵌入式Linux系統中驅動程序的開發過程。系統以S3C2410為核心器件,可以很好地完成溫度數據的采集處理,并可以通過IEEE80211b接入點與相關設備進行通信,且在基于EPA標準的無線局域網系統中進行了測試。
 
關鍵詞:EPA IEEE802.11b 嵌入式Linux 溫度變送器
 
引言
 
  IEEE802.11是IEEE無線局域網標準,主要用于用戶終端的無線接入。IEEE802.11只規定了開放式系統互聯參考模型的物理層和介質訪問子層,其MAC層利用載波監聽多路訪問/沖突避免(CSMA/CA)協議;定義了單一的MAC層和多樣的物理層,其物理層標準主要有IEEE802.11b、IEEE80211a和IEEE80211g。IEEE802.11b標準是IEEE802.11協議標準的擴展,最高可以支持11 Mbps的數據速率,運行在2.4 GHz的ISM頻段上,采用的調制技術是CCK,支持數據業務。
 
  本文詳細分析了采用S3C2410處理器平臺具體實現運用于EPA網絡的IEEE802.11b無線實時溫度采集器的開發流程,并對串口通信的調試手段及常見問題進行了探討。
 
1 溫度變送器的硬件設計
 
  溫度變送器系統平臺硬件系統功能如圖1所示。該平臺的核心器件是Samsung公司的處理器S3C2410,外部擴展了16 MB、16位的Flash內存和64 MB、32位的SDRAM。處理器S3C2410通過UART接口和溫度變送器相連,通過USB接口和一個IEEE802.11b網絡接口卡相連,通過RS232串口和外部PC相連。溫度變送器采集到的溫度數據輸入系統緩沖區中,處理器S3C2410可對緩沖數據直接進行相關處理;處理后的數據可以通過RS232串口傳送給外部宿主機PC,也可通過IEEE802.11b網絡接口卡發送到無線局域網上。
 
  S3C2410處理器功能十分強大,資源豐富。它內部集成了ARM公司的32位微處理器ARM920T,主頻最高可達203 MHz,具有獨立的16 KB指令Cache和16 KB數據Cache,還有LCD控制器、RAM控制器、NAND閃存控制器、3路UART、4路DMA、4路帶PWM的Timer、并行I/O口、8路10位ADC、觸摸屏接口、2個USB接口控制器和2路SPI。
 
  從外部溫度傳感器采集到的數據經S3C2410 CPU數據處理模塊傳回到IEEE802.11b USB接口卡;IEEE802.11b的無線通信模塊經IEEE802.11b的接入點傳到外部以太網絡中。
 
 
圖1硬件系統功能
 
2 溫度變送器的軟件系統設計
 
  溫度變送器軟件系統設計流程如圖2所示。系統分3步實現:① 為溫度變送器編寫內核驅動程序;② 編寫溫度數據采集應用程序,通過串口獲取溫度數據并進行相應的EPA報文打包處理;③ 利用無線網絡將處理數據發送給上位機。前面提到系統平臺上運行的是ARM Linux。在啟動后啟用了MMU,系統進入保護模式,所以應用程序不能直接讀/寫外設的I/O區域(包括I/O端口和I/O內存)。這時一般要借助于該外設的驅動來進入內核態完成這項工作。
 
 
圖2軟件系統設計流程
 
2.1 串口的驅動實現
 
  在Linux下,設備驅動程序可以看成Linux內核與外部設備之間的接口。設備驅動程序向應用程序屏蔽了硬件實現上的細節,使得應用程序可以像操作普通文件一樣來操作外部設備,可以使用和操作文件中相同的、標準的系統調用接口函數來完成對硬件設備的打開、關閉、讀/寫以及I/O控制操作; 而驅動程序的主要任務也就是要實現這些系統調用函數。本系統平臺使用的嵌入式ARM Linux系統在內核主要功能上與Linux操作系統沒有本質區別,所以驅動程序要完成的任務也一樣;只是編譯時使用的編譯器、部分頭文件和庫文件等要涉及具體處理器體系結構, 這些都可在Makefile文件中具體指定。當應用程序對設備文件進行諸如open、close、read、write等系統調用操作時,Linux內核將通過file_operations結構訪問驅動程序提供的函數。例如,當應用程序對設備文件執行讀操作時, 內核將調用file_operations結構中的read函數。在系統平臺上對串口數碼攝像頭驅動,首先把串口驅動模塊靜態編譯進內核,使平臺支持串口;再在須使用溫度采集時,使用insmode動態加載其驅動模塊。這樣溫度傳感器就可正常工作了,接著進行下一步——對溫度的采集編程。
 
2.2 溫度數據采集模塊
 
  在溫度變送器串口被驅動后,需要再編寫一個采集溫度的應用程序。根據嵌入式系統開發特征,先在宿主機上流程編寫應用程序;再使用交叉編譯器進行編譯、鏈接,生成目標平臺的可執行文件。宿主機與目標板通信采用打印終端的方式進行交叉調試, 成功后移植到目標平臺。編寫采集程序是在安裝Linux操作系統的宿主PC機上進行的,其程序流程如圖3所示。
 
 
圖3溫度數據采集程序
 
  程序運行流程如下:
 
  ① 初始化設備功能,發送03H給溫度變送器。如果初始化失敗,則重復發送初始化功能碼2次,若都失敗則返回;若成功則進入下一步。
  ② 進行數據查詢,查詢消息中的功能代碼告之被選中的從設備要實現何種功能。數據段包含了從設備要實現功能的任何附加信息,即讀取或修改的起始地址以及數據數量。CRC校驗為從設備提供了一種驗證消息內容是否正確的方法。 
  ③ 如果從設備產生一個正常的響應,則響應消息中的功能代碼是查詢消息中的功能代碼的回應。數據段包括了從設備收集的數據。如果有錯誤發生,則從設備將修改功能代碼以表明此回應是一個異常的回應;同時數據段中包含相應的錯誤代碼,CRC校驗用于主設備判斷響應幀內容的正確性。 
  ④ 將從設備得到的數據運用EPA協議棧進行數據的封裝,然后通過IEEE802.11b無線網卡發送到數據分析設備。
  ⑤ 根據對數據的處理,將得到返回的數據,程序再將返回數據寫入從設備。如果寫入失敗,則連續寫兩次,若仍失敗則跳出。
 
  系統采用主從通信技術, S3C2410處理器模塊作為主設備,溫度傳感器作為從設備。主設備可以對溫度傳感器進行初始化,并發出查詢指令;溫度傳感器根據主設備查詢指令實現相應的功能。S3C2410處理器模塊查詢的格式包括功能代碼、所有要發送的數據和CRC校驗域;從設備回應消息也包括相應的功能代碼、任何要返回的數據和CRC校驗域。如果在消息接收過程中發生錯誤,從設備將構造一錯誤幀并將其作為應答回應。程序中構造的幀格式如下:
 
  主設備查詢幀
 
 
  從設備響應幀
 
  當主設備查詢從設備時,它希望得到從設備的正常響應,但可能有3種處理情形:
 
  ① 從設備收到了主設備的查詢,且全部校驗正確,從設備就產生正確的響應。
  ② 從設備由于通信錯誤等沒有收到主設備的查詢,因此也就無法產生響應。這時主設備將通過超時判斷查詢的錯誤。
  ③ 從設備收到了主設備的查詢,但檢測出通信幀內容出錯(如CRC校驗出錯或非法的起始地址等),這時從設備將產生異常響應通知主設備相關的錯誤信息。
 
  最后將采集數據用EPA協議棧打包,并利用無線網絡進行傳輸。
 
2.3 無線網絡模塊
 
  無線溫度變換器的實時數據無線網絡模塊是將無線網卡注入內核,“插槽”驅動層通過API為PC卡服務層提供服務,編寫“插槽”層驅動就是實現這些API函數。PC卡服務層維護著一張函數表,記錄已登記的“插槽”驅動層的API函數,相應地提供了兩個接口函數用來登記和取消登記一個“插槽”驅動層的API函數。定義如下:
 
  int register_ss_entry(int nsock, ss_entry_t ss_entry);
  int unregister_ss_entry(int nsock, ss_entry_t ss_entry);
  typedef int (*ss_entry_t)(u_int sock, u_int cmd, void *arg);
 
  ◆ 函數register_ss_entry: 用來登記一個“插槽”驅動層服務函數。
  ◆ 函數unregister_ss_entry: 用來取消指定函數的登記,表明“插槽”層不再提供該服務。
  ◆ 具體服務函數ss_sentry: 該函數的編寫是核心。它包括3個參數: 第1個參數sock是插槽編號;第2個參數cmd是命令,即服務函數的編碼;第3個參數是一個void類型的指針,用來傳遞任意的參數。
 
  PCMCIA“卡和插槽服務”(Card and Socket Services)軟件規范要求插槽層提供的服務共有12項,Linux操作系統定義在include\pcmcia\ss.h文件里。
 
  enum ss_service {
    SS_RegisterCallback, SS_InquireSocket,
    SS_GetStatus, SS_GetSocket, SS_SetSocket,
    SS_GetIOMap, SS_SetIOMap, SS_GetMemMap, SS_SetMemMap,
    SS_GetBridge, SS_SetBridge, SS_ProcSetup
  };
 
3 測試
 
  首先在宿主機PC上使用交叉編譯器編譯、鏈接溫度數據采集程序,使之生成可執行代碼,然后移植到目標平臺上。為了進一步觀察采集的溫度數據效果,可在目標平臺帶網絡支持的基礎上編寫一個網絡通信程序,把采集到并處理成浮點型的溫度數據通過網絡傳輸到PC機上進行顯示。搭建無線溫度變送器的測試系統如圖4所示。
 
 
圖4IEEE802.11b
 
  無線溫度變送器的測試系統無線監控系統采集的基于S3C2410的IEEE802.11b無線溫度變送器的實時數據如圖5所示。
 
 
圖5IEEE802.11b
 
4 結論
 
  實際的溫度測量數據表明,基于IEEE802.11b的EPA溫度數據采集器可以很好地完成溫度數據的采集處理,并通過無線接入點與相關設備進行通信。另外,在基于EPA標準的無線局域網系統應用中,驗證了此設計的可行性。
Previous article: 雙金屬溫度計結構...
The next article: DDZ-Ⅲ與S系列溫度...

主要產品類別:溫度儀表  壓力儀表  流量計  液位計  校驗儀表    流量積算儀  電磁流量計價格法律聲明聯系我們 
本站關鍵詞匯:智能電磁流量計   蒸汽流量計    渦輪流量計   磁翻板液位計    一體化溫度變送器    壓力校驗臺  玻璃板液位計  污水流量計  衛生級電磁流量計  衛生型電磁流量計  
友情鏈接:液位計  流量計  
 CopyRight ©2012  德克森儀表(淮安)有限公司   www.cmutu.cn  版權所有  ICP備案編號:  蘇ICP備12059484號-1   蘇公網安備 32083102000129號  
電話:0517-86930968   聯系人:閔經理   手機:13951262528   傳真:0517-86930969   E-mail:dirksengroup@163.com   QQ:25291658

  技術支持上海seo優化Keywords:  玻璃板液位計   電磁流量計價格   壓力校驗臺   網站地圖   百度
在線客服系統
主站蜘蛛池模板: 国产乱码一区 | 亚洲高清一区二区三区 | 欧美一区二区黄色 | 99色婷婷| 亚洲a视频| 欧美二区在线播放 | 在线成人www免费观看视频 | 羞羞答答一区 | 成人性调教在线网站 | xoxo国产三区精品欧美 | 日韩综合 | 日韩黄色av电影 | 日本不卡中文字幕 | 欧美一区二区三区精品 | 一级毛片,一级毛片 | 狠狠色狠狠色综合日日五 | 免费啪啪| 国产成人精品一区二区色戒 | 国产精品视频在线观看免费 | 91精品粉嫩初高中同学在线观看 | 欧美精品激情 | 亚洲一区在线视频 | 亚洲一区二区三区高清 | 亚洲天天操 | 狠狠躁日日躁夜夜躁老司机 | 精品国产 | 欧美色视频网站 | 四虎影视免费在线观看 | 全部孕妇丰满孕妇孕交 | 国产黄色免费 | 99精品在线观看 | 日韩在线一二三区 | 黄色软件下载安装大全 | 日韩精品在线一区二区三区 | 一级毛片一级毛片一级毛片 | 真人一级毛片免费 | 日日干综合 | 三级精品在线观看 | 天天色图片 | 亚洲精品女 | cao人人|