在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RISC V的I2C操作

XL FPGA技術交流 ? 2024-11-01 11:06 ? 次閱讀


接口處理

top接口

output system_i2c_0_io_sda_writeEnable,

output system_i2c_0_io_sda_write,

input system_i2c_0_io_sda_read,

output system_i2c_0_io_scl_writeEnable,

output system_i2c_0_io_scl_write,

input system_i2c_0_io_scl_read,

soc接口處理

.system_i2c_0_io_sda_write(system_i2c_0_io_sda_write),

.system_i2c_0_io_sda_read(system_i2c_0_io_sda_read),

.system_i2c_0_io_scl_write(system_i2c_0_io_scl_write),

.system_i2c_0_io_scl_read(system_i2c_0_io_scl_read),

WriteEnable信號的處理

I2CSDASCL對應FPGA雙向IO,需設置為弱上拉。

I2C對應的三態門的OE信號:需要賦值為I2C SDA/SCLwrite信號;rtl中的表述如下:

主要原因在于:i2c通信過程中,當總線空閑時,兩根線均為高電平。連到總線上的任一器件輸出的低電平,都將使總線的信號變低,即各器件的SDASCL都是線""關系。

2)引腳在輸出信號的同時還將引腳上的電平進行檢測,檢測是否與剛才輸出一致,為"時鐘同步""總線仲裁"提供了硬件基礎。

assign system_i2c_0_io_sda_writeEnable = !system_i2c_0_io_sda_write;

assign system_i2c_0_io_scl_writeEnable = !system_i2c_0_io_scl_write;

Interface配置示例


I2C寄存器設置

在I2C的設置中第一步是要配置寄存器。寄存器的說明在ds文檔中。

tsuData中,1代表10ns;

Timeout中,1表示10ns

tLow和tHigh的1代表10ns




10.1.3 軟件部分(Risc V

l I2C通信主要包括以下幾個部分:

1、主設備發送起始位(Start

2、主/從發送數據(TxData(注:軟件處理時,主發送從設備的地址和讀/寫位,與發送數據處理方式相同)

3、主/從接收數據(RxData

4、主/從發送應答信號(ACK

5、主設備發送停止位(Stop


l 對應的C函數:

1、主設備發送起始位(Start

i2c_masterStartBlocking(I2C_CTRL);//master send start signal

2、主/從發送數據(TxData

i2c_txByte(I2C_CTRL, 0xC0);//master/slave send data

3、/從接收數據(RxData

i2c_rxData(I2C_CTRL)//master/slave receive data

4、主/從發送應答信號(ACK

i2c_txAckBlocking(I2C_CTRL);//master/slave send ACKi2c_txNackBlocking(I2C_CTRL);//master/slave send NaCK#(不需要發送ACK,但是需要等待一個應答周期的時候,用Nack函數)

5、主設備發送停止位(Stop

i2c_masterStopBlocking(I2C_CTRL);//master send stop

l 小結:

RISC V中提供的關于I2C的函數,相當于把I2C通信過程中各個狀態進行了分解的,上述提到的各個函數功能,除了必須通過I2C主設備實現的功能:發送startstop之外,函數本身并沒有主從之分;

當需要RISC V中的I2C做從設備時,只需監控總線狀態(如是否接收到有效的數據等),同時調用對應的函數,給主設備發送應答信號,根據主設備提供的指令,接收/發送相應的數據即可;

硬件驗證平臺


原文標題:RISC V的I2C操作

文章出處:【微信公眾號:易靈思FPGA技術交流】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1630

    文章

    21801

    瀏覽量

    606352
收藏 人收藏

    評論

    相關推薦

    I2C總線通信原理 如何設計I2C總線電路

    I2C總線通信原理 I2C(Inter-Integrated Circuit)總線是一種用于集成電路之間進行通信的串行通信協議。它最早由飛利浦公司(現被恩智浦電子收購)于1982年推出,是一種簡單
    的頭像 發表于 01-31 15:01 ?186次閱讀

    I2C總線與Arduino的接口示例

    在現代電子設計中,I2C總線因其簡單性和靈活性而廣受歡迎。它允許多個設備共享同一通信線路,從而節省空間和成本。Arduino,作為一個多功能的微控制器平臺,自然也支持I2C通信。 I2C總線
    的頭像 發表于 01-17 15:34 ?280次閱讀

    I2C總線的工作模式介紹

    在現代電子系統中,I2C總線作為一種多主機、多從機的串行通信協議,扮演著至關重要的角色。它允許多個設備共享同一總線,進行數據傳輸,從而簡化了系統設計并降低了成本。 I2C總線的基本特性 I2C總線由
    的頭像 發表于 01-17 15:32 ?183次閱讀

    I2C總線設備地址設置方法

    通常是一個7位或10位的數字,用于標識總線上的每個設備。在7位尋址模式下,地址范圍是0x00到0x7F,而在10位尋址模式下,地址范圍是0x000到0x3FF。I2C地址的最低位(LSB)通常用于指示讀/寫操作。 硬件地址設置 1. 地址引腳配置 許多
    的頭像 發表于 01-17 15:17 ?349次閱讀

    I2C總線應用實例分析

    在現代電子系統中,I2C總線因其簡單、靈活和高效的特點而被廣泛應用于各種設備之間的通信。 I2C總線概述 I2C總線由Philips(現為NXP)在1980年代初期開發,最初用于音頻和視頻設備
    的頭像 發表于 01-17 15:09 ?207次閱讀

    I2C協議的基礎知識

    本文從I2C協議的概述開始,描述協議的歷史、不同速度模式、物理層和數據幀結構,最后介紹I2C混合電壓系統中電平兼容性以及上拉電阻大小計算。
    的頭像 發表于 10-22 15:51 ?708次閱讀
    <b class='flag-5'>I2C</b>協議的基礎知識

    使用USCI I2C主站

    電子發燒友網站提供《使用USCI I2C主站.pdf》資料免費下載
    發表于 10-21 09:30 ?0次下載
    使用USCI <b class='flag-5'>I2C</b>主站

    I2C噪聲毛刺濾波

    電子發燒友網站提供《I2C噪聲毛刺濾波.pdf》資料免費下載
    發表于 10-08 14:39 ?5次下載
    <b class='flag-5'>I2C</b>噪聲毛刺濾波

    了解I2C總線

    電子發燒友網站提供《了解I2C總線.pdf》資料免費下載
    發表于 10-08 11:13 ?2次下載
    了解<b class='flag-5'>I2C</b>總線

    I2C基本指南

    電子發燒友網站提供《I2C基本指南.pdf》資料免費下載
    發表于 09-10 09:40 ?0次下載
    <b class='flag-5'>I2C</b>基本指南

    CAN轉I2C橋接器

    電子發燒友網站提供《CAN轉I2C橋接器.pdf》資料免費下載
    發表于 08-28 11:10 ?0次下載
    CAN轉<b class='flag-5'>I2C</b>橋接器

    I2C邏輯選型指南

    電子發燒友網站提供《I2C邏輯選型指南.pdf》資料免費下載
    發表于 06-20 16:20 ?2次下載

    如何通過cyusb3014的i2c操作界面操作ads1119的i2c接口?

    我使用 cyusb3014 作為 i2c 設備的主機,并使用 ads1119 采集電壓。 我需要使用 i2c 操作相關指令。 例子中提供的示例只顯示了讀寫步驟,即 dev_ Addr+reg_
    發表于 05-23 07:30

    什么是I2C協議 I2C總線的控制邏輯

    在實際使用過程中,I2C比較容易出現的一個問題就是死鎖 ,死鎖在I2C中主要表現為:I2C死鎖時表現為SCL為高,SDA一直為低。
    發表于 03-12 09:17 ?1178次閱讀
    什么是<b class='flag-5'>I2C</b>協議 <b class='flag-5'>I2C</b>總線的控制邏輯

    GD32 MCU硬件I2C不可靠不如軟件I2C?來看看紅楓派開發版的硬件I2C驅動如何做到穩得一批

    在一個評論中,看到網友對硬件I2C的討論,硬件I2C Busy找不到原因、軟件I2C穩得一批。
    的頭像 發表于 02-23 09:37 ?2904次閱讀
    GD32 MCU硬件<b class='flag-5'>I2C</b>不可靠不如軟件<b class='flag-5'>I2C</b>?來看看紅楓派開發版的硬件<b class='flag-5'>I2C</b>驅動如何做到穩得一批
    主站蜘蛛池模板: 国模无水印一区二区三区 | 在线看免费视频 | 天天做天天爱天天综合网2021 | 日韩毛片在线 | 日韩一级片在线 | 两性色午夜视频免费老司机 | 天天色操 | 在线视频观看免费 | 久久久99精品免费观看精品 | 天天插天天射天天操 | 久久九九色 | 欧美成人猛男性色生活 | 日本丰满毛茸茸熟妇 | 久久成人综合网 | 夜夜春夜夜爽 | 91大神精品全国在线观看 | 国内精品免费视频精选在线观看 | 美女被日出白浆 | 夜夜夜夜曰天天天天拍国产 | 91久久夜色精品国产网站 | 2022第二三四天堂网 | 亚洲欧美一区二区久久香蕉 | 3344成年在线视频免费播放男男 | 性欧美高清 | 伊人久久影院大香线蕉 | 亚洲午夜免费视频 | 日本高清视频wwww色 | 丁香激情综合网 | 婷婷成人丁香五月综合激情 | 国产黄色在线网站 | 韩国在线a免费观看网站 | 午夜看片影院在线观看 | 国产精品久久久久久吹潮 | 在线视频免费播放 | 夜夜操天天操 | 国产性片在线观看 | 中文字幕一区二区三区视频在线 | 在线97| aⅴ天堂| 久久这里精品青草免费 | 中文字幕在线观看一区二区三区 |