【黑金原创教程】【FPGA那些事儿-驱动篇I 】原创教程连载导读【连载完成,共二十九章】
前言:
无数昼夜的来回轮替以后,这本《驱动篇I》终于编辑完毕了,笔者真的感动到连鼻涕也流下来。所谓驱动就是认识硬件,还有前期建模。虽然《驱动篇I》的硬件都是我们熟悉的老友记,例如UART,VGA等,但是《驱动篇I》贵就贵在建模技巧的升华,亦即低级建模II。
话说低级建模II,读过《建模篇》的朋友多少也会面熟几分,因为它是低级建模的进化形态。许久以前,笔者就有点燃低级建模II的念头,但是懒惰的性格让笔者别扭许久。某天,老大忽然说道:“让咱们大干一场吧! ”。就这样,Alinx计划开启,这本《驱动篇I》也成为吉利开红炮。
《驱动篇I》涉及的硬件可谓是大杂烩,例如经典的流水灯,折磨死人的SDRAM,暴力的SD Card等,内容尽是一些平民硬件。虽然,它们曾在其它教程露脸过,但是结果都卡在一半,处于不上不下那种,说起来还真是不好意思,因为笔者当时年少无知嘛。因此,笔者尽可能为《驱动篇I》补足每一项解释以及时序。
老实说,《驱动篇I》更加钟情解释时序,提高代码的解读能力,减少连线,应用通用结构等小细节,古人不是说过什么细节决定成败。所以说,笔者宁愿在细节上加好料,也不要太啰嗦硬件。期间,如果发现什么地方存在忽略,请读者大人原谅懒惰的笔者。手册是读者的好朋友。
在此,笔者需要说声抱歉。《驱动篇I》是偏向实用性的教程,同时也是综合性质的教程,多少也会缺少一丝温柔。因为《驱动篇I》不会一点一滴给大伙解释,更多仅挑重点而已。入门的同学读起来可能会觉得痛苦,这种感觉好比一口气消化几块切糕。如果读者真的痛苦万分,读者可以回顾《Verilog HDL那些事儿》系列的教程,它可能更加适合。最后,愿大家建模愉快!
目录:
实验一:流水灯模块
实验二:按键模块① - 消抖
实验三:按键模块② — 点击与长点击
实验四:按键模块③ — 单击与双击
实验五:按键模块④ — 点击,长点击,双击
实验六:数码管模块
实验七:PS/2模块① — 键盘
实验八:PS/2模块② — 键盘与组合键
实验九:PS/2模块③ — 键盘与多组合键
实验十:PS/2模块④ — 普通鼠标
实验十一:PS/2模块⑤ — 扩展鼠标
实验十二:串口模块① — 发送
实验十三:串口模块② — 接收
实验十四:储存模块
实验十五:FIFO储存模块(同步)
实验十六:IIC储存模块
实验十七:IIC储存模块 - FIFO读写
实验十八:SDRAM模块① — 单字读写
实验十九:SDRAM模块② — 多字读写
实验二十:SDRAM模块③ — 页读写 α
实验二十一:SDRAM模块④ — 页读写 β
实验二十二:SDRAM模块⑤ — FIFO读写
实验二十三:DS1302模块
实验二十四:SD卡模块
实验二十五:SDHC模块
实验二十六:VGA模块
实验二十七:TFT模块 - 显示
实验二十八:TFT模块 - 触屏
实验二十九:LCD模块

【黑金原创教程】【FPGA那些事儿-驱动篇I 】原创教程连载导读【连载完成,共二十九章】的更多相关文章
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】连载导读
前言: 无数昼夜的来回轮替以后,这本<驱动篇I>终于编辑完毕了,笔者真的感动到连鼻涕也流下来.所谓驱动就是认识硬件,还有前期建模.虽然<驱动篇I>的硬件都是我们熟悉的老友记,例 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十九:SDRAM模块② — 多字读写
实验十九:SDRAM模块② — 多字读写 表示19.1 Mode Register的内容. Mode Register A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二十:SDRAM模块③ — 页读写 α
实验二十:SDRAM模块③ — 页读写 α 完成单字读写与多字读写以后,接下来我们要实验页读写.丑话当前,实验二十的页读写只是实验性质的东西,其中不存在任何实用价值,笔者希望读者可以把它当成页读写的热 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二:按键模块① - 消抖
实验二:按键模块① - 消抖 按键消抖实验可谓是经典中的经典,按键消抖实验虽曾在<建模篇>出现过,而且还惹来一堆麻烦.事实上,笔者这是在刁难各位同学,好让对方的惯性思维短路一下,但是惨遭口 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验七:PS/2模块① — 键盘
实验七:PS/2模块① — 键盘 实验七依然也是熟烂的PS/2键盘.相较<建模篇>的PS/2键盘实验,实验七实除了实现基本的驱动以外,我们还要深入解PS/2时序,还有PS/2键盘的行为.不 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十:PS/2模块④ — 普通鼠标
实验十:PS/2模块④ - 普通鼠标 学习PS/2键盘以后,接下来就要学习 PS/2 鼠标.PS/2鼠标相较PS/2键盘,驱动难度稍微高了一点点,因为FPGA(从机)不仅仅是从PS/2鼠标哪里读取数据 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十八:SDRAM模块① — 单字读写
实验十八:SDRAM模块① — 单字读写 笔者与SDRAM有段不短的孽缘,它作为冤魂日夜不断纠缠笔者.笔者尝试过许多方法将其退散,不过屡试屡败的笔者,最终心情像橘子一样橙.<整合篇>之际, ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】【实验一】流水灯模块
实验一:流水灯模块 对于发展商而言,动土仪式无疑是最重要的任务.为此,流水灯实验作为低级建模II的动土仪式再适合不过了.废话少说,我们还是开始实验吧. 图1.1 实验一建模图. 如图1.1 所示,实验 ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验六:数码管模块
实验六:数码管模块 有关数码管的驱动,想必读者已经学烂了 ... 不过,作为学习的新仪式,再烂的东西也要温故知新,不然学习就会不健全.黑金开发板上的数码管资源,由始至终都没有改变过,笔者因此由身怀念. ...
随机推荐
- android fastjson 解析
JSONObject jsonObject = JSON.parseObject(wsResponse);String recommends = jsonObject.getString(" ...
- Android 获得手机屏幕真实的宽高
http://stackoverflow.com/questions/1016896/get-screen-dimensions-in-pixels WindowManager w = activit ...
- [web前端] npm install -save 和 -save-dev 傻傻分不清
本文原文地址:https://www.limitcode.com/detail/59a15b1a69e95702e0780249.html 最近在写Node程序的时候,突然对 npm install ...
- cocos2d-x 学习资源
1. http://cocos2d.cocoachina.com/resource(中文),也有示例,文中缺少的图片可以从下面的网址下载 对应的英文是: http://cocos2d-x.org/wi ...
- CCNA实验3.单臂路由器
拓扑图: 一.交换机配置 通过路由器子接口的方式实现vlan之间的路由. conf t vlan 10 vlan 20 int f0/1 switchport access vlan 10 int f ...
- JAVA代码中获取JVM信息
一.JAVA中获取JVM的信息 原理,利用JavaSDK自带的ManagementFactory类来获取. 二.获取信息 1.获取进程ID @Test public void test1() { Ru ...
- linux 使用ifstat查看网络使用情况
首先安装ifstat wget http://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz tar xzvf ifstat-1.1.tar.gz cd ...
- IntelliJ IDEA 2017.3/2018.1激活与汉化
本文以IntelliJ IDEA 2017.3以及2018.1为例进行讲解.(持续更新:2018年5月28日) 适用版本(其它版本未测试): IntelliJ IDEA 2017.2.6.2017.3 ...
- centos7.4 开启ftp服务
1.安装vsftpd yum install -y ftp vsftpd 2.配置/etc/vsftpd/vsftpd.conf 修改项如下: #不允许匿名访问 anonymous_enable=NO ...
- 从public void onPreviewFrame(byte[] data, Camera arg1)拿到Bitmap(收集)
private PreviewCallback pc = new PreviewCallback(){ public void onPreviewFrame(byte[] data, Camera a ...