硬件连接
这里连接的MCU引脚是
IIC-SCL——Pb8
IIC_SDA——PB9
打算实现的效果
从24C64的E2PROM中的一个地址中写入一个字节,
在串口上面打印出来刚刚写入的那个字节;
然后再从E2中刚刚写入的地址中读出那个字节,
并且,在串口上打印出来。
实际的效果
- 图片图
2.很显然,并没有完成我预想的效果
程序讲解
1.下面就是主程序
/****************************主程mian.c**********************************************/
/**
//预先定义了缓冲写入的数组
//以及读取的缓冲数组
uint8_t I2c_Buf_Write[256];
uint8_t I2c_Buf_Read[256];
* @brief 主函数
* @param 无
* @retval 无
*/
int main(void)
{
/* 串口初始化 */
USART_Config();
printf("\r\n 这是一个I2C外设(AT24C02)读写测试例程 \r\n");
/* I2C 外设初(AT24C02)始化 */
I2C_EE_Init();
//EEPROM 读写测试
I2C_Test_OneByte();
while (1)
{
}
}
/*************/EEPROM 读写测试:I2C_Test_OneByte();**********************/
///**
// * @brief 读写一个字节并显示出来的测试
// * @param 无
// * @retval 正常返回1,异常返回0
// */
void I2C_Test_OneByte(void)
{
printf("写入的数据\n\r");
I2c_Buf_Write[0]=1;
printf