采用ARM7的藍牙接入點的軟、硬件系統設計
3.1.2 FLASH存儲器 SST36VF160本文引用地址:http://www.104case.com/article/149153.htm
由于該系統是應用與工業現場以太網中,在軟件中必須加入相應的以太網規范標準,所以在系統設計中,在 cpu的外部拓展了 2M字節的 FLASH。SST39VF160是一個 1M×16的 CMOS多功能 FLASH器件,由 SST特有的高性能的 SupeRFlash技術制造而成。 SST39VF160功耗較低,工作電壓為 3.3V,具有高性能的編程功能,字編程時間為 14us。基于 SST39F160的這些優點選用這款 FLASH,在實踐中證明這款 FLASH能夠更方便和更低成本的滿足程序配置和數據存儲的要求。
3.1.3 藍牙模塊 BCM04是滿足自適應的可進行數據交換和語音通信的藍牙通信模塊。其體積小,為 17.5×15.0×2.3mm;工
作電壓為 1.8V,功耗較低;以 UART為主接口,另有語音接口、 SPI接口、 PIO口等,其結構框圖如圖 2所示; BCM04內部集成了 16Kbits的 EEPROM和 4Mbits的 FLASH/ROM,具有豐富的存儲器資源。
在設計中,使用了藍牙模塊的 UART口和微處理器 AT91R40008的串口 1相連,通過藍牙模塊向工業現場的無線設備發送和接收數據,在由 cpu,經工業以太網將數據傳送到上位機中,實現上位機對藍牙設備的訪問與監控。
3.1.4 網絡通信接口在設計中采用采用網絡接口將藍牙接入點接入工業以太網,數據由以太網傳遞到上位機中,實現工業現場的無線設備和上位機的通信。網絡隔離器采用的是 HR61H50L,網卡芯片使用的是 AX88796。
AX88796是臺灣 Asix公司推出的 NE2000兼容快速以太網控制器。其內部集成有 10/100 Mb/s自適應的物理層收發器和 8K×16位的 SRAM,支持 MCS-51系列、80186系列以及 MC68K系列等多種 CPU總線類型。 AX88796執行基于 IEEE802.3/IEEE802.3u 局域網標準的 10Mb/s和100Mb/s以太網控制功能,并提供IEEE802.3u兼容的媒質無關接口 MII(Media Independent Interface),用以支持在其它媒質上的應用。 AX88796的地址總線 SA[9:0]與數據總線 SD[15:0]分別與 CPU的地址/數據總線相連。 CPU通過 I/O讀寫 NE2000寄存器來控制 AX88796的工作狀態,通過遠程 DMA FIFOs與 AX88796的內部緩存 SRAM進行數據交換。SRAM與 MAC核之間進行 Local DMA將數據發送至 MAC層,再經由內部的 PHY層發送至 RJ45接口,或者經過 MII接口送至外部的物理層芯片。SEEPROM接口可以用來連接串行 EEPROM。EEPROM可用于存儲 MAC地址,供 AX88796每次初始化時讀取。
3.1.5 電源部分
電源采用的是以太網供電設備,該設備采用符合 802.3受電設備標準,輸出標準的 +24V,經過 LM2576-5、 AS1117-1.8和 AS1117-3.3電源芯片,電平轉換后,輸出藍牙接入點上的 cpu、存儲器、網卡芯片和藍牙模塊上所需的 1.8V和 3.3V電源。
3.1.6 串口通信
串口通信使用的是 MAX3232芯片。這里使用串口通信接口主要是為了調試藍牙模塊、 cpu和上位機之間的通信,及測試其通信性能。
3.2 軟件部分
在軟件設計部分,主要介紹一下藍牙模塊的通信原理。首先,初始化藍牙模塊,直到初始化成功。接著對通信模塊的各個端口進行定義。AT91R40008有 32位的 I/O口,設計時結合實際中的情況,考慮具體所用的端口,結合其他通信模塊定義這些端口。定義通信模塊端口完成以后,立即與現場無線設備進行連接。隨后,藍牙接入點開始搜索現場設備,并對現場設備進行讀寫,接收藍牙指令并更新。其藍牙模塊的通信流程圖如圖 3。
評論