1、VHDL 课程设计报告课程设计报告 一、一、 题目要求题目要求 (1) 、EDA 实验板组装调试 参照提供的 EDA 实验板电路原理图、PCB 图以及元器件清单进行电路板的组装,组装过 程中要求能读懂电路原理图,了解各部分电路工作的原理。 电路板组装完成后,编写以下三个小程序进行电路板测试: 1、流水灯程序 编写一个流水灯程序,使实验板上 DS2DS13 十二个 LED 依次循环点亮。 2、数码管动态扫描程序 了解 BCD七段锁存译码器 CD4511 的工作原理及数码管动态扫描技术, 编写一个程序, 使 EDA 实验板上的 8 位数码管由“0000 0000”按一定的频率自加一直到“9999
2、9999” ,然 后归零不断循环以上过程。 3、矩阵键盘扫描程序 了解矩阵键盘扫描原理,编写一程序,当按下实验板上十六个按键任一键,数码管上显 示相应键值 116。 以上测试程序先经软件仿真通过后下载到实验板上进行测试, 观察实验结果, 若与预期 设计不符则应对软、硬件进行细心检查,排除故障。 完成以上电路板组装且调试通过后可进行第二部分红外遥控系统的设计。 (2) 、红外遥控系统的设计 红外遥控系统由发射编码和接收解码两个部分组成, 本课程设计要求制作发射编码电路 板(遥控器)以及编写程序在 EDA 实验板上实现接收解码,具体说明如下: 1、发射编码部分 发射编码部分要求使用指定的元器件在万
3、用板上完成红外遥控器的制作, 该部分电路原 理图参照PT2248 数据手册 ,制作前请详细阅读红外遥控器制作说明 ,制作时要求元 器件在万用板上排列整齐,布局合理,焊接良好,各按键功能正常,均能发送编码。 2、接收解码部分 接收解码用 VHDL 语言编写程序,在 EDA 实验板上实现解码,要求具有以下功能: (1)基本要求: (a)将一体化红外接收解调器的输出信号解码(12 个单击键、6 个连续键,单击 键编号为 718,连续键编码为 16) ,在 EDA 实验板上用七段数码管显示出来; (b)当按下遥控器 16 号连续键时,在 EDA 实验板上用发光二极管点亮作为连续 键按下的指示,要求遥控
4、器上连续键接下时指示灯点亮,直到松开按键时才熄灭,用于 区别单击键。 (c)EDA 实验板上设置四个按键,其功能等同于遥控器上的 14 号按键,当按下 此四个按键时七段数码管分别对应显示“1” 、 “2” 、 “3” 、 “4” 。 (d)每当接收到有效按键时,蜂鸣器会发出提示音。 (2)扩展功能: (能完成的加分) 通过遥控器跳线改变用户码, EDA 实验板上用三个发光二极管正确显示发送端的用 户码。 二、设计分析 1) 、流水灯程序: 测试各发光二极管的程序。程序中只要依次给要闪亮的灯输入低电平即可。 2) 、数码管动态扫描程序 测试 8 位数码管的程序。CD4511 可以将 4 位二进制
5、编码转换成对应的 7 段显像管 编码输出。真值表如下: 程序中只要将 8 位数码管显示控制端全部置 1,即可保持数码管显示状态,依 次将“0000”-“1001”输送给 CD4511 就可以实现对 8 位数码管的动态扫描。时钟由晶振分 频后得到。 3) 、矩阵键盘扫描程序 测试键盘输入的程序。 程序实现了显示 0-4 输入的输出显示。 键盘输入行由 “0111” 到“1110” ,列也是由“0111”到“1110” ,直接翻译成对应的二进制编码输入 CD4511 译码 显示。 4) 、接收译码程序 本次实验的最主要程序。 发射端编码方式已经在 红外遥控器制作说明及编码规则 简要说明 中给出,
6、要接收发射端发射的编码最关键的问题是发射段频率和接收段频率不一 致的现象。 发射端频率为 38KHz, 程序中设计的接收端频率为 2.048MHz 的 8 分频, 即 8KHz。 发射端每四个周期代表一个二进制编码,时间为 1/38KHz*16*4=1.684ms,四个周期的时间 换算成接收端周期数为 1.684ms/(1/8KHz)=13.47。一个周期占 13.47/4=3.37,三个周期占 13.47/4*3=10.1,由于编码中一个周期的低电平代表“1” ,三个周期的低电平代表“0” ,再 考虑到同步的问题,取(10.1+3.37)/2=6.77 作为判断“0” 、 “1”的分界线,即当检测到 超过 7 个接收端周期的低电平后即可认为接收到的是“0” ,否则为“1” 。 翻译出编码信号后根据编码的规则,分析用户和所显示的数字即可。 三、系统模块的划分以及各模块的功能描述 程序采用单进程,划分为接收编码信号及翻译模块和输出显示模块。 接收编码信号模块分为从键盘接收信号和从发射板接收信号, 从键盘接收到的信号直接 翻译对应的二进制编码输出到显示模块;从