OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4527|回复: 7

关于正点原子IIC例程AT24CXX_Write()的问题

[复制链接]

6

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2017-9-19
在线时间
33 小时
发表于 2018-10-8 09:20:59 | 显示全部楼层 |阅读模式
5金钱
根据原子对AT24CXX_Write()函数的解释,在AT24CXX里面的指定地址开始写入指定个数的数据,可是我试了好多遍只能从0地址开始写才能写入,如果我想从4地址写4个字节长度数据却写不进去,这是为什么呢?有没有大神遇到过相同问题,帮忙分析一下,谢谢了。。。

最佳答案

查看完整内容[请看2#楼]

代码是自己设计的,想怎么写就怎么写, void WriteNBytes(u16 DeviceAddr,u8 RegisterAddr,u8* pBuffer,u16 NumToWirte) { IIC_Start(); IIC_Send_Byte(DeviceAddr|0); IIC_Wait_Ack(); IIC_Send_Byte(RegisterAddr); IIC_Wait_Ack(); while(NumToWirte) { IIC_Send_Byte(*pBuffer); IIC_Wait_Ack(); pBuffer++; NumToWirte--; } IIC_Stop(); }
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

90

主题

534

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1059
金钱
1059
注册时间
2017-4-12
在线时间
280 小时
发表于 2018-10-8 09:21:00 | 显示全部楼层
代码是自己设计的,想怎么写就怎么写,
void WriteNBytes(u16 DeviceAddr,u8 RegisterAddr,u8* pBuffer,u16 NumToWirte)
{
        IIC_Start();
        IIC_Send_Byte(DeviceAddr|0);
        IIC_Wait_Ack();
        IIC_Send_Byte(RegisterAddr);
        IIC_Wait_Ack();
        while(NumToWirte)
                {
                        IIC_Send_Byte(*pBuffer);
                        IIC_Wait_Ack();
                        pBuffer++;
                        NumToWirte--;
                }
        IIC_Stop();
}
穷不可怕,可怕的是穷的是我~~~
回复

使用道具 举报

2

主题

686

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
10921
金钱
10921
注册时间
2014-6-12
在线时间
1041 小时
发表于 2018-10-8 09:58:55 | 显示全部楼层
开发板的例程只是提供了解决特定问题一种方法,你应该举一反三,根据你的要求写出你需要的程序,写的时候不仅要看原子的资料,还要看相应器件的数据手册。
回复

使用道具 举报

2

主题

686

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
10921
金钱
10921
注册时间
2014-6-12
在线时间
1041 小时
发表于 2018-10-8 10:07:22 | 显示全部楼层
原子的这个函数“void AT24CXX_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len)”有没有试一下。
回复

使用道具 举报

6

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2017-9-19
在线时间
33 小时
 楼主| 发表于 2018-10-8 14:14:02 | 显示全部楼层
xuyaqi 发表于 2018-10-8 10:07
原子的这个函数“void AT24CXX_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len)”有没有试一下。

试过,好像也写不进去。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2018-10-9 02:11:45 | 显示全部楼层
我们例程运行良好
你确定是我们的硬件么?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

6

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
176
金钱
176
注册时间
2017-9-19
在线时间
33 小时
 楼主| 发表于 2018-10-9 08:31:13 | 显示全部楼层
正点原子 发表于 2018-10-9 02:11
我们例程运行良好
你确定是我们的硬件么?

恩恩,是的,是我操作的问题,我把数组地址弄错了,谢谢原子哥
回复

使用道具 举报

16

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2019-9-1
在线时间
61 小时
发表于 2020-1-31 22:30:01 | 显示全部楼层
10101100 发表于 2018-10-8 14:14
试过,好像也写不进去。

我也遇到了,可以读出来,写不进去
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-21 18:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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