WeStudio技术社区

 找回密码
 立即注册

快捷登录

QQ登录

只需一步,快速开始

查看: 3287|回复: 5

I2C控件问题

[复制链接]

2

主题

3

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2020-6-29 15:06:55 | 显示全部楼层 |阅读模式
在I2C控件例程中是以24C01为例进行操作的,此EEPROM仅需单字节寄存器地址即可操作,但现在实际项目使用的是24C32或者更大容量的存储,那么问题来了,自带控件如何读写这类16位或者更高位数的I2C接口器件?

下边附上读取操作的逻辑图:
20200629150523.png

回复

使用道具 举报

99

主题

142

帖子

1046

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1046
发表于 2020-6-30 09:02:51 | 显示全部楼层
目前I2C控件的read()方法不支持16位寄存器地址的,我们会在下一个版本中支持。但是目前I2C控件的write()方法是支持写16位寄存器地址的,如:
device.i2c.write(0x50, [0xAA, 0xBB, 0xCC]); // 如果是16位的寄存器地址,前面的0xAA, 0xBB是地址, 后面的0xCC是要写的数据; 如果是8位的寄存器地址,前面的0xAA是地址,后面的0xBB, 0xCC是要写的数据
回复

使用道具 举报

2

主题

3

帖子

18

积分

新手上路

Rank: 1

积分
18
 楼主| 发表于 2020-7-2 16:48:52 | 显示全部楼层
hixon 发表于 2020-6-30 09:02
目前I2C控件的read()方法不支持16位寄存器地址的,我们会在下一个版本中支持。但是目前I2C控件的write()方 ...

将自带的例程下载到液晶屏中,开机时用逻辑分析仪或示波器测试,并没有发现会自动开始探测I2C设备。另外不管开机探测,按钮触发事件中调用device.isSurpported函数,提示硬件不支持。
回复

使用道具 举报

99

主题

142

帖子

1046

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1046
发表于 2020-7-3 22:09:35 | 显示全部楼层
ALEX 发表于 2020-7-2 16:48
将自带的例程下载到液晶屏中,开机时用逻辑分析仪或示波器测试,并没有发现会自动开始探测I2C设备。另外 ...

JS-ARM串口屏不支持I2C,PWM等扩展接口,只有Express Pi支持所有硬件接口(包括网口)。
回复

使用道具 举报

11

主题

68

帖子

663

积分

超级版主

Rank: 8Rank: 8

积分
663
发表于 2020-7-4 05:28:42 | 显示全部楼层
JS-ARM串口屏系列产品为物一世合作伙伴产品, 主要解决显示和串口通讯问题。 Express-Pi迷你计算机为物一世推出的硬件,功能更强大,除了显示外,对硬件接口i2c, pwm, gpio, adc和网络通讯全面支持,如果有这方面需求的用户建议采用ExpressPi设计产品。
回复

使用道具 举报

99

主题

142

帖子

1046

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1046
发表于 2020-7-8 13:49:47 | 显示全部楼层
1.3.4版本开始,已支持I2C读寄存器地址为双字节(16位), 如:
  1. device.i2c.read(0x50, [0x11, 0x22], 2); // I2C总线地址0x50的设备,从寄存器地址0x1122读取两个字节数据
复制代码
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|物一世(北京)科技有限公司 ( 京ICP备20025895 )

GMT+8, 2024-3-28 23:31 , Processed in 0.014603 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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