叩持电子-ASIC数字IC设计讲解(4)
原标题:叩持电子-ASIC数字IC设计讲解(4)
大家好 , 我是IC修真院的Andy老师 , 接下来跟同学们一起来来做一个小的练习,练习的题目是LCDdriver的设计 。
LCDdriver的设计从需求 , 功能 , 划分 , 接口协议 , 时序 , 分解 , 功能设计 , 仿真 。 我们按照这个来讲 。 那么 , 需求分析是什么?
需求分析:就是要求大家使用verilog代码完成对LCD1602型号的液晶显示屏的驱动设计 , 那1602就是两行 , 每行16个字符 , 这个驱动 , 液晶显示 , 它有它的端口 , 后面给同学们看一下 , 那他的上位机 , 前面是一个控制系统 , 对应的下位机就是液晶显示屏 , 内部呢 , 实际上已经内嵌了一个控制的模块 , 能够接收上位机发过来的控制的指令跟这些data 。
那我们的要求LCD驱动模块跟这个主控系统 , 使用APB接口 , 这里专门讲了一下 , 就是说使用APB接口,我们会定义他的时钟是64MHz 。 这边比如说已经定好了 , 前面由于我们上位机的需求 , 那么是64 。 上位机要求是APB对吧 , 这个clock好了 。 然后驱动模块 , 上位机发过来 , 把东西发到这儿来控制 。 那么你的APB把你的东西转出来 , 到这儿来 , 比如说 , 这是你显示的那个两行 , 一行16个字符 , 1602它里边也有一个内嵌的一个控制的东西 , 这是我们要做的东西 。 这个地方的工作要求是50兆 , 那第4点就是说 , 这个模块 , 我们初始化完成以后 , 输出什么呢?ABCDEFGHIJKLMOP16个对吧 , 第二行小写的ABCD , 那要求的是说 , 我们这边主控系统 , 能够通过APB总线进行编程 , 控制你输出的这个字符 。 第五个就是我们的需求 , 就是有人要求 , 做这么一个东西 , 要设计一些东西去分析 。 你每次输出个新的字符的时候 , 要来配置寄存器 , 那如果说人家现在忙着 , 你不能去编程 , 那就需要设计这个busy , 只有notbusy的时候 , 才去往里写 , 那我们要求是说 , 把这边给过来的busy信息放到state里边去 , 这边能够知道你是忙还是不忙 。 第七个要求 , 我们只负责往里写 , 这个很重要 , 再强调一遍 , 我们只负责往里写 。
【叩持电子-ASIC数字IC设计讲解(4)】
文章图片
我们认为它任何时候我们只负责往里写 , 不去读 , 那就意味着PWRITE , 这个东西是高的 , 往里写这个data , 做读操作 。
文章图片
需求分析:拓展小知识1
这是一个补充的知识 , 是关于这个液晶显示屏的 , 显示屏的原理 。 我们通过电压 , 对这显示区域进行控制 , 有电的就显示 , 现在很多像PDA上面都用到这个 。 那它的分类有 , 段式的 , 字符式的 , 点占式的等等比较多 , 这里就是补充一点知识 。
文章图片
需求分析:拓展小知识2
那LCD呢 , 显示一个字符比较复杂 , 因为一个字符一般是说有这个8*8 , 或者是6*8的一个点阵组成的 , 可以想象一下 , 要把这个东西显示过来的时候 , 可以想象一下我就是一个matrix , 那既要找到和显示屏幕上对应着的那个位置 , 还要是每个字节的不同位 , 为一还是为零 , 那一 , 你这个地方就亮的 , 零就不亮了 , 这样就可以显示出某个字符来 。 我们现在用的带着这个字符发生器的 , 就比较简单了 , 只需要把想要的东西控制过去 , 控制你的光标 , 送上想要的这个字符 , 就可以完成了 。
文章图片
需求分析:LCD1602
接下来做实验 , 对应这个component元器件 , 它内部的已经有一个控制芯片了 , 我们看一下他的管脚 , 在这个地方都写得很清楚 。 那一会儿我们有一个table , 会来描述的 。 就是说 , 我们要做的东西是什么 , 我们要往这些管脚上驱动东西 , 让他在上面把我们想要的信息显示出来 , 要做一个驱动模块对 , 那这个驱动模块做完了以后 , 比如说有一个MCU , 一个POC 。 这个地方有一个APB的bus , 能通过APB的bus来控制你里面的东西 , 把你想要的东西下进来 。 这就是这个东西本身内部已经有一个控制的芯片了 , 相对来说就会简单些 。
文章图片
需求分析:LCD1602液晶显示屏主要技术参数
那我们做的这个譬如说需求分析主要的技术参数都列出来了 , 显示容量1602十六个字符 , 两行 , 工作电压的五V , 比如说 , 比如说是从4.5V到5.5V , 工作电流 , 最佳工作电压 , 这个尺寸都给你标注出来 。 刚才强调了内部已经有一个控制器了 , 所以说设计相对来说就简单了 。 我们只需要把我们的设计 , 相应的驱动 , 像VCS , VDD , 这个东西是不是我们来控制的 , 要控制的是它的data , 他的enable , RW , RS , 这是我们要控制的 。 我们要设计状态机 , 怎么来帮我把想要显示的数据传递给他 , 他内部就会把这个东西给显示出来 。 那人家这个东西已经有标准的字库表在里面 , 这个表库里边比如说像ABCD , 1234等等它里面都有 。
- 全程电子化、零费用、零跑腿 曲阜市企业简易注销“简上再简”
- 单相电子式预付费电能表手机版的优势
- 什么是控制阀门电子秤
- 答疑 ▏纳税人如何查验增值税电子专用发票?
- 制作电子画册你一定要注意这3点!
- 电子围栏警示牌有哪几种?
- 【IPO价值观】三大业务分散且强敌林立:奕东电子竞争力何在?
- 美媒:独行侠成为联盟首支接受电子货币支付的球队
- 美国还会继续制裁印度吗?印度电子战新项目出炉,除美国没人能搞
- 好的电子erp软件需要满足企业哪些需求?-意然科技