1156|1

1047

帖子

3

资源

纯净的硅(中级)

【NUCLEO-L552ZE测评】+AT24C32的读写操作实验 [复制链接]

    在我的DS1307日历模块中包含了一块AT24C32EEPROM芯片,这块芯片正好准备以后存放蓝牙设备的相关数据,因此首先测试对AT24C32的读写操作。本次测试仍然是使用模拟I2C进行,这块EEPROM有32K(4096*8)容量,由于地址大于256,因此需要双字节内部地址,与一般的I2C操作的区别是内部地址要先发送高8位,再发送低8位,除此之外操作是相同的。

    我的测试是以秒为周期,先读出存储在AT24C32芯片中的日期字符串(即年月日时分秒),然后再将当前的日期字符串写入到AT24C32k中,以便下次读取,即当前屏幕上显示的字符串是上一秒保存进去的。测试过程的照片如下:

I2C_1.jpg

 

    屏幕显示如下:

I2C_2.jpg

 

    这是测试效果的动画,因屏幕的亮度偏低,观看效果差:

I2C_1.gif

 

    下面是测试的代码:

void AT24C32_Test(void)
{
    uint8_t Txt[16];
    SI2C_16bitBuffRead( 0xA0, 0, 16, Txt);
    LCD_write_ASCII(0, 5, 1, Txt);
    Txt[0] = 'D';
    Txt[1] = year / 1000 + 0x30;
    Txt[2] = year % 1000 / 100 + 0x30;
    Txt[3] = year % 100 / 10 + 0x30;
    Txt[4] = year % 10 + 0x30;
    Txt[5] = month / 10 + 0x30;
    Txt[6] = month % 10 + 0x30;
    Txt[7] = day / 10 + 0x30;
    Txt[8] = day % 10 + 0x30;
    Txt[9] = hour / 10 + 0x30;
    Txt[10] = hour % 10 + 0x30;
    Txt[11] = minute / 10 + 0x30;
    Txt[12] = minute % 10 + 0x30;
    Txt[13] = second / 10 + 0x30;
    Txt[14] = second % 10 + 0x30;
    Txt[15] = 0;
    SI2C_16bitBuffWrite( 0xA0, 0, 16, Txt);
}

 

此帖出自stm32/stm8论坛

赞赏

1

查看全部赞赏


回复

1998

帖子

3

资源

版主

感谢分享!AT24系列的还是比较常用的!


回复
您需要登录后才可以回帖 登录 | 注册

最新文章 更多>>
    关闭
    站长推荐上一条 1/10 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表