硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2319|回复: 4
收起左侧

[I2C控制器] H7-TOOL的I2C控制器驱动EEPROM操作说明,支持AT24C02/04/08/16/32/64/128,仅需读写两个函数,随意访问(2021-10-24)

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106731
QQ
发表于 2021-10-24 10:18:06 | 显示全部楼层 |阅读模式
说明:
1、H7-TOOL的I2C控制器支持USB,以太网和WiFi三种连接方式,同时以太网和WiFi支持局域网和外网控制。
2、I2C控制器使用的LUA文件调用非常简单,与我们的V567开发板的BSP驱动函数一模一样,可以直接像C一样调用。EEPROM仅用到读函数ee_ReadBytes和写函数ee_WriteBytes


1、下载EEPROM的LUA文件,支持了AT24C02/04/08/16/32/64/128

这个LUA程序实现

eeprom.7z (2.06KB)

下载打开后,程序里面做了注释,默认开启的是AT24C128,在LUA里面符号 -- 表示行注释, --[[     --]]表示段落注释。

根据自己的程序需要,选择使用的EEPROM器件,同时根据需要修改器件地址:




2、接线说明:




3、扫描I2C器件:

注意,板子上控制EEPROM的主控芯片不可再控制这个芯片,会跟TOOL的访问冲突,简单省事些,可以将主控芯片的Flash擦除。




4、复制LUA文件所有代码到控制器的这个窗口里面

效果:



5、EEPROM测试

EEPROM仅用到读函数和写函数

读函数:ee_ReadBytes(_usAddress,  _usSize)
--  从串行EEPROM指定地址处开始读取若干数据
-- _usAddress : 起始地址
-- _usSize : 数据长度,单位为字节


写函数:ee_WriteBytes(_pWriteBuf,  _usAddress,  _usSize)
--  向串行EEPROM指定地址写入若干数据,采用页写操作提高写入效率
--  _pWriteBuf : 存放读到的数据的缓冲区指针
-- _usAddress : 起始地址
-- _usSize : 数据长度,单位为字节


写入的数据采用这种格式"\xf0\x00\x11\x22\x33\xf0\x00\xDD\x22\x33" 其中转义字符\x表示后面的16进制数据

本帖提供的LUA文件自带的测试代码如下,大家可以随意修改:



点击执行按钮,效果如下:



如果需要用到其它常用的LUA API,看H7-TOOL上位机带的LUA小助手即可
回复

使用道具 举报

0

主题

43

回帖

43

积分

新手上路

积分
43
发表于 2021-10-24 10:40:59 | 显示全部楼层
感谢硬汉哥周末的分享,10086个。现在每天不来论坛逛逛,总觉得少点什么似的
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106731
QQ
 楼主| 发表于 2021-10-24 12:05:41 | 显示全部楼层
henge-stone 发表于 2021-10-24 10:40
感谢硬汉哥周末的分享,10086个。现在每天不来论坛逛逛,总觉得少点什么似的

刚刚上传错位置了,现在已经可以正常下载附件了。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106731
QQ
 楼主| 发表于 2021-10-25 02:17:51 | 显示全部楼层
更新下。
回复

使用道具 举报

23

主题

1406

回帖

1475

积分

至尊会员

积分
1475
发表于 2021-10-25 11:26:45 | 显示全部楼层
终于发布EEPROM控制功能,省的自己再研究了。辛苦了

代码不规范,亲人两行泪!
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-2 22:27 , Processed in 0.165748 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表