5871|7

85

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

求:用CC430F15XX单片机的I2C操作AT24C系列EEPROM的程序 [复制链接]

求:用CC430F15XX单片机的I2C操作AT24C系列EEPROM的程序(不是模拟的,而是真的用msp430的I2C模块),我自己写了一个,但不知道为什么,读出来的数据总是为0xFF,看哪位大神有写好了点参考一下,谢谢!

最新回复

经验之谈,标识一下  详情 回复 发表于 2012-7-8 01:43
 
点赞 关注

回复
举报

70

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
我也是啊 我是4152与FM24C16
读出来的都是0xff
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
谁能帮我看看啊 貌似坛子里面也有大侠碰到过这个问题,怎么解决的呢?
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

4
 

最后更新

本着对别人和自己负责的有始有终的原则,说说现在的更新或者状态:
TI上面确实有例程,不过那是针对msp430x2系列的,而且很晕倒的是msp430x2系列和CC430F系列的I2C颇有不同。当时我走入困境时,最后使出了一招杀手锏,那就是不用430的内置的I2C,而用那几个引脚来做模拟I2C(因为以前做过模拟的I2C写AT24CXX的EEPROM程序)!经过测试,发现是OK的。
我用模拟的方法只是为了证明硬件是OK的,最后还要使用CC430的I2C。经过仔细看datasheet才知道,I2C那个发送中断意味着的是可以往发送缓冲区填写内容,而并非说真的能够往里面填写了,为什么呢?因为正常通讯是,还要接收一个ACK才行,比较郁闷的是这个I2C内核有NACK的中断而没有ACK的中断。所以我自己写了一个小函数,去判断ACK插在中间,整个过程就OK了。

重点就是:要自己想办法判断ACK才能再发下一个数据。这是我现在的做法,召唤更好或者更正确的做法。
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

5
 
今天看到楼主的回帖,感觉道理,我稍后试试 来汇报一下。对于判别ACK,我还要想想,几天不调试,就忘记了,我现在又在整硬件的SPI,也很麻烦。
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

6
 

msp430的内置SPI

msp430的内置SPI,这两天也在做,我外接了一个SPI接口的SRAM,调试了一天半才调通。有两个要点:
第一个要点是:当你要接收的时候,也要发(无效)数据以便产生Clock;第二个要点是:确定你的外设时序是第一个clock先捕获然后才改变还是第一个clock先改变然后才捕获。默认是先改变再捕获的,但我用的SRAM相反。这个说不定会耽误你时间。
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

7
 
谢谢楼主,我用的内置的,之前模拟的模拟的SPI已经调试通了,但但是鉴于代码量,我打算换成硬件SPI,目前我的问题可能出在你说的第一点上了,就是没有在接受的时候MASTER通过发送伪数据来提供给sl××e时钟信号。这一点绝对至关重要,但是好像看坛子里面没有关于SPI这方面得描述,太感谢你了
 
 
 

回复

125

帖子

0

TA的资源

纯净的硅(中级)

8
 
经验之谈,标识一下
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
Microchip 直播|利用motorBench开发套件高效开发电机磁场定向控制方案 报名中!
直播主题:利用motorBench开发套件高效开发电机磁场定向控制方案
直播时间:2025年3月25日(星期二)上午10:30-11:30
快来报名!

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表