蓝桥杯单片机 |
您所在的位置:网站首页 › 蓝桥杯单片机程序 › 蓝桥杯单片机 |
本篇讲的单片机是第十一届蓝桥杯单片机实训的硬件设备。 蓝桥杯单片机硬件基础蓝桥杯单片机AT24C02存储器电路图: 由上述电路硬件连接和AT24C02存储器地址初值,可知该AT24C02存储器的器件地址为:0xa0; AT24C02读写时序(IIC为基础)AT24C02存储器容量为256*8(2Kb),即数据存放的地址空间为0x00 - 0xfe;通信接口采用双线串行接口(SCL时钟线、SDA串行数据线);双线数据传送协议为:ISO/IEC7816-3同步协议。 写字节时序: 根据上述写字节时序,得到写字节函数代码: //函数功能:写入AT24C02一字节 //入口参数:写入地址、写入数据 void EEPROM_W(u8 add,u8 dat) { IIC_Start(); IIC_SendByte(0xa0); IIC_WaitAck(); IIC_SendByte(add); IIC_WaitAck(); IIC_SendByte(dat); IIC_WaitAck(); IIC_Stop(); Delay5ms(); //延时一段时间 } 读字节时序: 根据上述读字节时序,得到读字节函数代码: //函数功能:返回AT24C02指定地址的一个字节数据 //入口参数:读取数据的地址 u8 EEPROM_R(u8 add) { u8 dat; IIC_Start(); IIC_SendByte(0xa0); IIC_WaitAck(); IIC_SendByte(add); IIC_WaitAck(); IIC_Start(); IIC_SendByte(0xa1); IIC_WaitAck(); dat = IIC_RecByte(); IIC_Ack(0); //不应答 IIC_Stop(); return dat; }注:本模块采用的是IIC为基础的协议编写,IIC的起始信号、停止信号、写字节信号、等待应答信号、应答信号、读字节信号等等函数,这里默认读者都有先前了解。 AT24C02字符串存储和读取其基本理论与上面字节的写入和读出是一样的,这里就不重复说明。 相关代码编写: AT24C02字符串写入函数 //函数功能:写入AT24C02一字符串 //入口参数:写入地址、字符串数组名,字符串长度 void EEPROM_WS(u8 add, u8 *p,u8 lens) { u8 i; IIC_Start(); IIC_SendByte(0xa0); IIC_WaitAck(); IIC_SendByte(add); IIC_WaitAck(); for(i=0;i u8 i; IIC_Start(); IIC_SendByte(0xa0); IIC_WaitAck(); IIC_SendByte(add); IIC_WaitAck(); IIC_Start(); IIC_SendByte(0xa1); IIC_WaitAck(); for(i=0;i |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |