×
单片机 > 单片机程序设计 > 详情

基于STM32f103的I2C通信接口的EPPROM模块(24C256)读写程序详解2

发布时间:2020-05-30 发布时间:
|

接上面的文章!!!


第五步:我们要封装2个函数,一个用于读8位数据,一个用于写8位数据,程序如下:



第六步:我们要利用上面2个函数再封装2个函数,一个用于向EPPROM指定的地址写指定的一字节数据,一个用于读EPPROM指定的地址的数据。程序如下:



第七步:我们要封装2个函数,用于多字节的读写!程序如下:



最后我们就是主函数了!当然这里利用串口发送数据来显示读写的数据!!!


const u8 My2[]={"地址100开始的数据 rn"};  //定义了一个多字节的数据

#define MySize2 sizeof(My2)                       //该数据长度


int main(void)

{

u8 i,datatemp[MySize2];     //用于读取数据的存储数组


        delay_init(72);                   //这个最好加上 用于产生延时 下面我贴出它的定义 不明白你就按我的写就可以了!

USART_PC_Init(115200);  //串口配置

I2C_EPPROM_Init();         //这个就是初始化了


I2C_EPPROM_Write(100,(u8 *)My2,MySize2);  //向100开始的地址往后写入MySize个数据

//delay_ms(100);


while(1)

{

I2C_EPPROM_Read(100,datatemp,MySize2);  //读取100开始的地址向后MySize的数据



for(i=0;i

{

if(datatemp[i] != '')

{

    USART_PC_SendByte(USART1,datatemp[i]);

}

}


}

}




延迟函数定义程序:


最后我贴出运行结果:

到此结束,多多指教!!!



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR单片机中RC电容触摸的感应原理解析