基于fpga的16x16led点阵毕业论文(编辑修改稿)内容摘要:
,每一行由一个单独的位来控制,高电平有效。 例如 “0000”表示第 0 列, “0000000000000001”表示第一行的点亮。 由于列是由一个向量决定,而每一时刻的值只能有一个固定的值,因而只能使某一列的若干个点亮,因此就决定了只能用逐列扫描的方法。 例如要使第一列的 2,4,6,8,行亮,则列为 “0001”、行为 “0000000010101010”就可以实现了。 方案二: VHDL 程序设计的是硬件,他和编程语言的最大区别是它可以 “并发执行 ”。 本设计可以将 LED 显示屏要的显示内容抽象成一个二维数组(数组中的 „1‟对映点阵显示屏上面的亮点),用 VHDL 语言设计一个进程将这个数组动态显示在 LED 显示屏上,再利用另一个进程对这个数组按一定频率进行数据更新,更新的方式可以有多种。 因为两个进程是同时进行的(并发执行),如果对数组中的汉字数据按滚动的方式更新,则可实现汉字的滚动显示。 如图 21 为该方案原理图。 更 更 更 更 更 更 更 更 更 更 更 更 更 更 图 21 方案原理图 方案比较 方案一很容易实现,而且占用 FPGA 的资源较少。 但是由于其实现方式的局限性,该方案只能实现汉字的滚动显示。 方案二中将 LED 点阵抽象成了一淮安信息职业技术学院毕业设计论文 6 个二维数组。 可以设计一些比较复杂的算法来控制这个数组,使设计的系统不但可以滚动显示汉字,还可以扩展一些其它的显示效果。 但是方案二中对数组的处理部分对 FPGA 芯片的资源消耗太大学校实验室里的 EPF10K10LC844 芯片只有 576 个逻辑单元远 远不够设计要求。 所以最终选择方案一。 扫描控制模块 LED 的显示原理 16 16 扫描 LED 点阵的工作原理同 8 位扫描数码管类似。 它有 16 个共阴极输出端口 ,每个共阴极对应有 16 个 LED 显示灯,所以其扫描译码地址需 4 位信号线( SEL0SEL3),其汉字扫描码由 16 位段地址( 015)输入。 通过时钟的每列扫描显示完整汉字。 图 22 LED 灯信号 第二章 系统方案设计 7 图 23LED 等效电路 LED 点阵的显示方式 点阵 LED 一般采用扫描式显示,实际运用分为三种方式: ( 1)点扫描 ( 2)行扫 描 ( 3)列扫描 若使用第一种方式,其扫描频率必须大于 16 64=1024Hz,周期小于 1ms 即可。 若使用第二和第三种方式,则频率必须大于 16 8=128Hz,周期小于 即可符合视觉暂留要求。 此外一次驱动一列或一行( 8 颗 LED)时需外加驱动电路提高电流,否则 LED 亮度会不足。 LED 点阵汉字的存储 用动态分时扫描技术使 LED 点阵模块显示图像 , 需要进行两步工作。 第一步是获得数据并保存 , 即在存贮器中建立汉字数据库。 第二步是在扫描模块的控制下 , 配合行扫描的次序正确地输出这些数据。 获得图像数据的步骤 是 , 先将要显示的每一幅图像画在一个如图 24 所示的被分成 16 16 共 256 个小方格的矩形框中 , 再在有笔划下落处的小方格里填上 “ 1” , 无笔划处填上 “ 0” , 这样就形成了与这个汉字所对应的二进制数据在该矩形框上的分布 , 再将此分布关系以 32 16 的数据结构组成 64 个字节的数据 , 并保存在只读存贮器 ROM 中。 以这种方式将若干个汉字的数据贮存在存贮器内 , 就完成了图像数据库的建立工作。 淮安信息职业技术学院毕业设计论文 8 图 24 16 16 LED 点阵模块 本章小结 本章主要讲述设计任务与要求,方案的设计与比较。 并对 扫描控制模块 和 LED点阵 汉字的存储做了进一步介绍,分析了 LED 点阵的工作原理。 第三章 硬件设计 9 第三章 硬件设计 功能要求 设计一个室内用 16 16 点阵 LED 图文显示屏,要求在目测条件下 LED 显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。 图形或文字显示有静止、移入移出等显示方式。 硬件说明 FPGA 芯片采用 ALTERA 公司的 CYCLONE 系列 EPlC3T144C8。 EPlC3T144C8 内部包含 2910 个逻辑单元, 104 个 I/ O 引脚, 13 块 128*36bit的 RAM 共 52K,适合设计 双 DRAM、 ROM 和 FIFO 等器件,还有一个可编程触发器和一个给进位和层叠功能专用的信号通道。 为了提高 FPGA 的工作速度,ALTERA 的 FPGA 芯片普遍采用了锁相环技术。 时钟可以通过 FPGA 内建的锁相环进行倍频,使得较慢的外部时钟在 FPGAI 为部驱动高速电路工作。 单片机采用深圳宏晶科技的 STC89C52RC。 STC89LE52RC 是一款低功耗、高速且抗干扰能力强的单片机。 指令代码完全兼容传统的 8051 单片机,它不但具有普通 51 核单片机的特点,而且增加了新的功能。 在 5V 电压工作下,提供最高 80MHz 的时钟频 率。 内部 RAM 加大到了 512 字节, FLASH 存储器为 8K,EEPROM 为 2K,增加了 P4 口,可进行双倍速设定,增加了看门狗,防止死机功能。 抗干扰与防解密方面都比普通的 51 单片机强。 在程序下载方面,无需使用专门的编程器和下载线,只要一根 9 针的串口线就可以实现程序的在线烧写。 数模转换器采用转换速率为 10M 的双通道并行电流输出型 DA 转换器TLC7528。 双路的 DA 输出都已经用运放 TL082 进行电流到电压的转换,并且双路输出都可以用跳线帽设置成单极性输出,双极性输出。 也可以将两个通道结合起来,实现幅度程控输出。 数 据采集同样使用德州仪器的 TLC5510,最高采样率为 20M。 用于数据采集,任意信号的输入。 存储器使用 64K 的, 2C 总线控制的 FLASH 存储器,和 512K39。 8 的高速IS61LV5128 的静态存储器,它拥有 64MB 的存储空间,满足数据的存储要求。 另外设计有丰富的人机界面。 4*4 的行列式键盘输入,有 AS 配置模式和 JTAG配置模式的接口,另有液晶显示器的接口,便于数据的获取。 硬件设计 串行通信模块 输入接口模块提供 PC 上位机到 FPGA 核心板传输数据的接口。 输入接口是通过串口即 RS232 以及 JTAG 下载线来实现从 PC 上位机传输数据至下位机。 上位机使用字模提取工具将待显示的数据发送至下位机 , JTAG 下载线实现 PCNiosⅡ系统间的通信。 FPGA 核心板与 LED 显示模块之间的通信也是通过 RS232 淮安信息职业技术学院毕业设计论文 10 串口实现的。 LED 点阵屏及驱动电路 本设计采用 16 16LED 点阵屏由 4 块 8 8LED 点阵拼接而成,每一块点阵都有 8 行 8 列,因此总共有 16 根行控制线和 16 根列控制线。 LED 时钟芯片 DS1302 是 DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟 /日历和 31 字节静态 RAM。 同时,可以提供秒分时、日期、年月信息,每月的天数和闰年的天数可自动调整。 时钟操作可通过 AM/PM 指示决定采用 24 或 12 小时格式。 FPGA 控制模块 该部分电路是系统控制和数据处理的核心,主要由电源接口及开关及相应的时钟振荡电路和复位电路组成。 如图 31 所示,其中 F1 为限流 的 F110 保险管 ,在电源的保护上起到了很大的作用。 231U19BWF1123J1104C48106C9DGNDDGND DGNDDGNDVCC 图 31 电源接口及开关电路 如图 所示,该复位电路可以实现对系统的初始化作用。 当没有按下时,KEY 读取到高电平。 按 下键时, KEY 拉低。 一次复位后产生一脉冲信号,下降沿时触发芯片复位。 如图 33 所示, X1 为 20MHz 的有源晶振。 图 32 复位电路 如图 33 所示,时钟振荡电路。 第三章 硬件设计 11 VCC1NC2GND3OUT4U120MHZ1 2FB1104R6DGNDGDND 图 33 时钟振荡电路 串行通信电路 串行通信电路由 RS232 串口电路和 JTAG 接口电路组成。 RS232 串口用于上位机与下位机的数据传输, JTAG 接口用于程序下载与调试 串口电路 FPGA 的电平为 TTL 电平 (即:高电平 — +,低电平 — 0V),而计算机串口电平为 RS232 电平 (即:高 电平 — 12V,低电平 — +12V),所以,计算机与单片机之间进行通讯时需要加电平转换芯片。 RS232 串口电路如图 34 所示: 图 34 RS232 串口电路 图 34 中, RS232 串口电路使用 MAX232CPE 作为电平转换芯片,通过串口线连接到计算机的 COM 口 (9 针 D 形口 ),用于 FPGA 与上位机通信以及和其他串口设备的数据交互。 淮安信息职业技术学院毕业设计论文 12 下载接口 JTAG 下载接口电路如图 35 所示,用于调试 FPGA。 JTAG 下载不仅下载速度快,而且支持 SignalTAP,但是,不能编程 EPCS 芯片,掉电后 数据丢失。 使用 JTAG 时需要配合 USB Blaster 进行下载调试。 图 35 JTAG 下载接口电路 本章小结 本章主要讲述硬件电路的功能要求,对硬件结构做了详细的说明。 并逐一介绍了串行通信模块、 LED 时钟芯片、 FPGA 控制模块、串行通信电路的设计及使用等,分析了主要器件的作用,介绍了各部件在电路中的连接情况。 第四章 软件设计 13 第四章 软件设计 十六进制计数器设计 是十六进制的计数器,其输出端控制行和列驱动控制器的输出数据;其描述如下: LIBRARY ieee。 USE。 LIBRARY lpm。 USE。 ENTITY t16 IS PORT (clock : IN STD_LOGIC。 q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0))。 END t16。 ARCHITECTURE SYN OF t16 IS SIGNAL sub_wire0 : STD_LOGIC_VECTOR (7 DOWNTO 0)。 COMPONENT lpm_counter GENERIC ( lpm_direction : STRING。 lpm_port_updown : STRING。 lpm_type : STRING。 lpm_width : NATURAL)。 PORT (clock : IN STD_LOGIC。 q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0))。 END COMPONENT。 BEGIN q = sub_wire0(7 DOWNTO 0)。 lpm_counter_ponent : lpm_counter GENERIC MAP ( lpm_direction = UP, lpm_port_updown = PORT_UNUSED, lpm_type = LPM_COUNTER, lpm_width = 8 ) PORT MAP ( clock = clock, q = sub_wire0 )。 END SYN。 淮安信息职业技术学院毕业设计论文 14 如图 32 所示: 图 32 仿真波形图 从上图可以看出,该模块为十六进制的 计数器,当 CLK 给予脉冲时输出为前一个数值加 1,例如:在 前输出为 0。基于fpga的16x16led点阵毕业论文(编辑修改稿)
相关推荐
数器寻址波形存 储器的 任意波形发生器 在一段时期内曾得到广泛的应用,其取样时钟 频率较高且 可调节, 但其 对硬件要求比较高,需要高性能的锁相环和 截止频率可调的低通滤波器 (或者 多个低通滤波器 ) ,且频率分辨率低,频率切换速度较慢,已经逐步退出市场。 目前市场上的任意波形发生器主要采用直接数字合成( Direct Digital Synthesuzer, DDS)技术
度,其中操作码占用 16 位指令字的高 4 位。 所有的指令码都很容易译码。 对两个寄存器的指令, d 选择目的寄存器, :r 选择源寄存器, 4 位可以寻址 16 个寄存器,这种指令格式包括 ADD, SUB, AND, OR。 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 r r r r d d d d 对于仅需要一个寄存器的指令, d 用来寻址目标寄存器。
及下载 为了对设计工程进行硬件测试,应将其输入输出信号锁定在芯片确定的引脚上。 最后是将下载或配置文件通过编程电缆向 FPGA 或 CPLD 进行下载,以便进行硬件调试和验证。 Quartus II 的原理图输入设计流程 应用数字逻辑电路的基本知识,使用 Quartus II 原理图输入法可以非常方便地进行数字系统的设计,应用 Quartus II 原理图输入法,还可以 把
,用户 只需在驱动器上改变细分数,就可以改变步距角。 步进电机的分类 通常步进电机一般可分为永磁式步进电机 (PM Step Motor),反应式步进电机 (VR Step Motor)和混合式步进电机 (Hybrid Step Motor)三类。 平顶山工学院毕业设计论文 14 转子上安装永久磁钢的步进电机叫做永磁式步进电机。 其定子上绕有绕组,转子装有磁钢
3. 电机控制按键: key1:控制电机启动; key2:停止; key3:气压增加按键;key4:气压减小按键; PWM 发生器 1. PWM 控制电机, PWM 输出低电平就启动电机转,而不是高电平,因此这里的占空比 2. 是低电平与周期的比值,这里设置 PWM 开关频率为 2KHZ;分 100 等分; 杭州电子科技大学继续教育学院毕业设计(论文) 16 4 系统联机调试 操作细则
...................................... 33 表 单片机 片内 RAM 分配 ......................................................................................... 36 表 测试项目表 ........................................