打印
[资料分享与下载]

YL-KL26Z读写板载AT24C02(KDS3.0+KSDK1.2)

[复制链接]
820|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lovecat2015|  楼主 | 2015-10-16 09:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一、问题描述:
YL-KL26Z板子上带有一片AT24C02的E2PROM,使用的是I2C接口,那KL26Z的I2C接口如何使用,如何用KSDK1.2来实现测试?需要用到哪些函数呢?

二、解决办法:
1、首先来看一下YL-KL26Z与AT24C02的接口:

有图可以看出,是用的是I2C1接口
2、那I2C相关的库函数都有哪些呢,我们找些简单的,用阻塞方式相关的函数。
3、首先是I2C主机初始化函数。

4、I2C模块释放函数。

5、I2C通信速度设定函数。

6、I2C模块发送N字节数据函数,使用阻塞模式。

相关帖子

沙发
lovecat2015|  楼主 | 2015-10-16 09:17 | 只看该作者
7、I2C模块接收数据函数。

8、最后是I2C模块中断处理函数。

9、以上是I2C相关的函数。首先要搞清楚使用的参数,当然相当简单了。
10、下面是在pin_mux.c文件中的I2C模块引脚配置函数。

11、在系统硬件初始化函数中添加I2C引脚配置函数调用,使用的时I2C1。

12、下面就是主程序,首先是定义一些全局变量和宏定义AT24C02的页长度等基本数据。

13、住函数中首先定义I2C相关结构体 变量,并向串口输出提示信息。

14、初始化I2C主机模块。

15、填充需要传输的数据。

使用特权

评论回复
板凳
lovecat2015|  楼主 | 2015-10-16 09:19 | 只看该作者
16、向AT24C02写入数据。

17、从AT24C02读出刚才写入的数据。

18、进行数据的比较,看看读写是否正确

19、释放I2C主机模块。

20、编写数据比较函数。

21、看下演示效果,上电,串口输出如下信息。

22、安任意键,进行数据的写入和读取操作,并进行判断。
3991.jpg (100.99 KB, 下载次数: 0)
下载附件
2015-9-25 23:15 上传




三、感想与收获:
1、使用KSDK库还是比较快速的,不用过多的考虑处理器本身的结构。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

80

主题

816

帖子

0

粉丝