24C02

基础

  • 24C02功能概述

24C02是一个2KBit的串行EEPROM存储器,内部含有256个字节。在24C02里面有一个8字节的页写缓冲器。该设备的工作电压为1.8V到6.0V,芯片的第7引脚WP为写保护引脚,将该引脚接地允许正常的读写。

  • 设备地址

24C02的设备地址包括固定部分和可编程部分。可编程部分需要根据硬件引脚A0、A1和A2来设置。设备地址的最后一位用于设置数据传输的方向,即读/写位。格式如下图:

在这里插入图片描述

在IIC总线协议中,设备地址是起始信号后第一个发送的字节。如果硬件地址引脚A0、A1、A2均接地,那么,
读操作地址为:0xA1;
写操作地址则为:0xA0。

字节写操作

在这里插入图片描述

24C02接收完设备地址后,产生应答信号;
然后接收8位内存字节地址,产生应答信号,
接着接收一个8位数据,产生应答信号;
最后主机发送停止信号,字节写操作结束。

1、stm32代码

void AT24CXX_WriteOneByte(u16 WriteAddr,u8 DataToWrite)
{				   	  	    																 
    IIC_Start();  
	
		if(EE_TYPE>AT24C16)         //判断芯片型号
		{
			IIC_Send_Byte(0XA0);	     
			IIC_Wait_Ack();
			IIC_Send_Byte(WriteAddr>>8);  //发送高地址	  
		}
		else 
		{
			IIC_Send_Byte(0XA0+((WriteAddr/256)<<1));   //发送器件地址0XA0,写数据
		}  //(WriteAddr/256) 是为了确保大容量芯片的地址
		IIC_Wait_Ack();	  
		
		IIC_Send_Byte(WriteAddr%256);   //发送低地址
		IIC_Wait_Ack(); 			
		
		IIC_Send_Byte(DataToWrite);     //发送字节							   
		IIC_Wait_Ack();  		    	   
		
		IIC_Stop();//产生一个停止条件 
		delay_ms(10);	 
}

字节读操作

在这里插入图片描述

主机首先发送起始信号,接着发送设备地址和它想要读取的数据内存字节地址,执行一个伪写操作。在24C02应答主机之后,主机重新发送起始信号和从设备地址,进行读操作。24C02响应并发送应答信号,然后输出所要求的一个8位字节数据。主机接收完这个8位数据后,产生一个“非应答”信号,最后发送停止条件,字节读操作结束。

1、stm32

u8 AT24CXX_ReadOneByte(u16 ReadAddr)
{				  
		u8 temp=0;		  	    																 
    IIC_Start();  
	
		if(EE_TYPE>AT24C16)
		{
			IIC_Send_Byte(0XA0);	   //发送写命令
			IIC_Wait_Ack();
			(ReadAddr>>8);//发送高地址	    
		}
		else 
		{
			IIC_Send_Byte(0XA0+((ReadAddr/256)<<1));   //发送器件地址0XA0,写数据
		} 	   
			IIC_Wait_Ack(); 
		
			IIC_Send_Byte(ReadAddr%256);   //发送低地址
			IIC_Wait_Ack();	    
		
			IIC_Start();  	 	   
			IIC_Send_Byte(0XA1);           //进入接收模式			   
			IIC_Wait_Ack();	 
		
			temp=IIC_Read_Byte(0);		 
		
			IIC_Stop();//产生一个停止条件	    
			return temp;
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值