找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2298|回复: 0
打印 上一主题 下一主题
收起左侧

FPGA IIC驱动设计资料

[复制链接]
跳转到指定楼层
楼主
黑金动力开发板IIC设计驱动

IIC 储存模块
IIC 储存器是笔者用来练习精密控时的经典例子。《整合篇》之际,IIC 储存器的解释,笔者也自认变态。如今笔者回头望去,笔者也不知道自己当初到底发什么神经,既然将IIC 的时序都解释一番。由于开发上板也嵌着 IIC 储存器(24LC04),笔者还得循例地介绍一下。

IIC 储存器是应用 IIC 总线的储存器,时序本身并不是很复杂不过缺有一大堆时序参数,而且官方提供的时序也不利于描述,所以许多时序都必须自行绘制,真是麻烦死人。麻烦归麻烦,笔者终究还要吃饭,为了肚子,再麻烦的事情也要硬着头皮捱过去  ...  这也是白骆驼的恶作剧!



图 16.1 是 IIC 总线与 IIC 设备常见的示意图。理想上,一条 IIC 总线允许千万 IIC 设备占据在上  ...  物理下,一条 IIC 总监究竟允许多少 IIC 设备占据其中必须根据设备地址的长度。默认下,设备地址为八位宽,因此设备地址也称为设备字节。设备地址的高四位,即[7..4]记录硬件 ID,接续三位即  [3..1]  则记录硬件地址,最后一位则是设备的访问方向。结果如表 16.1 所示:

所谓硬件 ID 就是 IIC 设备的辨识 ID,硬件 ID 会随着厂商还有设备的种类而有所改变。开发板上的 IIC 设备是某厂商的 IIC 储存器,即 24LC04,硬件 ID 为  4’b1010。至于硬件地址就是 IIC 设备在总线上辨识地址,默认下为 3 位,即同类的 IIC 设备在同一条 IIC总线上仅允许占据 8 个而已。然而,开发板上的  24LC04  为 3’b000。最后的访问方向位则是主机用来通知从机,此刻的访问目的是读还是写。

总结来说,设备地址除了访问方向以外,前七位一般都是固定的,例如开发板的 IIC 储存器 24LC04,设备地址就是  8’b1010_000_×。


IIC 总线的时序,感觉上一组完成的操作宛如是一堆拼图。如图 16.2 所示,那是 24LC04的写操作,时序先填上为起始位,再来是设备地址,余下是应答位,随之是数据地址,然后又是应答位,接着是写如数据,再一次应答位,最后挂上结束位以示一次性的写操作已经完成。那么,写操作的经过如下所示:

(一)主机发送起始位;
(二)主机发送设备地址(写);
(三)等待从机应答;
(四)主机发送数据地址;
(五)等待从机应答;
(六)主机发送数据;
(七)等待从机应答;
(八)主机发送结束位。

读者稍微注意一下设备地址的最低位,笔者稍微用蓝色将其高亮。由于此刻是写操作,所以设备地址的访问方向是“写”,所以访问方向位设置为 0。



图 16.3是 24LC04 的读时序,同样它也是由一堆“拼图”组合而成。相较写操作,读操作不仅多了许多“拼图”,而且途中也改变访问方向。那么,读操作的经过如下所示:

(一)主机发送起始位;
(二)主机发送设备地址(写);
(三)等待从机应答;
(四)主机发送数据地址;
(五)主机发送起始位;
(六)主机发送设备地址(读);
(七)等待从机应答;
(八)主机读取数据;
(九)从机没有应答(主机无视应答);
(十)主机发送结束位。
未进入正题之前,请允许笔者加入一些小插曲。IIC 总线是一种低速的总线,不过 IIC总线有  100Khz  还有  400Khz  两种速率提供我们选择,要么 100Khz,要么 400Khz,要么两者兼施,不管哪一种《整合篇》都曾实验过。在此,实验十六会以 400Khz 的速率作为标准。

笔者曾在前面说过,IIC 总线之所以麻烦,因为 IIC 总线有大小不同的时序参数(时间参数)。一般而言,时间参数都都被顺序语言一笑而过,那是因为顺序语言无法实现精密控时。虽然描述语言也可以一笑而过,但是语言的本质却不允我们这么作,如果我们选择无视时序参数  ...  那么,打从一开始我们还是不学为好。

此外,描述 IIC 的总线时序有各种各样的方法,但是笔者会选择表达能力更高,控制能力更细的描述手段。我们知道 IIC 的总线时序是由一块又一块的拼图拼凑而成,当我们在建模的时候,我们会针对各个拼图作出局部性的描述。期间,我们也必须考虑各种时序参数,如表 16.2 所示:

完整的pdf格式文档51黑下载地址:
驱动篇I-实验16.pdf (1.33 MB, 下载次数: 21)



评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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