前言:

无数昼夜的来回轮替以后,这本《驱动篇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 】原创教程连载导读【连载完成,共二十九章】的更多相关文章

  1. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】连载导读

    前言: 无数昼夜的来回轮替以后,这本<驱动篇I>终于编辑完毕了,笔者真的感动到连鼻涕也流下来.所谓驱动就是认识硬件,还有前期建模.虽然<驱动篇I>的硬件都是我们熟悉的老友记,例 ...

  2. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十九:SDRAM模块② — 多字读写

    实验十九:SDRAM模块② — 多字读写 表示19.1 Mode Register的内容. Mode Register A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A ...

  3. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二十:SDRAM模块③ — 页读写 α

    实验二十:SDRAM模块③ — 页读写 α 完成单字读写与多字读写以后,接下来我们要实验页读写.丑话当前,实验二十的页读写只是实验性质的东西,其中不存在任何实用价值,笔者希望读者可以把它当成页读写的热 ...

  4. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二:按键模块① - 消抖

    实验二:按键模块① - 消抖 按键消抖实验可谓是经典中的经典,按键消抖实验虽曾在<建模篇>出现过,而且还惹来一堆麻烦.事实上,笔者这是在刁难各位同学,好让对方的惯性思维短路一下,但是惨遭口 ...

  5. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验七:PS/2模块① — 键盘

    实验七:PS/2模块① — 键盘 实验七依然也是熟烂的PS/2键盘.相较<建模篇>的PS/2键盘实验,实验七实除了实现基本的驱动以外,我们还要深入解PS/2时序,还有PS/2键盘的行为.不 ...

  6. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十:PS/2模块④ — 普通鼠标

    实验十:PS/2模块④ - 普通鼠标 学习PS/2键盘以后,接下来就要学习 PS/2 鼠标.PS/2鼠标相较PS/2键盘,驱动难度稍微高了一点点,因为FPGA(从机)不仅仅是从PS/2鼠标哪里读取数据 ...

  7. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十八:SDRAM模块① — 单字读写

    实验十八:SDRAM模块① — 单字读写 笔者与SDRAM有段不短的孽缘,它作为冤魂日夜不断纠缠笔者.笔者尝试过许多方法将其退散,不过屡试屡败的笔者,最终心情像橘子一样橙.<整合篇>之际, ...

  8. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】【实验一】流水灯模块

    实验一:流水灯模块 对于发展商而言,动土仪式无疑是最重要的任务.为此,流水灯实验作为低级建模II的动土仪式再适合不过了.废话少说,我们还是开始实验吧. 图1.1 实验一建模图. 如图1.1 所示,实验 ...

  9. 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验六:数码管模块

    实验六:数码管模块 有关数码管的驱动,想必读者已经学烂了 ... 不过,作为学习的新仪式,再烂的东西也要温故知新,不然学习就会不健全.黑金开发板上的数码管资源,由始至终都没有改变过,笔者因此由身怀念. ...

随机推荐

  1. 自动化运维之-PXE实现系统批量自动安装

    转自:https://www.linuxidc.com/Linux/2017-10/147379.htm 本节索引 需求分析 PXE简介 整体方案 服务选择 功能实现 安装调试 错误分析 总结 1 需 ...

  2. java中四舍五入——double转BigDecimal的精度损失问题

    代码: double d = -123456789012345.3426;//5898895455898954895989; NumberFormat nf = new DecimalFormat(& ...

  3. 【Matplotlib】数据可视化实例分析

    数据可视化实例分析 作者:白宁超 2017年7月19日09:09:07 摘要:数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息.但是,这并不就意味着数据可视化就一定因为要实现其功能用途而令 ...

  4. 修改oracle为归档模式

    1.查看是否为归档模式 SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled ...

  5. 〖Linux〗Ubuntu用户重命名、组重命名,机器重命名~

    有时候得到的一台机器名字并不是自己熟悉的,或许是你只是想希望修改一下用户名等等-- 步入正题,其实很简单的,重启机器之后不要进入桌面,按下Ctrl+Alt+F1,使用Root登录,执行以下命令: # ...

  6. 启动Jupyter Notebook

    按照图所示,在命令下输入ipython notebook 即可启动Jupyter. 启动后的效果:

  7. R中统计假设检验总结(一)

    先PS一个:考虑到这次的题目本身的特点 尝试下把说明性内容都直接作为备注写在语句中 另外用于说明的部分例子参考了我的教授Guy Yollin在Financial Data Analysis and M ...

  8. 5.翻译系列:EF 6中数据库的初始化(EF 6 Code-First 系列)

    原文地址:http://www.entityframeworktutorial.net/code-first/database-initialization-in-code-first.aspx EF ...

  9. [svc]cfssl模拟https站点-探究浏览器如何校验证书

    准备cfssl环境 wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -O /usr/local/bin/cfssl wget https://pkg ...

  10. 基于vue-cli项目添加服务端渲染

    两个示例的git地址: 1. 我的环境 2. 方式一:使用prerender-spa-plugin插件获得SSR的效果. 2.1 说明 2.2 初始化 1 vue init webpack vue-p ...