日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

3天內不再提示

從實測的IIC波形入手,帶你看到真實的IIC樣子

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-08-25 10:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


單片機的朋友都知道IIC通信這個工具,但好多人只是會用,內部的原理不求甚解,或是想要了解其原理,但卻對抽象的時序描述一頭霧水。本文將從實測的IIC波形入手,帶你看到真實的IIC樣子,進而去理解IIC的通信原理。

1IIC基礎知識

首先復習一下IIC基礎知識,這部分看不懂的請先帶著疑問,然后我們通過分析IIC的真實波形,這些疑問可能就豁然開朗了~

1.1 IIC是什么

IIC(Inter Integrated Circuit,集成電路總線)是一種由 PHILIPS 公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設備。它是由數(shù)據(jù)線 SDA時鐘 SCL 構成的串行總線,可發(fā)送和接收數(shù)據(jù)。在 CPU (單片機)與IIC模塊之間、IIC模塊IIC模塊之間進行雙向傳送。

IIC的一些特點:

  • IIC是半雙工,而不是全雙工

  • IIC是真正的多主機總線,(對比SPI在每次通信前都需要把主機定死,而IIC可以在通訊過程中,改變主機),如果兩個或更多的主機同時請求總線,可以通過沖突檢測和仲裁防止總線數(shù)據(jù)被破壞

  • 起始和終止信號都是由主機發(fā)出的,連接到IIC總線上的器件,若具有IIC總線的硬件接口,則很容易檢測到起始和終止信號

  • 起始信號后必須發(fā)送一個7位從機地址+1位方向位,用“0”表示主機發(fā)送數(shù)據(jù),“1”表示主機接收數(shù)據(jù)。

  • 每當主機向從機發(fā)送完一個字節(jié)的數(shù)據(jù),主機總是需要等待從機給出一個應答信號,以確認從機是否成功接收到了數(shù)據(jù)

  • 起始信號是必需的,結束信號和應答信號,都可以不要

:實際使用中,一般是單片機作為主機,其它器件作為從機,單片機先向器件發(fā)送信息表示要讀取數(shù)據(jù),之后轉變傳輸方向,器件發(fā)送數(shù)據(jù)到單片機。

1.2 IIC物理連接

使用IIC通信的IIC器件有很多,比如陀螺儀加速度計MPU6050,EEPROM存儲芯片AT24C02等,通過IIC總線,可以與單片機之間進行數(shù)據(jù)傳輸。

  • IIC通信線只有只有兩根,數(shù)據(jù)線SDA的高低電平傳輸2進制的數(shù)據(jù),時鐘線SCL通過方波信號提供時鐘節(jié)拍

  • 多個IIC器件可以并聯(lián)在IIC總線上,每個器件有特定的地址,分時共享IIC總線

  • 實際使用IIC當然還要連接電源以及共地哦

f50da7be-2406-11ed-ba43-dac502259ad0.png

1.3 IIC時序

網上查找IIC的基礎知識,可能會搜到這樣的時序圖:

f51c6556-2406-11ed-ba43-dac502259ad0.png

看起來好復雜的樣子,這時可能一部分人就放棄思考了。

1.3.1 IIC起始結束信號

好吧,換個簡單點的圖,你也可能會搜到這樣的圖:

f52b62fe-2406-11ed-ba43-dac502259ad0.jpg

這張圖看起來更簡單一些,描述了IIC的起始和停止條件:

  • 起始:時鐘線SCL為高時,數(shù)據(jù)線SDA由高到低

  • 停止:時鐘線SCL為高時,數(shù)據(jù)線SDA由低到高

注:SDA和SCL同時為高時,為IIC總線的空閑狀態(tài)

1.3.2 IIC應答

再來看下面這張圖:

f53c9ee8-2406-11ed-ba43-dac502259ad0.jpg

這表示IIC的應答機制

  • 下面的波形:SCL,主機產生的時鐘脈沖

  • 上面的波形:SDA,主機發(fā)送的8位數(shù)據(jù)

  • 中間的波形:SDA,從機在第9個時鐘信號進行拉低回應,表示收到了主機發(fā)來的數(shù)據(jù),拉高則表示不應答

注:實際上,上面和中間是同樣的SDA線,這里只是分開示意。因為IIC應答是一種相互關系,單片機發(fā)數(shù)據(jù)給IIC器件,IIC器件要進行應答,表示收到了數(shù)據(jù),同樣,單片機接收IIC器件的數(shù)據(jù)后,也要給IIC器件一個應答。

既然發(fā)送完都需要對方回應,那什么時候使用不應答呢?就是在讀取到本次數(shù)據(jù)后,如果不需要繼續(xù)讀取,則發(fā)送非應答,對方以為你沒收到這次數(shù)據(jù),則就不會繼續(xù)發(fā)送了。

1.3.3 IIC完整傳輸時序

f54f5150-2406-11ed-ba43-dac502259ad0.png

  • 開始標志(S)發(fā)出后,主設備會傳送一個7 位的Slave 地址,并且后面跟著一個第8位,稱為Read/Write 位。

  • R/W 位表示主設備是在接受從設備的數(shù)據(jù)還是在向其寫數(shù)據(jù)。

  • 然后,主設備釋放SDA 線,等待從設備的應答信號(ACK)。每個字節(jié)的傳輸都要跟隨有一個應答位。

  • 應答產生時,從設備將SDA 線拉低并且在SCL 為高電平時保持低。

  • 數(shù)據(jù)傳輸以停止標志(P)結束,然后釋放總線。但主設備也可以產生重復的開始信號去操作另一臺從設備,而不發(fā)出結束標志。

  • 所有的SDA 信號變化都要在SCL 時鐘為低電平時進行,除了開始和結束標志

1.4 常用的數(shù)據(jù)收發(fā)方式(時序)

上面1.3小節(jié)是IIC的基礎時序,在實際使用中,一般是對某個IIC器件的某個寄存器進行讀寫操作,因此,對于寄存器的讀寫操作,還要遵循下面的組合時序邏輯。

1.4.1 寫一個字節(jié)

用于對IIC器件某個寄存器的配置,如對MPU6050的某些參數(shù)進行設置。

f56105bc-2406-11ed-ba43-dac502259ad0.png

  • 寫寄存器時,主設備除了發(fā)出開始標志和地址位,還要加一個R/W 位,0 為寫,1 為讀

  • 在第9 個時鐘周期(高電平時),MPU6050 產生應答信號

  • 主設備開始傳送寄存器地址,并接到應答

  • 然后開始傳送寄存器數(shù)據(jù),仍然要有應答信號

  • 最后主設備發(fā)送停止信號。

1.4.2 連續(xù)寫多個字節(jié)

對連續(xù)地址的寫入,這個用的較少。

f570396a-2406-11ed-ba43-dac502259ad0.png

通信時序與上面的“寫一個字節(jié)”類似,上面是寫一個字節(jié)后就停止了,若要連續(xù)寫,則繼續(xù)寫即可,只要可以收到從機Ack。

1.4.3 讀一個字節(jié)

用于讀取IIC器件某個寄存器的數(shù)值。

f57ffa8a-2406-11ed-ba43-dac502259ad0.png

  • 首先由主設備產生開始信號,然后發(fā)送從設備地址位和一個寫數(shù)據(jù)位,等待應答

  • 然后發(fā)送寄存器地址,才能開始讀寄存器

  • 收到應答信號后,主設備再發(fā)一個開始信號,然后發(fā)送從設備地址位和一個讀數(shù)據(jù)位

  • 然后,作為從設備的MPU6050 產生應答信號并開始發(fā)送寄存器中的數(shù)據(jù)

  • 通信以主設備產生的拒絕應答信號(nACK)和結束標志(Stop)結束

  • 拒絕應答信號(nACK)產生定義為SDA 數(shù)據(jù)在第9 個時鐘周期一直為高

1.4.4 連續(xù)讀多個字節(jié)

也是用于讀取IIC器件某個寄存器的數(shù)值,當某些數(shù)據(jù)一位字節(jié)不夠表示,或有一組連續(xù)的數(shù)據(jù)需要讀時,可以使用該模式。

f58fbb82-2406-11ed-ba43-dac502259ad0.png

通信時序與上面的“讀一個字節(jié)”類似,上面是讀一個字節(jié)后就nAck叫停,若要連續(xù)寫,則發(fā)送Ack,直到不需要繼續(xù)讀時再回復nAck。

復習了這么多,之前對IIC懵懵懂懂的是否依然犯迷糊,好了,現(xiàn)在從理論進入實踐,看看真實的IIC是什么樣子。

2初識IIC真實波形

下面這張圖(請橫屏觀看)是通過示波器抓取的IIC波形,可以看到:

  • 時鐘線SCL是一種間歇性的方波(需要通信時才產生方波)

  • 數(shù)據(jù)線SDA根據(jù)SCL提供的節(jié)拍,高電平代表數(shù)據(jù)1,低電平代表數(shù)據(jù)0

  • 沒有數(shù)據(jù)傳輸時,SDA和SCL均為高電平狀態(tài)

  • 起始信號后,數(shù)據(jù)是9個一組,包括8位的數(shù)據(jù)和另一方的1位回應

圖中紅色數(shù)字表示單片機發(fā)送的8位數(shù)據(jù),黃色數(shù)字表示IIC器件回應的信號,低電平0表示器件收到了單片機發(fā)來的數(shù)據(jù)。

f5b9bb94-2406-11ed-ba43-dac502259ad0.png

現(xiàn)在對IIC波形有沒有多了一些直觀的認識?下面再進入編程階段,看看程序是怎么控制這兩根線的。

f5027560-2406-11ed-ba43-dac502259ad0.gif

3 IIC軟件編寫邏輯

IIC通信可以使用單片機自帶的硬件IIC,它提供了固定的引腳接口和函數(shù)庫。也可以自己通過軟件編寫來實現(xiàn)IIC時序,這時就可以任選引腳,也方便其它硬件平臺的移植。

下面通過軟件IIC的編寫,從軟件角度理解IIC通信邏輯。

以下函數(shù)都是單片機在執(zhí)行,即主機發(fā)出的動作,所以一定要從單片機的角度思考哦~

另外,不要看到程序就匆匆掠過,為幫助理解,我對代碼進行了一定的注解,仔細分析每條代碼,想想與IIC的邏輯如何對應起來,IIC邏輯還沒懂的,讀完本篇,分析過真實的IIC波形后,再來看看代碼,會有不一樣的體會。

起始IIC_Start()


//==================================//產生IIC起始信號//==================================void IIC_Start(void){    SDA_OUT();   //sda線輸出    IIC_SDA=1;        delay_us(2);        IIC_SCL=1;   //時鐘線為高時    delay_us(2);    IIC_SDA=0;   //數(shù)據(jù)線由高到低    delay_us(4);    IIC_SCL=0;   //時鐘線拉低,鉗住IIC總線,準備發(fā)送數(shù)據(jù)}

最后一句SCL拉低,然后就準備產生時鐘信號,發(fā)送數(shù)據(jù)了。

停止IIC_Stop()


//==================================//產生IIC停止信號//==================================void IIC_Stop(void){    SDA_OUT();  //sda線輸出    IIC_SCL=0;  //確保時鐘線為低時,數(shù)據(jù)線才能變化為0,否則這就可能成起始信號了!    delay_us(2);    IIC_SDA=0;    delay_us(2);    IIC_SCL=1;  //時鐘線為高時    IIC_SDA=1;  //數(shù)據(jù)線由低到高    delay_us(4);                                }

停止前也要確保SCL是拉低的狀態(tài)。

最后SDA和SCL都為高,即釋放IIC總線,IIC總線進入空閑狀態(tài)。

等待應答IIC_wait_Ack()


//==================================//等待應答信號到來//用于發(fā)送模式下,發(fā)送8位后,等待器件應答第9位//返回值:1,接收應答失敗//        0,接收應答成功//==================================u8 IIC_Wait_Ack(void){    u8 ucErrTime=0;    SDA_IN();                 //SDA設置為輸入      IIC_SDA=1;delay_us(1);    //SDA先拉高,若被從機拉低則說明收到應答信號    IIC_SCL=1;delay_us(1);    //SCL拉高,產生第9位的脈沖    while(READ_SDA)    {        ucErrTime++;        if(ucErrTime>250)        {            IIC_Stop();            return 1;        }    }    IIC_SCL=0;//時鐘輸出0   //SCL拉低,結束第9位的脈沖    return 0;  }

在一定是時間內檢測SDA是否被從機拉低,被拉低則說明從機收到了數(shù)據(jù)。

產生應答IIC_Ack()


//==================================//產生ACK應答//用于讀取模式(SDA為in)讀了8位器件數(shù)據(jù)后,在第9位給出一個應答,我還要繼續(xù)讀//==================================void IIC_Ack(void){    IIC_SCL=0;    //確保時鐘線為低時,數(shù)據(jù)線才能變化為0,否則這就可能成起始信號了!    SDA_OUT();    //SDA由讀取改為發(fā)送    delay_us(2);    IIC_SDA=0;    //拉低SDA,表示應答    delay_us(2);    IIC_SCL=1;    //SCL先上升    delay_us(2);    IIC_SCL=0;    //SCL再下降,形成一個脈沖,應答才生效}

單片機在接收器件數(shù)據(jù)后,進行回應,表示接收到了器件的數(shù)據(jù)。

該函數(shù)用在連續(xù)讀取多個字節(jié)時,每讀完一個字節(jié)(8位),產生回應,表示還要進行讀,這時器件就可以繼續(xù)發(fā)數(shù)據(jù)了。

當單片機不需要繼續(xù)讀,如連續(xù)讀的最后一個字節(jié),或只讀一個字節(jié),單片機發(fā)送非應答信號,這時器件以為單片機沒有收到數(shù)據(jù),接下來就不會再發(fā)數(shù)據(jù)了。

非應答函數(shù)如下,就是拉高SDA:

不產生應答IIC_nAck()


//==================================//不產生ACK應答//用于讀取模式(SDA為in)讀了8位器件數(shù)據(jù)后,在第9位給出一個應答,我不想讀了//==================================void IIC_NAck(void){    IIC_SCL=0;    //確保時鐘線為低時,數(shù)據(jù)線才能變化為0,否則這就可能成起始信號了!    SDA_OUT();    //SDA由讀取改為發(fā)送    IIC_SDA=1;    //拉高SDA,表示不應答    delay_us(2);    IIC_SCL=1;    //SCL先上升    delay_us(2);    IIC_SCL=0;    //SCL再下降,形成一個脈沖,不應答才生效}

IIC發(fā)送一個字節(jié)


//==================================//IIC發(fā)送一個字節(jié)//返回從機有無應答//1,有應答//0,無應答//==================================void IIC_Send_Byte(u8 txd){                            u8 t;      SDA_OUT();                 //SDA發(fā)送模式    IIC_SCL=0;                 //拉低時鐘開始數(shù)據(jù)傳輸    for(t=0;t<8;t++)    {                      IIC_SDA=(txd&0x80)>>7; //SDA高低電平表示數(shù)據(jù)1和0        txd<<=1;              delay_us(2);           //對TEA5767這三個延時都是必須的        IIC_SCL=1;             //SCL先上升        delay_us(2);        IIC_SCL=0;             //SCL再下降,形成一個脈沖,發(fā)送一位數(shù)據(jù)生效        delay_us(2);    }}

發(fā)送一個字節(jié),就是分8次循環(huán),產生8個時鐘信號,并將SDA賦值為0或1。

IIC讀取一個字節(jié)


//==================================//讀1個字節(jié)//ack=1時,發(fā)送ACK,ack=0,發(fā)送nACK  //==================================u8 IIC_Read_Byte(unsigned char ack){    unsigned char i,receive=0;    SDA_IN();                  //SDA輸入模式    for(i=0;i<8;i++ )    {        IIC_SCL=0;             //SCL先下降,通過循環(huán),形成時鐘脈沖        delay_us(2);        IIC_SCL=1;             //SCL上升        receive<<=1;        if(READ_SDA)            receive++;         //讀取并組合記錄數(shù)據(jù),++表示讀到1了,最低位置1        delay_us(1);    }    //讀取8位后,主機需要變?yōu)榘l(fā)送模式,在第9位進行應答或不應答    //此時CLK還是高電平狀態(tài),不過下面的應答會先將CLK拉低的    if (!ack)    {        //讀1個字節(jié),或讀多個字節(jié)讀到最后一個字節(jié)時,使用nACK        //然后配合使用IIC停止信號        IIC_NAck();//發(fā)送nACK    }    else    {        //讀多個字節(jié)還沒讀完時,使用ACK,表示現(xiàn)在讀的ok,還要繼續(xù)讀        IIC_Ack(); //發(fā)送ACK    }           return receive;}

讀取一個字節(jié),也是分8次循環(huán),產生8個時鐘信號,并讀取SDA的高低電平信號,最后,根據(jù)要不要繼續(xù)讀下一個字節(jié),發(fā)送第9位的Ack或nACK。

4真實IIC波形詳細分析

4.1 讀取從機數(shù)據(jù)(單字節(jié)讀)

下面這張圖(請橫屏觀看)展示IIC讀某個器件的寄存器的一個字節(jié)的真實波形(注:實際是讀了2個不同寄存器的值,每個寄存器讀了1個字節(jié),所以,可以先只看前半部分哦~),我已對波形進行了詳細的注解,并留意一下顏色區(qū)分。

對照著圖,再來溫習一下各個信號的特點:

  • 起始信號:時鐘線SCL為高時,數(shù)據(jù)線SDA由高到低

  • 停止信號:時鐘線SCL為高時,數(shù)據(jù)線SDA由低到高

  • 數(shù)據(jù)信號:連續(xù)的8位,每一個SCL脈沖時鐘對應的SDA,高電平為數(shù)據(jù)1,低電平為數(shù)據(jù)0

  • 應答信號:第9位(數(shù)據(jù)信號后),由對方產生的回應,0為產生回應,1為不產生回應

f60304e8-2406-11ed-ba43-dac502259ad0.jpg

上面這幅圖中,單片機先產生起始信號,然后發(fā)送7位器件地址+1位寫標志(綠色的0),并等待從機回應(從機拉低SDA表示收到數(shù)據(jù)),接著發(fā)送8位寄存器地址,并等待從機回應。然后,單片機先再次產生起始信號,發(fā)送7位器件地址+1位讀標志(綠色的1),并等待從機回應。從機收到讀的信號后,從機開始發(fā)送8位數(shù)據(jù),主機接收到數(shù)據(jù)后,主機發(fā)送nAck不應答信號(圖中的Ack(1),主機將SDA拉高,從機則認為主機剛才沒有收到它發(fā)送的數(shù)據(jù),從機將不再繼續(xù)發(fā)送),接著主機發(fā)送結束信號,讀取完成。

此圖后半部分是以相同方式讀了另一個寄存器的值。

另外,SCL信號都是由單片機產生,SDA信號由單片機和IIC器件(從機)共同產生,當需要對IIC器件的寄存器寫時,單片機產生SDA數(shù)據(jù),當需要讀取IIC器件的寄存器數(shù)據(jù)時,改變傳輸方向,IIC器件產生SDA數(shù)據(jù)。

對于主機和從機什么時候控制SDA,還可以參考這個圖幫助理解:

f616e4e0-2406-11ed-ba43-dac502259ad0.png

4.2 讀取從機數(shù)據(jù)(多字節(jié)讀)

上面是單字節(jié)讀的波形,再來看看多字節(jié)的波形,前面的寫器件地址、寫寄存器地址1與單字節(jié)讀一樣,這張圖只顯示了后面不一樣的部分,主要區(qū)別在于單片機接收到數(shù)據(jù)1后,產生低電平的應答,從而可以繼續(xù)讀取數(shù)據(jù)2。

(注意,因為傳感器這次測得的數(shù)據(jù)不一樣,所以讀出的數(shù)據(jù)也不一樣哦~)

f62d09e6-2406-11ed-ba43-dac502259ad0.jpg

注:以上的IIC真實波形,是使用是硬件IIC,自己編寫的軟件IIC測得的波形,可能在兩個信號的前后延時時間上稍有差別,但整體的時序邏輯肯定是一樣的。

4.3 配置從機寄存器(單字節(jié)寫與多字節(jié)寫)

對于寄存器的配置,也就是IIC的寫寄存器操作,我就不放圖了,參考上面的“常用的數(shù)據(jù)收發(fā)方式(時序)”以及上面的IIC讀寄存器的真實波形,IIC的寫寄存器的真實波形,應該可以腦補出哦,哈哈~

審核編輯 :李倩


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

    關注

    31

    文章

    5621

    瀏覽量

    130461
  • 通信
    +關注

    關注

    18

    文章

    6461

    瀏覽量

    140287
  • IIC
    IIC
    +關注

    關注

    11

    文章

    311

    瀏覽量

    40789

原文標題:從IIC實測波形入手,搞懂IIC通信

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    行芯科技亮相IIC 2026國際集成電路展覽會暨研討會

    近日,全球集成電路領域的年度標桿盛會——2026國際集成電路展覽會暨研討會(IIC 2026)在上海圓滿落幕。
    的頭像 發(fā)表于 04-02 17:28 ?654次閱讀

    如何使用 VisionFive IIC 讀取 SHTC3 數(shù)據(jù)?

    使用 VisionFive IIC 讀取 SHTC3 數(shù)據(jù)
    發(fā)表于 03-27 07:09

    IIC的正確用法

    外部上拉電阻將I2C信號線拉至高電平。 在單片機應用中,就要看你使用的單片機是否有標準的IIC標準接口了,如果你使用了標準的IIC接口,這個接口在使能的時候,引腳進入漏極開路模式,不過有一些單片機內 部
    發(fā)表于 01-21 07:28

    【瑞薩RA × Zephyr開發(fā)板評測】+模擬IIC實現(xiàn)OLED輸出(與硬件IIC輸出的失敗經驗)

    無需額外工具即可編寫/調試程序。此外,通過Arduino Uno和Pmod?接口,包括對微控制器所有引腳的標準和通孔訪問等,它具有很高的可擴展性。 按照上圖進行Oled接線,首先使用IIC硬件接口
    發(fā)表于 01-19 22:23

    RA MCU眾測寶典 | IIC之【RA2E1】IIC通信的OLED顯示

    “RAMCU眾測寶典”IIC專題上線啦!這次,瑞薩嵌入式小百科將和大家一起聚焦【瑞薩RA2E1】開發(fā)板,一步步玩轉IIC通信的OLED顯示。從IIC協(xié)議的核心原理、FSP中I2CMaster的配置
    的頭像 發(fā)表于 01-01 10:04 ?3477次閱讀
    RA MCU眾測寶典 | <b class='flag-5'>IIC</b>之【RA2E1】<b class='flag-5'>IIC</b>通信的OLED顯示

    請問設備連接IIC通信接口需要注意什么?

    設備連接IIC通信接口需要注意什么?
    發(fā)表于 12-25 07:47

    請問IIC通信中的主設備和從設備是如何工作的?

    IIC通信中的主設備和從設備是如何工作的?
    發(fā)表于 12-25 06:35

    通信協(xié)議IIC與SPI最全對比分析

    現(xiàn)今,在低端數(shù)字通信應用領域,我們隨處可見IIC(Inter-Integrated Circuit)和 SPI(Serial Peripheral Interface)的身影。原因是這兩種通信協(xié)議
    發(fā)表于 12-10 06:04

    英諾達亮相IIC Shenzhen 2025

    2025年11月25日,國際集成電路展覽會暨研討會(IIC Shenzhen)在深圳舉辦,英諾達創(chuàng)始人及CEO王琦博士應邀出席,并于“全球CEO峰會”發(fā)表題為《低功耗設計新范式:突破算力芯片能效瓶頸》的主旨演講,引發(fā)行業(yè)廣泛關注。
    的頭像 發(fā)表于 12-03 10:53 ?736次閱讀

    基于hbirdv2-sdk的iic 0.96寸lcd調試

    一.前言 簡介: 基于hbird-sdk的硬件IIC控制 0.96寸lcd. 二.工程結構 硬件: mcu200t fpga開發(fā)板 軟件結構: 主要由Makefile main.c
    發(fā)表于 10-30 06:20

    請問IIC的設備驅動兼容SMbus協(xié)議嗎?

    請問IIC的設備驅動兼容SMbus協(xié)議么?
    發(fā)表于 09-29 09:53

    組件中的iic和標準版driver包里面的iic有什么區(qū)別?是不是用其中之一就可以了呢?

    實際使用起來好像也是只啟用其中一個就可以,另外我發(fā)現(xiàn)有些版本的menuconfig沒有控制組件iic的定義。
    發(fā)表于 09-16 07:24

    【微五科技CF5010RBT60開發(fā)板試用體驗】硬件IIC點亮OLED小屏幕

    CF5010RBT60 憑借其豐富的外設資源和親民的價格,吸引了眾多嵌入式開發(fā)者。本次測評聚焦其硬件 IIC 接口驅動 SSD1306 OLED 屏幕的實際表現(xiàn),帶你體驗“硬實力”帶來的流暢顯示效果。 一、硬件
    發(fā)表于 08-08 11:01

    求助,關于STM32F030的iic主收問題求解

    我現(xiàn)在用stm32f030,在IIC的主模式下,想在收到一個字節(jié)數(shù)據(jù)后就回NACK和stop,但是現(xiàn)在實際情況是,我在接收到一個字節(jié)后進入接收中斷再使能STOP,看波形是收到這個字節(jié)后自動回了一個
    發(fā)表于 06-24 07:54

    如何從FX2LP設備的EEPROM讀取固件(.iic)?

    是否有任何工具可以從 FX2LP 設備的 EEPROM 讀取固件(.iic)? 我想備份舊固件來重新編程我的設備,但我丟失了舊的 IIC 固件。
    發(fā)表于 05-07 06:37
    建瓯市| 齐齐哈尔市| 泽普县| 德钦县| 宝坻区| 邯郸县| 山阳县| 天峻县| 云阳县| 巴中市| 宿松县| 新巴尔虎右旗| 余江县| 洪洞县| 克拉玛依市| 夏邑县| 西乌| 林口县| 临泉县| 伊宁县| 汉寿县| 贵定县| 高清| 永春县| 集安市| 泗水县| 万州区| 康马县| 阿克| 长治县| 于都县| 剑阁县| 金川县| 花垣县| 胶州市| 兖州市| 青铜峡市| 汨罗市| 伊宁市| 武夷山市| 天长市|