1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,
使用 i2c_read_ext_device_1_kit_tc397_TFT 演示代码通过 I2C 对EEROM(micochip 24AA02E48)进行写作操作,设备的内部地址设置为0x0000,可以写入 8 个字节的数据,但是写入第二的时候写不进去了, 请问,1. 写完第一设备内部地址需要设置为什么? 2. 如何一次性写入128字节的数据?(目前一次写入为8字节,多余8个字节数据写入不进去) 下图: uint8 write_data [36];uint16 addr = 0x0000; //设置设备的内部地址 write_data [0] = addr > > 8;//高字节 write_data [1] = (uint8) addr;//低字节//设置要 写入的数据 write_data [2] = 0x01;write_data [3] = 0x02;wr ite_data [4] = 0x04; write_data [5] = 0x04;write_data [6] = 0x05; write_data [7] = 0x06; write_data [8] = 0x07;uint8 大小 = 9; //5 个字节要传输到 i2 cDev(数据和内部地址) //在设备准备就绪后立即将数据写入设备(ifxi2c_i2c_Write( g_i2cde veeProm,write_data,大小)== ifxi2c_i2c_i2c_status_NAK); |
|
相关推荐
1个回答
|
|
根据你提供的信息,以下是我对你的问题的解答:
1. 写完第一个设备的内部地址后,你需要将地址设置为下一个要写入的设备的内部地址。对于你的情况,每次写入8个字节,所以第一个设备的内部地址是0x0000,下一个设备的内部地址应该是0x0008(即地址+8)。 2. 要一次性写入128个字节的数据,你需要循环写入8个字节的数据,直到全部写入完毕。你可以使用一个循环来实现这个过程。首先,将addr设置为第一个设备的内部地址0x0000,然后循环执行以下步骤: - 设置要写入的数据 - 执行I2C写操作 - 将addr增加8(addr += 8) 循环直到全部数据都写入完毕。 注意:在每次循环之前,确保将addr设置回正确的设备内部地址。如果一次性写入128个字节,你可能需要循环16次。 希望以上解答对你有帮助!如果还有更多问题,请随时追问。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
CYUSB3014烧录失败Cypress Benicia USB Boot Device
2865 浏览 1 评论
6668 浏览 0 评论
9412 浏览 3 评论
【开源资料】基于机智云的智能感应灯(原理图+PCB+源程序)
47629 浏览 4 评论
3765 浏览 0 评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 01:26 , Processed in 0.390230 second(s), Total 40, Slave 34 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号