欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    16乘16的点阵显示设计毕业设计.doc

    • 资源ID:4135679       资源大小:370KB        全文页数:26页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    16乘16的点阵显示设计毕业设计.doc

    SOPC/EDA综合课程设计报告设计题目:16*16的点阵显示设计设 计 者: 学 号: 08060107315 班 级: 电气工程及其自动化073班指导老师: 完成时间: 2010年1月20日设计报告综合测试总评格式(10)内容(40)图表(10)答辩(20)平时(20)目 录绪言1一、 设计项目与分析.3 1.1设计要求.31.2设计原理31.3设计框图.41.4层文件设计.4二、 亮灯显示.52.1 时序控制模块.53.1 时序控制模块仿真.62.3 扫描控制模块设计.63.3 扫描控制模块仿真.72.4 显示控制模块设计.73.4显示控制模块仿真.15三、暗灯显示.152.1时序控制模块设计及仿真.152.2扫描控制模块设计及仿真.162.3显示控制模块设计及仿真.17四、心得体会.25五、参考文献.25绪 论1 在信息产业中EDA产生的影响 随着大规模集成电路技术和计算机技术的不断发展, 在设计通信,国防,航天医学 工业自动化 计算机应用 仪器仪表等领域的电子系统设计工作中,EDA技术的含量正以惊人的 速度上升;电子类的高新技术项目的开发也逾益依赖于EDA技术的应用,即使是普通的电子产品的开发,EDA技术常常使一些原来的技术瓶颈得以轻松突破,从而使得产品的开发周期大为缩短,性能价格大幅度提高。不言而喻。EDA技术将迅速成为电子设计领域中的极其重要的组成部分。2 中国国内EDZ发展情况从目前的EDA技术来看,其发展趋势是政府重视 使用普及 应用广泛 工具多样 软件功能强大。中国EDA市场已渐趋成熟,不过大部分设计工程师面向的是PC主板的小型ASIC领域,仅有小部分的设计人工发复杂片上系统器件,为了与台湾和美国的设计工程师形成更有力的竞争,中国的设计队伍有必要购入一些最新的EDA技术。在信息通信领域,优先发展高速宽带信息网,深亚微米集成电路,新型元器件,计算机及软件技术,第三代移动通信技术。信息管理,信息安全技术,积极开拓以数字技术,网络技术为基础的新一代产品,发展新兴产业,培育新的经济增长点。要大力推进制造业信息化,积极开展计算机辅助设计(CAD),计算机辅助工程(CAE),计算机辅助工艺(CAPP),j计算机辅助制造(CAM),产品数据管理(PDM),制造资源计划(MRPII),以及企业管理资源(ERP)等。有条件的企业可开展“网络制造”,便于合作设计 合作制造 参与国内和国际竞争。开展“数控化”工程和“数字化”工程。自动化仪表的技术发展趋势的测试技术,控制技术与计算机技术,通信技术进一步融合,形成测量,控制,通信与计算机结构。在ASIC和PLD设计反面,向超高速高密度低功耗低电压方向发展。3 课程对多功能数字时钟的设计加深对EDA课程的理解(1)加深VHDL语言设计的理解。(2)通过功能数字时钟的设计了解简易集成电路的设计思路(3)通过对多设计目的(4)属性MAX+PLUS II仿真软件的工作方法以及应用技术一 设计项目与分析1.1 设计要求:使用FPGA设计一个16*16的点阵显示的控制器,使点阵能够按照自定义的花样显示文字或者数字。要求至少实现两种花样显示“江西理工大学应用科学学院欢迎您”。其他功能可以自行设计增加!1.2 设计原理 本设计是针对一个16*16的点阵,使用逐列循环扫描的方式来一屏一屏地显示和滚动地显示“江西理工大学应用科学学院欢迎您”15个汉字。由于显示器为列共阳,行共阴的结构,因此不可能在同一时刻显示出整个汉字。为了显示出整个汉字,首先分布好汉字信息;然后以不低于50Hz频率的时序逐一点亮每一列,即每列逐一加高电位,同时行给汉字信息,根据人眼的视觉残留特性使之形成整个汉字的显示。实验箱上为我们提供了16*16的点阵显示模块。通过观察,我们可以看到,此点阵显示屏即为16行、16列的LED显示灯。那么控制这些灯的亮暗分布,就能达到字符显示的目的。首先我们设计要正确显示“江西理工大学应用科学学院欢迎您”。显示屏上的灯亮暗的情况如何。方案一如第一个汉字“江”。0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 1 1 0 0 0 0 0 1 1 1 1 1 1 0 00 0 1 1 0 0 0 0 1 1 1 1 1 1 0 00 0 0 1 1 0 0 0 0 0 1 1 0 0 0 00 0 0 0 1 1 0 0 0 0 1 1 0 0 0 00 1 1 0 0 0 0 0 0 0 1 1 0 0 0 00 0 1 1 0 0 0 0 0 0 1 1 0 0 0 00 0 0 1 1 0 0 0 0 0 1 1 0 0 0 00 0 0 0 1 1 0 0 0 0 1 1 0 0 0 00 0 0 0 0 0 0 0 0 0 1 1 0 0 0 00 0 0 0 0 1 1 0 0 0 1 1 0 0 0 00 0 0 0 1 1 0 0 0 0 1 1 0 0 0 00 0 0 1 1 0 0 0 0 0 1 1 0 0 0 00 0 1 1 0 0 0 1 1 1 1 1 1 1 1 00 1 1 0 0 0 0 1 1 1 1 1 1 1 1 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0第一种花样是用亮着的灯组合所要显示的字。高电平“1”代表灯是亮的,低电平“0”代表灯是暗的,上面我们看到的就是“江”字。依此类推,我们就可以设计出要显示的“江西理工大学应用科学学院欢迎您”一屏一屏地显示汉字“江西理工大学应用科学学院欢迎您”15个汉字。方案二第二种花样是用暗着的灯组合所要显示的字。高电平“1”代表灯是亮的,低电平“0”代表灯是暗的,上面我们看到的就是“江”字。依此类推,我们就可以设计出要显示的“江西理工大学应用科学学院欢迎您”一屏一屏地显示汉字“江西理工大学应用科学学院欢迎您”15个汉字。在显示汉字的基础上加一个gs信号作为计数器,当gs为0000第一个汉字;当gs为0001时显示第二个汉字;当gs为0010当gs为1110时显示第十五个汉字;用时钟信号clk控制gs的计数,就可以一屏一屏地显示汉字。1.3设计框图时序控制扫描控制译码输出显示控制 1.4顶层文件设计顶层文件来实现循环显示各个汉字的功能。它由时序控制模块,扫描模块和汉字显示控制模块组成。时序控制模块利用脉冲来控制每个汉字的显示时间。扫描控制模块利用列扫描脉冲产生列扫描信号。而汉字显示控制模块用时序控制模块和扫描控制模块所提供的脉冲信号来点亮各个汉字模型中相应的灯。在时序模块的控制下(此设计中每15个汉字为一个循环)实现了各个汉字循环显示的功能。实现显示“江西理工大学应用科学学院欢迎您”,结合实际,模块LICHAO01,LICHAO02, LICHAO03分别实现时序控制模块,扫描模块和汉字显示控制模块。具体电路的 顶层文件设计如下图图 1.2 顶层电路图二、一屏一屏亮灯显示2.1 时序控制模块设计为使汉字不断地循环显示,并且使每个字之间有停顿,就需要在中间加一定的延时和循环环节。当计数满4个脉冲时cnt自动清零,每个汉字显示4个脉冲的时间;一共有15个汉字,当tmp=1110时,tmp自动清零,进入下一个循环,不停的循环显示每个汉字。图 2.1 时序控制模块其实现程序为:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity LICHAO01 is port(clk:in std_logic; q:out std_logic_vector(3 downto 0);end LICHAO01;architecture one of LICHAO01 is beginprocess(clk)variable cnt:integer;variable tmp:std_logic_vector(3 downto 0);begin if clk'event and clk='1'then if cnt<4 then cnt:=cnt+1; else cnt:=0; if tmp="1110"then tmp:="0000" else tmp:=tmp+1; end if; end if; end if ; q<=tmp; end process;end ; 时序控制模块仿真图2.2 扫描控制模块设计此模块用来实现列扫描控制,每扫描完16列,tmp自动清零,这样就提供了一个列循环扫描的功能,这样就可以循环的显示各个汉字了。 图2.2 扫描控制模块其实现程序为:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity LICHAO02 is port (clk:in std_logic; so:out std_logic_vector(3 downto 0); end LICHAO02;architecture one of LICHAO02 is beginprocess(clk)variable tmp:std_logic_vector(3 downto 0);beginif clk'event and clk='1'then if tmp="1111"then tmp:="0000" elsetmp:=tmp+1; end if;end if;so<=tmp-1;end process;end ;图3.2扫描控制模块仿真图2.3显示控制模块设计此模块用来实现显示出相应的汉字。gs控制汉字的个数,hs控制扫描的行数。使对应列选择信号输出每一列对应的数据,点量相应的灯。图2.3 显示控制模块其实现程序为:library ieee;use ieee.std_logic_1164.all;entity LICHAO03 is port(hs:in std_logic_vector(3 downto 0); gs:in std_logic_vector(3 downto 0); qo: out std_logic_vector(15 downto 0); end LICHAO03;architecture one of LICHAO03 is begin process(hs,gs)begincase gs iswhen"0000"=>case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0110000011111100"when"0010"=>qo<="0011000011111100"when"0011"=>qo<="0001100000110000"when"0100"=>qo<="0000110000110000"when"0101"=>qo<="0110000000110000"when"0110"=>qo<="0011000000110000"when"0111"=>qo<="0001100000110000"when"1000"=>qo<="0000110000110000"when"1001"=>qo<="0000000000110000"when"1010"=>qo<="0000011000110000"when"1011"=>qo<="0000110000110000"when"1100"=>qo<="0001100000110000"when"1101"=>qo<="0011000111111110"when"1110"=>qo<="0110000111111110"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"0001"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0011111111111100"when"0010"=>qo<="0011111111111100"when"0011"=>qo<="0000001101100000"when"0100"=>qo<="0000001101100000"when"0101"=>qo<="0000001101100000"when"0110"=>qo<="0111111111111110"when"0111"=>qo<="0111111111111110"when"1000"=>qo<="0110001101100110"when"1001"=>qo<="0110001101100110"when"1010"=>qo<="0110011001111110"when"1011"=>qo<="0110110000000110"when"1100"=>qo<="0111100000000110"when"1101"=>qo<="0111111111111110"when"1110"=>qo<="0111111111111110"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"0010"=> case hs is when"0000"=>qo<="0000000000000000"when"0001"=>qo<="0000000111111110"when"0010"=>qo<="1111110111111110"when"0011"=>qo<="1111110110110110"when"0100"=>qo<="0011000111111110"when"0101"=>qo<="0011000111111110"when"0110"=>qo<="0000000110110110"when"0111"=>qo<="1111110111111110"when"1000"=>qo<="1111110111111110"when"1001"=>qo<="0011000000110000"when"1010"=>qo<="0011000111111110"when"1011"=>qo<="0011000111111110"when"1100"=>qo<="0011000000110000"when"1101"=>qo<="1111110000110000"when"1110"=>qo<="1111111111111111"when"1111"=>qo<="0000001111111111"when others=>null;end case;when"0011"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0011111111111100"when"0010"=>qo<="0011111111111100"when"0011"=>qo<="0000000110000000"when"0100"=>qo<="0000000110000000"when"0101"=>qo<="0000000110000000"when"0110"=>qo<="0000000110000000"when"0111"=>qo<="0000000110000000"when"1000"=>qo<="0000000110000000"when"1001"=>qo<="0000000110000000"when"1010"=>qo<="0000000110000000"when"1011"=>qo<="0000000110000000"when"1100"=>qo<="0000000110000000"when"1101"=>qo<="0111111111111110"when"1110"=>qo<="0111111111111110"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"0100"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0000000110000000"when"0010"=>qo<="0000000110000000"when"0011"=>qo<="0000000110000000"when"0100"=>qo<="0111111111111110"when"0101"=>qo<="0111111111111110"when"0110"=>qo<="0000000110000000"when"0111"=>qo<="0000000110000000"when"1000"=>qo<="0000001111000000"when"1001"=>qo<="0000011001100000"when"1010"=>qo<="0000110000110000"when"1011"=>qo<="0001100000011000"when"1100"=>qo<="0011000000001100"when"1101"=>qo<="0110000000000110"when"1110"=>qo<="1100000000000011"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"0101"=> case hs is when"0000"=>qo<="0000000000000000"when"0001"=>qo<="0110011000000110"when"0010"=>qo<="0011001100001100"when"0011"=>qo<="1111111111111111"when"0100"=>qo<="1111111111111111"when"0101"=>qo<="1100000000000011"when"0110"=>qo<="1101111111110110"when"0111"=>qo<="0001111111110000"when"1000"=>qo<="0000000001100000"when"1001"=>qo<="0000000011000000"when"1010"=>qo<="0111111111111110"when"1011"=>qo<="0111111111111110"when"1100"=>qo<="0000000110000000"when"1101"=>qo<="0000000110000000"when"1110"=>qo<="0000011110000000"when"1111"=>qo<="0000011110000000"when others=>null;end case;when"0110"=>case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0000001100000000"when"0010"=>qo<="0000000110000000"when"0011"=>qo<="0001111111111110"when"0100"=>qo<="0001111111111110"when"0101"=>qo<="0001100000000000"when"0110"=>qo<="0001100000000000"when"0111"=>qo<="0001100011000011"when"1000"=>qo<="0001101101100011"when"1001"=>qo<="0001101101100110"when"1010"=>qo<="0011000110110110"when"1011"=>qo<="0011000110001100"when"1100"=>qo<="0110000000000000"when"1101"=>qo<="0110111111111111"when"1110"=>qo<="1100111111111111"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"0111"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0001111111111111"when"0010"=>qo<="0001111111111111"when"0011"=>qo<="0001100011000110"when"0100"=>qo<="0001100011000110"when"0101"=>qo<="0001111111111110"when"0110"=>qo<="0001111111111110"when"0111"=>qo<="0001100011000110"when"1000"=>qo<="0001100011000110"when"1001"=>qo<="0001111111111110"when"1010"=>qo<="0001111111111110"when"1011"=>qo<="0001100011000110"when"1100"=>qo<="0011000011000110"when"1101"=>qo<="0110000011011110"when"1110"=>qo<="1100000011001110"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"1000"=> case hs is when"0000"=>qo<="0000000000000000"when"0001"=>qo<="0000011000001100"when"0010"=>qo<="0000110110001100"when"0011"=>qo<="0011000011001100"when"0100"=>qo<="1101101101101100"when"0101"=>qo<="0001100110001100"when"0110"=>qo<="1111111101101100"when"0111"=>qo<="1111111100001100"when"1000"=>qo<="0011110011111111"when"1001"=>qo<="0011110011111111"when"1010"=>qo<="0111101100001100"when"1011"=>qo<="1101100000001100"when"1100"=>qo<="0001100000001100"when"1101"=>qo<="0001100000001100"when"1110"=>qo<="0001100000001100"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"1001"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0110011000000110"when"0010"=>qo<="0011001100001100"when"0011"=>qo<="1111111111111111"when"0100"=>qo<="1111111111111111"when"0101"=>qo<="1100000000000011"when"0110"=>qo<="1101111111110110"when"0111"=>qo<="0001111111110000"when"1000"=>qo<="0000000001100000"when"1001"=>qo<="0000000011000000"when"1010"=>qo<="0111111111111110"when"1011"=>qo<="0111111111111110"when"1100"=>qo<="0000000110000000"when"1101"=>qo<="0000000110000000"when"1110"=>qo<="0000011110000000"when"1111"=>qo<="0000011110000000"when others=>null;end case;when"1010"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0110011000000110"when"0010"=>qo<="0011001100001100"when"0011"=>qo<="1111111111111111"when"0100"=>qo<="1111111111111111"when"0101"=>qo<="1100000000000011"when"0110"=>qo<="1101111111110110"when"0111"=>qo<="0001111111110000"when"1000"=>qo<="0000000001100000"when"1001"=>qo<="0000000011000000"when"1010"=>qo<="0111111111111110"when"1011"=>qo<="0111111111111110"when"1100"=>qo<="0000000110000000"when"1101"=>qo<="0000000110000000"when"1110"=>qo<="0000011110000000"when"1111"=>qo<="0000011110000000"when others=>null;end case;when"1011"=> case hs is when"0000"=>qo<="0000000000000000"when"0001"=>qo<="1111110001100000"when"0010"=>qo<="1111110000110000"when"0011"=>qo<="1100111111111111"when"0100"=>qo<="1101111111111111"when"0101"=>qo<="1111001100000011"when"0110"=>qo<="1101101100000110"when"0111"=>qo<="1100110011111000"when"1000"=>qo<="1100011011111000"when"1001"=>qo<="1101110000000000"when"1010"=>qo<="1100001111111110"when"1011"=>qo<="1100001111111110"when"1100"=>qo<="1100000011011000"when"1101"=>qo<="1100000110011000"when"1110"=>qo<="1100001100011011"when"1111"=>qo<="1100011000011111"when others=>null;end case;when"1100"=> case hs iswhen"0000"=>qo<="0000000000000000"when"0001"=>qo<="0000000000110000"when"0010"=>qo<="0000000001100000"when"0011"=>qo<="1111111001111111"when"0100"=>qo<="1000011011000011"when"0101"=>qo<="1100011110110110"when"0110"=>qo<="0110110000110000"when"0111"=>qo<="0011110000110000"when"1000"=>qo<="0001110000110000"when"1001"=>qo<="0001111000111000"when"1010"=>qo<="0011001100111000"when"1011"=>qo<="0011000001101100"when"1100"=>qo<="0110000011000110"when"1101"=>qo<="1100001110000011"when"1110"=>qo<="0001111000000000"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"1101"=> case hs is when"0000"=>qo<="0000000000000000"when"0001"=>qo<="0110000111000000"when"0010"=>qo<="0011001100111111"when"0011"=>qo<="0000011000110011"when"0100"=>qo<="1111011000110011"when"0101"=>qo<="1111011000110011"when"0110"=>qo<="0011011000110011"when"0111"=>qo<="0011011011110011"when"1000"=>qo<="0011011110110111"when"1001"=>qo<="0011000000110000"when"1010"=>qo<="0011000000110000"when"1011"=>qo<="0011000000110000"when"1100"=>qo<="0011110000000000"when"1101"=>qo<="0110111111111111"when"1110"=>qo<="1100111111111111"when"1111"=>qo<="0000000000000000"when others=>null;end case;when"1110"=> case hs iswhen"0000"=>qo<="0000011001100000"when"0001"=>qo<="0000110011111111"when"0010"=>qo<="0001100111111111"when"0011"=>qo<="0011101100110011"when"0100"=>qo<="0111100000110000"when"0101"=>qo<="1101100110110110"when"0110"=>qo<="0001100110110011"when"0111"=>qo<="0001101100110000"when"1000"=>qo<="0001100110110000"when"1001"=>qo<="0001100011110000"when"1010"=>qo<="0000000000000000"when"1011"=>qo<="0110110110011011"when"1100"=>qo<="0110110011011011"when"1101"=>qo<="1100011111111000"when"1110"=>qo<="1100011111111000"w

    注意事项

    本文(16乘16的点阵显示设计毕业设计.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开