OpenEdv-开源电子网

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

IIC实验中检查AT24CXX是否正常时为什么是判断返回的值是否为0x55?还有,如果是其他的芯片是将255换为最大地址长度减1吗?

[复制链接]

10

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
92
金钱
92
注册时间
2015-1-27
在线时间
4 小时
发表于 2016-1-9 21:43:57 | 显示全部楼层 |阅读模式
1金钱
IIC实验中检查AT24CXX是否正常时为什么是判断返回的值是否为0x55?还有,如果是其他的芯片是将255换为最大地址长度减1吗?
u8 AT24CXX_Check(void)
{
        u8 temp;
        temp=AT24CXX_ReadOneByte(255);                        
        if(temp==0X55)return 0;                  
        else
        {
                AT24CXX_WriteOneByte(255,0X55);
            temp=AT24CXX_ReadOneByte(255);         
                if(temp==0X55)return 0;
        }
        return 1;                                                                                          
}

最佳答案

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

这个0X55是随意定义的.你可以设置其他值. 其他芯片,换最后一个地址,可以的.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-1-9 21:43:58 | 显示全部楼层
这个0X55是随意定义的.你可以设置其他值.   其他芯片,换最后一个地址,可以的.
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2015-8-13
在线时间
1 小时
发表于 2016-1-13 16:43:30 | 显示全部楼层
正点原子 发表于 2016-1-9 21:43
这个0X55是随意定义的.你可以设置其他值.   其他芯片,换最后一个地址,可以的.

请问原子哥 有什么办法可以知道板载芯片型号???
回复

使用道具 举报

3

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
64
金钱
64
注册时间
2017-9-26
在线时间
9 小时
发表于 2017-10-6 20:58:46 | 显示全部楼层
大兄弟,这个程序的逻辑是则么回事啊?我就感觉这个程序根本就到达不了 return 1 啊,每次检测如果不是0x55不就进入else 了吗,else里边又一定是返回return 0 的,所以根本到达不了 return 1 啊?这样理解哪里出粗了?
回复

使用道具 举报

3

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2020-9-27
在线时间
23 小时
发表于 2020-10-16 20:05:45 | 显示全部楼层
烽烟愠梓 发表于 2017-10-6 20:58
大兄弟,这个程序的逻辑是则么回事啊?我就感觉这个程序根本就到达不了 return 1 啊,每次检测如果不是0x55 ...

对啊   没问题的话就是等于你写的随意值0X55  当返回1的时候就是24CXX出问题了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-20 11:02

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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