手机版

模拟I2C控制24C02(6)

时间:2025-04-28   来源:未知    
字号:

使用STM32红牛开发的GPIO模拟I2C控制八个AT24C02的读写

}

void I2C_EE_Continue_Read(u8* pBuffer, u16 ReadAddr, u16 NumByteToRead)

{

u16 i=0;

/* Send START condition */

I2C_GenerateSTART();

I2C_SendData(I2C_SLAVE_ADDRESS7_R);

WaitAck();

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

{

*pBuffer = I2C_ReceiveData();

++pBuffer;

Ack();

}

NAck();

I2C_GenerateSTOP();

}

void wait(u16 Data)

{

u16 i;

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

}

/******************** (C) COPYRIGHT 2011 STMicroelectronics ********************

* File Name : main.c

* Author : Tanglin

* Version : V2.0.1

* Date : 11/9/2011

* Description : Main program body

********************************************************************************

* AT24C02内部共256字节

* 每次读写字节的地址最低两位出现A0时便会丢失之后的五个数据

* 因此,定义读写地址为EEPROM_WriteAddress1=0xa6

* 因为0x1a0-0xa6=250,几乎是该芯片可写的最大范围

* GPIOA模拟SCK,GPIOC模拟SDA

* 当八个芯片同时烧写时,只需更改i2c_ee.h里的 #define SDAread GPIOC->IDR & GPIO_Pin_7

*******************************************************************************/

模拟I2C控制24C02(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)