AT24C02外部I2C总线EEPROM实验

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

AT24C02外部总线EEPROM实验AT24C02外部I2C总线EEPROM实验姓名:xxx学号:xxxxxxxxx班级xxxx1、实现功能实现功能:通过通信协议使数码管显示字符。实验现象:程序下载后可以看到数码管显示“CorrEct表示测试正确,如果显示”Error“表示数据错误。2、硬件介绍该项目有以下模块:(1)、单片机系统(2)、数码管模块AT24C02外部总线EEPROM实验3、软件介绍软件流程图如下:函数声明HC595_InitHC595_Init等待上电写入数据延时100ms读取数据开始显示开始TestData[cnt]!=DataBuf[cnt]ToDisplayErrorToDisplayCorrectLED_DisplayLED_Display否是AT24C02外部总线EEPROM实验3关键代码:/***********************************************函数名称:AT24C02_WritePage功能:AT24C02页写函数入口参数:pbuf:指向数据指针返回值:无备注:无************************************************/voidAT24C02_WritePage(unsignedchar*pbuf){unsignedchari;AT24C02_Start();//起始信号AT24C02_SendByte(AT24C02_ADD_WR);//发送设备地址+写信号AT24C02_SendByte(TEST_ADD);//发送存储单元地址for(i=0;iPAGE_SIZE;i++)//写入一页的数据{AT24C02_SendByte(pbuf[i]);}AT24C02_Stop();//停止信号}AT24C02外部总线EEPROM实验/***********************************************函数名称:AT24C02_ReadPage功能:AT24C02页读函数入口参数:pbuf:指向返回数据指针返回值:无备注:无************************************************/voidAT24C02_ReadPage(unsignedchar*pBuf){unsignedchari;AT24C02_Start();//起始信号AT24C02_SendByte(AT24C02_ADD_WR);//发送设备地址+写信号AT24C02_SendByte(TEST_ADD);//发送存储单元地址AT24C02_Start();//起始信号AT24C02_SendByte(AT24C02_ADD_RD);//发送设备地址+读信号for(i=0;iPAGE_SIZE;i++)//读出一页数据{pBuf[i]=AT24C02_RecvByte();//读出一个字节数据if(i==(PAGE_SIZE-1))//I2C协议接收最后一个数据不进行应答{//详细参考I2C协议规定AT24C02_SendACK(NOACK);//最后一个数据不需要应答}AT24C02外部总线EEPROM实验5else{AT24C02_SendACK(ACK);//应答}}AT24C02_Stop();//停止信号}4、调试通过下载软件,将程序下载后,就可以看到数码管显示“CorrEct表示测试正确,如果显示”Error“表示数据错误,该项目显示结果如上,所以数据正确。

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功