国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

歷史上的今天

今天是:2025年07月16日(星期三)

2021年07月16日 | STM32F407和STM32F051主從I2C通信方法

發(fā)布者:Whisper123 來源: eefocus關(guān)鍵字:STM32F407  STM32F051  主從I2C  通信方法 手機(jī)看文章 掃描二維碼
隨時隨地手機(jī)看文章

簡介:本文章主要介紹STM32F407和STM32F051主從I2C通信方法。


M4作為主機(jī):


int main(void)


{


/* USER CODE BEGIN 1 */


/* USER CODE END 1 */


HAL_Init();


/* Configure the system clock */


SystemClock_Config();


/* Initialize all configured peripherals */


MX_GPIO_Init();


MX_I2C1_Init();


MX_USART1_UART_Init();


/* USER CODE BEGIN 2 */


/* USER CODE END 2 */


/* Infinite loop */


/* USER CODE BEGIN WHILE */


while (1)


{


/* USER CODE END WHILE */


/* USER CODE BEGIN 3 */


int i;


HAL_I2C_Master_Receive_IT(&hi2c1, 0x22, bbb, 4);


HAL_Delay(1000);


if(i2c_flag == 1)


{


i2c_flag = 0;


printf("naddr is 11:");


for(i = 0; i < 4; i++)


{


printf("%02x ", aaa[i]);


}


printf("naddr is 22:");


for(i = 0; i < 4; i++)


{


printf("%02x ", bbb[i]);


}


}


}


/* USER CODE END 3 */


}


M0作為從機(jī):


void IIC_GPIO_Configuration(void)


{


GPIO_InitTypeDef GPIO_InitStruct;


RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);


RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1 , ENABLE);


GPIO_InitStruct.GPIO_Pin = GPIO_Pin_6;


GPIO_InitStruct.GPIO_Mode = GPIO_Mode_AF;//GPIO_Mode_IN


GPIO_InitStruct.GPIO_Speed = GPIO_Speed_Level_3;


GPIO_InitStruct.GPIO_OType = GPIO_OType_OD;//open-drain


GPIO_Init(GPIOB , &GPIO_InitStruct);


GPIO_InitStruct.GPIO_Pin = GPIO_Pin_7;


GPIO_Init(GPIOB , &GPIO_InitStruct);


/* Connect PXx to I2C_SCL*/


GPIO_PinAFConfig( GPIOB , GPIO_PinSource6, GPIO_AF_1);


/* Connect PXx to I2C_SDA*/


GPIO_PinAFConfig( GPIOB , GPIO_PinSource7, GPIO_AF_1);


}


void IIC_Configuration(void)


{


I2C_InitTypeDef I2C_InitStruct;


/* I2C configuration */


I2C_InitStruct.I2C_Mode = I2C_Mode_I2C;


I2C_InitStruct.I2C_AnalogFilter = I2C_AnalogFilter_Enable;


I2C_InitStruct.I2C_DigitalFilter = 0x00;


I2C_InitStruct.I2C_OwnAddress1 = 0x22;


I2C_InitStruct.I2C_Ack = I2C_Ack_Enable;


I2C_InitStruct.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;


I2C_InitStruct.I2C_Timing = 0xb0420f13;//100Kbits


/* I2C Peripheral Enable */


I2C_Cmd(I2C1, ENABLE);


/* Apply I2C configuration after enabling it */


I2C_Init(I2C1, &I2C_InitStruct);


}


int main(void)


{


peripheral_init();


board_init();


I2C1_isr.CR1 |= 0X08; //地址匹配產(chǎn)生中斷


while(1)


{


if(Recv_flag == 1)


{


Recv_flag = 0;


if(I2C_GetFlagStatus(I2C1, I2C_FLAG_TCR) != SET)


{


printf("transfern");


for( i = 0; i < 5; i++)


{


while(I2C_GetFlagStatus(I2C1, I2C_FLAG_TXIS) != SET);


I2C_SendData(I2C1, Data_to_M4_1[i]);


}


}


}


}


}


void I2C1_IRQHandler(void)


{


uint8_t i = 0;


uint8_t j = 0;


I2C_ClearITPendingBit(I2C1, I2C_ISR_ADDR);


I2C1->ISR |= 0x00000001;


I2C_ClearFlag(I2C1, I2C_FLAG_ADDR);


printf("IIC irq in2n");


Recv_flag = 1;


關(guān)鍵字:STM32F407  STM32F051  主從I2C  通信方法 引用地址:STM32F407和STM32F051主從I2C通信方法

上一篇:關(guān)于STM32的以太網(wǎng)問題集錦
下一篇:基于STM32的多路電壓測量設(shè)計方案

推薦閱讀

AD采集最好要滿足的條件:采樣頻率不小于被采集信號最高頻率的兩倍,則采樣輸出信號就可以無失真的重新啊還原輸入信號,通常的實際應(yīng)用中,采樣頻率為采集最高頻率的5-10倍。AD芯片的數(shù)據(jù)輸出方式有串行和并行兩種方式,對于AVR單片機(jī)來說A/D芯片和AVR單片機(jī)接口是需要考慮的一些問題:(1)模擬信號輸入的連接:單端輸入時,VIN+引腳直接與信號輸入連接,...
今天小米路由器官方微博發(fā)表長文表達(dá)自己對旗下的小米路由器4A千兆版遭惡評的態(tài)度,它稱:“小米路由器4A千兆版自發(fā)布以來收獲了良好的口碑和銷量,僅京東就有45萬條評論,好評率99%。但是,近日我們發(fā)現(xiàn)網(wǎng)絡(luò)上出現(xiàn)大規(guī)模針對這個爆款產(chǎn)品有組織的惡意抹黑,而且內(nèi)容幾乎完全相同。我們歡迎真實用戶的批評建議,但是堅決抵制下三濫的抹黑手段。真金不怕火...
據(jù)紫光國微官方微信公眾號消息,近日,由紫光國微牽頭,聯(lián)合紫光展銳、紫光云等多家企業(yè),中標(biāo)中國工業(yè)和信息化部信息通信管理局 “2020 年工業(yè)互聯(lián)網(wǎng)創(chuàng)新發(fā)展工程 -- 規(guī)?;I(yè)互聯(lián)網(wǎng)標(biāo)識新連接平臺”項目。 該項目建設(shè)包括可信標(biāo)識載體及可信交互技術(shù)、可信標(biāo)識數(shù)據(jù)采集與解析平臺,和在此之上構(gòu)建的行業(yè)應(yīng)用。其中,紫光國微將提供...
芯片配置總結(jié):MCU可以工作在6種模式下。工作模式是由復(fù)位時,MODA,MODB,MODC信號決定的。當(dāng)RESET信號位于上升沿時,MODA,MODB和MODC的狀態(tài)被鎖存到寄存器中。Internal 是指MCU內(nèi)部的資源可以讀寫;Internal Flash 是指MCU內(nèi)部的Flash資源可以讀寫。Emulation memory 是指仿真器內(nèi)部的資源可以讀寫。External application 是指MCU外部的資源可以讀寫...

史海拾趣

問答坊 | AI 解惑

FPGA業(yè)界第一種精度可調(diào)DSP模塊體系結(jié)構(gòu)

在實現(xiàn)復(fù)雜信號處理算法時,F(xiàn)PGA硬件數(shù)字信號處理(DSP)體系結(jié)構(gòu)發(fā)揮了很大的作用。Altera Stratix®V FPGA 具有精度可調(diào)DSP模塊體系結(jié)構(gòu),是能夠有效支持包括浮點實現(xiàn)等多種不同精度級的唯一可編程器件。采用64位級聯(lián)總線和累加器,設(shè)計人員不 ...…

查看全部問答∨

eboot中斷

#define pISR                (*(unsigned *)(0x30000000+0x18))        //#define pISR                (*(unsigned *)(0x00000000+0x18 ...…

查看全部問答∨

串口-大批量數(shù)據(jù)收發(fā)

大家好,小弟目前正在做一個項目,里面涉及到上位機(jī)通過串口(RS232)與DSP進(jìn)行大批量數(shù)據(jù)的收發(fā),板子上用的通信芯片是MAX3111EEWI,自帶一個8-word-deep-receive FIFO,好像不處理的情況下一包數(shù)據(jù)只能接收16個字節(jié)。 之前的程序中數(shù)據(jù)收發(fā)過程 ...…

查看全部問答∨

telit模塊ge863-gps問題~!

有沒有熟悉此模塊的大哥啊~小弟最近在用這個模塊。用其內(nèi)部的python編程接口。在采到gps信息,放入一個變量A當(dāng)中后,我該怎樣操作,才能將這些gps信息通過短信的方式發(fā)送出去啊。也就是短信內(nèi)容,不需要自己輸入,而是發(fā)送一個變量中的內(nèi)容,該如何 ...…

查看全部問答∨

求助:ARM7 44b0里面外部中斷和定時器中斷誰的優(yōu)先級高些?

ARM7 44b0,采用的是無向量的IRQ中斷模式。 問一下:外部中斷和定時器中斷誰的優(yōu)先級高些? 仔細(xì)看了下手冊,沒看明白。外部中斷屬于mGA,定時器中斷屬于mGC,mGA、mGC誰的優(yōu)先級高? 手冊里說優(yōu)先級的高低是可編程的,怎么來編?需要設(shè)置什么寄存 ...…

查看全部問答∨

用DriverStudio做的驅(qū)動,在Dma傳輸時出錯了。我哪錯了呢?幫幫忙吧!

用DriverStudio做的驅(qū)動,在Dma傳輸時出錯了。在回調(diào)函數(shù)OnDmaReady(KDmaTransfer *pXfer,KIrp I)中發(fā)現(xiàn)這個Irp是個 空的,沒傳進(jìn)來?!?

查看全部問答∨

關(guān)于CPU啟動的問題

在MIPS平臺下,WINCE操作系統(tǒng),CPU啟動的時候,在OAL層還沒初始化到OEM的時候已經(jīng)完成了串口的初始化,在OEM初始化中最開始的打印信息為“+OEMInit”,我想問一下,“Windows CE Kernel for MIPS Built on Jun 24 2004 at 18:24:50”這條打印信息是 ...…

查看全部問答∨

activesync怎樣手工給它添加驅(qū)動?

    如題,我安裝好wince5之前就按好了activesync,結(jié)果它立馬就連接了,我當(dāng)時還不知道怎么操作,就稀里糊涂的也沒有連上,現(xiàn)在我再次插上開發(fā)板(mini2440)的時候,它就沒有提示我要安裝驅(qū)動程序了,我現(xiàn)在手工給它更改驅(qū)動程序的時候老 ...…

查看全部問答∨

Freescale HC08單片機(jī)???

我專業(yè)是嵌入式,開的一門課是《嵌入式技術(shù)基礎(chǔ)與實踐》,里面學(xué)的是HC08單片機(jī)。書,實驗開發(fā)箱都是蘇大自家做的。畢業(yè)設(shè)計老師要用HC08單片機(jī)做,可是資料很少,圖書館都沒找到……… 有多少人在用HC08呀?…

查看全部問答∨

轉(zhuǎn)讓一些用不上的板子(多圖)明碼標(biāo)價 也可交換

12864液晶模塊,3塊,每塊40元     320240液晶顯示模塊,用的時間不超過一小時,50元   1.8液晶模塊,做實驗用的,帶轉(zhuǎn)接板 15元   智峰脫機(jī)下載器,95成新,用的時間不超過10個小時,100元(買的時候260元) ...…

查看全部問答∨
小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved