久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2561|回復: 0
打印 上一主題 下一主題
收起左側

基于AM4376/79 ARM+FPGA的I2C通信案例分享

[復制鏈接]
跳轉到指定樓層
樓主
1.1                 I2C通信核心板簡介
本案例主要基于創龍科技的AM4376/AM4379 ARM Cortex-A9 + XilinxSpartan-6 FPGA處理器設計的異構多核工業級核心板進行講解:

創龍SOM-TL437xF是一款基于TI Sitara系列AM4376/AM4379 ARM Cortex-A9 + Xilinx Spartan-6 FPGA處理器設計的異構多核工業級核心板。核心板內部AM437x與Spartan-6通過GPMC、I2C通信總線連接。通過工業級B2B連接器引出LCD、CAMERA、GPMC、CAN等接口。核心板經過專業的PCB Layout和高低溫測試驗證,穩定可靠,可滿足各種工業應用環境。
用戶使用核心板進行二次開發時,僅需專注上層運用,降低了開發難度和時間成本,可快速進行產品方案評估與技術預研。

1

2

1.2                 I2C通信案例功能
案例功能:在FPGA端實現I2C Slave,并內置用戶可讀寫寄存器、LED寄存器、KEY寄存器。ARM端作為Master,可通過核心板內部與FPGA連接的I2C0接口讀寫FPGA端I2C Slave用戶可讀寫寄存器0x00,LED寫寄存器0x01點亮或熄滅FPGA端LED(寫1則點亮,寫0則熄滅),查看KEY寄存器0x02檢測FPGA端KEY狀態。
1.3                 I2C通信操作說明
將產品資料“4-軟件資料\Demo\FPGA\i2c_slave\bin\i2c_test_6slx16.bit”可執行程序加載至FPGA端。進入評估板文件系統后,執行如下命令可查看到I2C0總線上的掛載設備,其中0x2a為FPGA端I2C Slave的地址。
Target#mkdir/configfs
3

執行如下命令進行用戶可讀寫寄存器0x00的讀寫測試。
Target#i2cset -f -y 0 0x2a 0x00 0x55          //寄存器0x000x55
Target#i2cget -f -y 0 0x2a 0x00                  //讀取寄存器0x00值為0x55
4

執行如下命令進行LED寄存器0x01的寫測試,實現FPGA端LED的亮滅控制。
Target#i2cset -f -y 0 0x2a 0x01 0xe0          //LED寄存器0x010xe0,點亮FPGALED5LED6LED7
Target#i2cset -f -y 0 0x2a 0x01 0x00          //LED寄存器0x010x00熄滅FPGALED5LED6LED7

5

執行如下命令進行KEY寄存器0x02的讀測試,實現FPGA端KEY的狀態檢測。
Target#i2cget -f -y 0 0x2a 0x02           //讀取KEY寄存器0x02,值為0xe0
6

       按下FPGA端按鍵KEY6并保持按下狀態,再執行如下命令。
Target#i2cget -f -y 0 0x2a 0x02           //讀取KEY寄存器0x02,值為0xc0
7

       按下FPGA端按鍵KEY7并保持按下狀態,再執行如下命令。
Target#i2cget -f -y 0 0x2a 0x02           //讀取KEY寄存器0x02,值為0xa0
8

1.4                 I2C通信管腳約束
FPGA端管腳約束請查看產品資料“4-軟件資料\Demo\FPGA\i2c_slave\project\i2c_slave_6slx16\constraints\i2c_test.ucf”文件。
1.5                 I2C通信關鍵代碼
(1)   定義I2C、LED、KEY、時鐘IO。
9hdl/i2c_test.v

(2)   輸出100MHz時鐘給I2C Slave模塊。
10hdl/i2c_test.v

(3)   調用I2C Slave模塊。
11hdl/i2c_test.v

I2C Slave模塊程序來源參考:https://opencores.org/projects/i2cslave
(4)   根據LED寄存器的值控制LED,并將KEY狀態值保存至KEY寄存器。
12hdl/i2c_test.v

(5)   設置I2C Slave地址為0x2a。
13hdl/i2cslave/i2cSlave_define.v

RTL原理圖如下所示:
14

圖片1.png (1.01 MB, 下載次數: 94)

圖片1.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品日韩欧美 | 欧美精品福利视频 | 久久99久久99精品免视看婷婷 | 欧美一区二区三区的 | 91精品亚洲 | 日韩精品在线观看免费 | 国产最新视频在线 | 国产中文字幕在线观看 | 91热在线| 日韩免费在线观看视频 | 欧美一区二区三区国产精品 | 97免费视频在线观看 | 国产乱码精品一区二区三区中文 | 精品久久久久久久人人人人传媒 | 久久国产香蕉 | 精品久久久久久国产 | 在线观看h视频 | 国产伦一区二区三区 | 久久99视频精品 | 久久男人天堂 | 欧美日韩精品一区二区 | 欧美精品在线视频 | h片在线免费观看 | www.亚洲成人网 | 一级毛片黄片 | 日韩精品一区二区三区高清免费 | 精品久久精品 | 午夜精 | 特级生活片 | 欧美视频免费在线 | 欧美精品一二三区 | 日日夜夜天天 | 99热这里都是精品 | 国产激情在线播放 | 9999国产精品欧美久久久久久 | 国产一区二区视频在线观看 | 亚洲成人激情在线观看 | 狠狠干狠狠操 | 中文天堂在线观看 | 精品欧美一区免费观看α√ | 91精品国产综合久久久亚洲 |