38kHz。当红外接收头接收到38kHz的信号时输出低电平“0”,反之输出高电平“1”,从而实现红外信号的解码。
6、温度模块
温度模块由DS18B20和一个上拉电阻组成,DS18B20工作原理:刚启动时将进入低功耗等待状态,当需要执行温度测量和AD转换时,总线控制器发出[44H]指令完成温度测量和AD转换,DS18B20将产生的温度数据以两个字节的形式存储到高速暂存器的温度寄存器中,然后,DS18B20继续保持等待状态。当DS18B20芯片由外部电源供电时,总线控制器在温度转换指令之后发起“读时隙”,从而读出测量到的温度数据通过总线完成与单片机的数据通讯,DS18B20正在温度转换中由DQ引脚返回0,转换结束则返回1。
1.4 自动控制模块
自动控制模块有交通灯、步进电机和直流电机控制,其控制引脚均已标注在自动控制模块相应位置。
1、交通灯控制
交通灯控制为模拟十字路口交通灯的控制,有红、绿、黄3种指示灯,共4个方向,分12个IO口控制。LED灯的负极接在FPGA的IO口上,正极通过一个1K的限流电阻接在+3.3V电源上, LED指示灯的亮灭通过控制相应的IO口输出电平来实现。
2、步进电机控制
通过将脉冲信号转变成角位移实现步进电机的精确定位,共用到4个IO口。控制其正反转时IO口需按照一定顺序输出高低电平。步进电机的驱动芯片为L293DD,有4个输入引脚4个输出引脚,输入输出引脚的电平关系是一一对应的,每个输出引脚能输出600mA的电流。
3、直流电机控制
直流电机的控制采用脉冲宽度调制技术(PWM)。基本原理是在固定周期内,高电平占的比重越多,电机转速就越快。通过PNP三极管S8550提供大电流驱动直流电机,当IO口为高电平时,三极管不导通,反之则导通。
1.5 信号处理模块
信号处理模块有AD采集、DA输出、语音采集、语音回放和电压调节部分。 1、AD采集
AD采集部分是由AD9280采集芯片采集,信号通过SMB接口输入AD8065调节后送入AD采集。AD9280是一款单芯片、8位、32 MSPS模数转换器(ADC),采用单电源供电,内置一个片内采样保持放大器和基准电压源。它采用多级差分流水线架
3
构,数据速率达32 MSPS,在整个工作温度范围内保证无失码。语音采集部分由前级放大电路和300Hz~3.4Khz带通滤波电路组成,语音信号可由MIC接口或驻极体咪头输入,经放大电路后滤波输出至AD部分采集。电压调节部分是由5V加在可调电阻上,实现输出电压0~5输出可调。通过输入AD采集前级电路调节偏置后输入AD采集。
2、DA输出
DA输出部分是由AD9708芯片差分输出,信号通过七阶巴特沃斯滤波后经过AD8065差分相减后再经AD8065放大后由SMB接口输出。AD9708是TxDAC系列的8位分辨率成员系列的高性能,低功耗的CMOS数字-模拟转换器(DAC)。该TxDAC系列包括针兼容8位,10位,12位,14位DAC,是专门opti-而得到优化用于通信系统的发射信号路径。所有的设备共享相同的接口选项,小外形封装和引脚分布,从而提供了一个向上或向下的根据性能,分辨率选择适合的器件和成本。AD9708提供出色的交流和直流性能同时支持更新速率高达125MSPS。语音回放部分由滤波电路及功率放大LM386部分组成。信号由喇叭输出。语音信号由DA输出至滤波电路滤波,可通过调节阀调节信号幅度。
1.6 通信接口模块
通信接口模块有RS232接口、PS/2接口、RS485接口、USB接口、VGA接口。其信号输入输出均已标注在通信接口模块相应位置。
1、RS232接口
RS232接口通过一个标准的DB9母头和外部的串口线连接带有串口的电脑或者其他设备,实现RS232串口通信。
2、PS/2接口
PS/2接口用于连接电脑鼠标和键盘等PS/2设备,通过PS/2口,仅仅需要两个IO口,就可以扩展一个键盘。
3、RS485接口
RS485接口通过MAX485芯片实现逻辑电平转换,通过两个端口和外部RS485设备连接,即A和B,不需要GND,可实现多点双向通信,数据传输距离可达千米。
4、USB接口
USB接口采用PL2303来实现USB转串口,同时对串口信号设置了两个LED指示灯,用于指示串口数据收发。
5、VGA接口
VGA接口主要是通过编程实现VGA视频信号在监视器上显示,其中包含R、G、B、HS、VS来控制视频显示。
4
第二章 开发平台简介
2.1 Quartus II简介
Quartus II是Altera公司的综合性EDA开发软件,支持原理图、VHDL、Verilog HDL和AHDL等设计模式,内嵌综合器和仿真器,可以完成从设计输入到硬件配置的完整设计流程。Quartus II支持Altera的IP核,集成了LPM/MegaFunction宏功能模块库,简化了设计的复杂性、加快了设计速度。用户可以使用第三方EDA工具。
2.2 Quartus II开发流程
一、创建工程
1、建立工程目录
新建一个文件夹,用于存放工程文件。文件路径中不能包含中文。 2、新建工程
单击菜单File | New Project Wizard。
指定工程目录、名称和顶层设计实体,选择目标芯片。
将工程视图切换到Files标签。
5
3、新建文件 单击工具栏上的
按钮或菜单File | New。
选择Design Files下的Block Diagram/Schematic File,新建原理图文件。 选择Design Files下的Verilog HDL File,新建源程序文件。
选择Memory Files下的Hexadecimal File或Memory Initialization File,新建内存初始化文件。
选择Verifica/Debugging Files下的Unive Program VWF,新建仿真波形文件。 在原理图编辑窗口双击左键,即可打开插入元件对话框。展开元件所在的类的图标,或直接在Name框中输入元件名称,可找到需要的元件。
单击MegaWizard Plug-In Manager按钮,即可启动宏功能定制向导。 4、保存文件
6
单击工具栏上的按钮或菜单File | Save As,保存文件。在工程视图中,如果没
有所需文件的图标,选中Files图标,单击右键后选择Add/Remove Files in Project。
单击文件管理对话框中的
按钮,找到所需文件后,单击
入工程,单击
5、设置顶层实体
在工程视图中,选中顶层元件对应的文件的图标,单击右键后选择Set as Top-level Entity,将其设置为顶层实体。
二、编译工程
单击工具栏上的
按钮或者菜单Processing | Start Compilation。
全程编译包括排错、网表文件提取、逻辑综合、适配、装配文件生成和时序分析等。如果有错误,可双击错误条文,修改原理图或源程序,重新编译工程。 三、分配引脚
单击工具栏上的
按钮或者菜单Assignments | Pin Planner。
分别单击各引脚Location列的单元格,输入相应的引脚编号,按回车键确认。分配完引脚后,重新编译工程。
7
EDA技术实验指导书
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)