本開發板提供原理圖,MODBUS-TCP原代碼(ARM、FPGA),同時提供完善的技術支持。隨機附帶FPGA的開發全程視頻。
擴展板另售: http://item.taobao.com/item.htm?spm=0.0.0.0.CEj8hB&id=19398679093
本開發板採用ARM+FPGA+以太網的結構,具有模塊化強,可作為核心板,經過實踐難,具有很強的穩定性和可靠性。
ARM採用當今流行的CORTEX-M3系列MCU--STM32F205,STM32F205屬於CORTEX-M3系列MCU,主頻提升到120MHz,與STM32F10X系列相比,性能進一步提升。
FPGA採用基於FLASH架構的ACTEL公司ProASIC3系列FPGA—A3P250Q208,與Altera公司EP1C3(Cyclone1)、EPM2210(CPLD)以及XILINX的XC2S150、XC3S200、XCV150有相近的可編程資源。A3P250屬於ProASIC3系列FPGA,ProASIC3系列基於Flash技術FPGA包括ProASIC3/E、ProASIC3 nano和ProASIC3L,在功耗、價格、性能、密度和特點方面實現了突破,適用於當今最嚴苛的大批量應用。除了提供商用和工業溫度器件以支持便攜、消費電子、工業、通信和醫療應用之外,Actel還提供經特別甄選的汽車用和**ProASIC3 FPGA產品。
主要特點:
1、低功耗非常有限的上電電流浪湧,無大電流過渡週期,能實現最大節能,這兩種現象在多數FPGA中存在。提供低動態功耗。
2、成本優化、可重編程、非易失性存儲,上電即用,。
3、利用128位Flash鎖和Flash技術的固有優勢,為可編程邏輯設計提供最堅固的安全保護
4、增強的I/O結構
5、具有由大氣中子引發配置數據損失的免疫能力(固件錯誤)
6、提供汽車(T-Grade)和**溫度級別產品
網絡芯片採用W5300芯片,內部集成硬件TCP/IP核,支持100M/10M以太網,通信速度快,編程簡單。
程序說明:
本人在多個產品的開發實踐中發現,對於工業產品開發,靠提高CPU的速度來滿足的功能要求一般並不可取,這樣會帶來設計成本的大幅增加,因此對於電子工程師更應該從產品設計的結構和程序優化上來提高產品性能。本實驗板的例程完成自己編寫,從最初的寄存器定義到其中的部分功能函數的實現,並未使用原ST公司提供的函數庫,這樣有利於瞭解不同寄存器配置的詳細過程,加深學習效果,有利於將來程序的優化。
在「原程序」文件中包含A3P250的原程序和STM32F205的原程序,A3P250的程序用Libero Soc v10.0打開,STM32F205的程序用KEIL v4.34打開
板卡管腳分配說明:
一、板載主要資源
1、MAX706復位電路,帶硬件看門狗
2、板載64Kbit鐵電存儲器,最高存儲速度20Mbit/s,比EEPROM或SPI接口的FLASH存儲速度更快,從而提高系統的整體速度。
3、ARM採用STM32F205ZGT6,工作主頻120MHz;FPGA採用A3P250Q208,配置40MHz有源晶振。
二、主要端子說明
J1—IO擴展接口模塊
J2—IO擴展接口模塊
J3—A3P250Q208 JTAG接口
P1—RS232接口
J4—RJ45 100M以太網
J5—STM32F205 JTAG仿真器接口
三、ARM管腳分配
1、PA接口
PA0~3—由端子輸出,由ARM可配置為模擬輸入或通用IO接口。
PA4~7—已配置為ARM SPI輸出,外擴展了FM25CL64鐵電存儲器。接口兼容同相同封裝的串行FLASH存儲器。
PA8~12—引入FPGA,由用戶根據需要自行配置。
PA13~15—ARM JTAG調試口。
2、PB接口
PB0— 硬件看門狗餵狗引腳。
PB0— 空。
PB2— BOOTLOADER功能引腳,未引出。
PB3~4— ARM JTAG調試口。
PB5~9— W5300網絡控制接口
PB10~11— 串口UART3
PB12~15—引入FPGA,由用戶根據需要自行配置。
3、PC接口
PC0~5— 空
PC6~15— W5300地址線
4、PD接口
PD0~15— ARM與FPGA並口通信的數據線
5、PE接口
PE0~15—引入FPGA,由用戶根據需要自行配置。
6、PF接口
PF0~15—W5300數據線。
7、PG接口
PG0~15—引入FPGA,由用戶根據需要自行配置。
四、FPGA資源分配
本實驗板提供的例程包括一個16位的通用接口,地址線4位,地址空間16個,輸出10個(16位寄存器)。
信號說明:
Reset:全局異步復位信號,復位寄存器的值,由ARM控制。
Clk_40M:板載40MHz有源晶振,為系統提供時鐘。
NWR:寫控制信號,由ARM控制。
NRD:讀控制信號,由ARM控制。
ADD0-ADD3:地址總線,由ARM控制。
Dat[15:0]:16位數據線,由ARM控制。
In0-in15:16個輸入信號,由J2端子的IO47~IO62提供。
Reg0[15:0]:16位寄存器輸出信號,映射到J1端子的IO1~IO16。
Reg1[15:0]:16位寄存器輸出信號,映射到J1和J2端子的IO17~IO32。
Reg2[13:0]:13位寄存器輸出信號,映射到J2端子的IO33~IO46。
Reg3~9[15:0]:7個16位寄存器,為內部用戶自定義內容。
五、外形尺寸
**括號內數據為英制(mil),其他數據為公制(mm)
六、板載網絡測試
板內已帶網絡通信測試程序,網絡協議支持MOBUS-TCP的16號和6號測試方法如下:
1、設置計算機IP地址
計算機IP地址可設置為除了192.168.27.16(為核心板的服務器地址)以外的其他同網段(192.168.27.xx.)的網絡地址。
2、打開ModScan32應用程序
3、設計MODBUS POINT Type
4、設置連接
5、設置通信協議、IP地址及端口號
6、設置傳輸模式
選擇RTU模塊
7、進行數據測試
完成1-6步的設置後,就可以進行通信啦!設置寄存器的地址內容,就可以得到相應FPGA內部寄存器或ARM接口的測試。
MODBUS_TCP數據包: