最近在开发DS3231时钟芯片时发现,网上很多的程序都是基于硬件I2C,以下为常看到部份:
while(!I2C_CheckEvent(I2C1,I2C_EVENT_MASTER_MODE_SELECT));//等待EV5
I2C_Send7bitAddress(I2C2,0xD1,I2C_Direction_Transmitter); //发送从地址
我移植后发现,I2C_CheckEvent这个函数根本在库里不存在,然后我对比了发现,F4系列的是有这个函数定义的,但F0不支持。所以不能直接调用这个方式 操作I2C。此函数在F4官方库的目录是D:\下载\en.stm32f4_dsp_stdperiph_lib\STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\STM32F4xx_StdPeriph_Driver\src
困扰了一晚,特此记录,防止后人进坑