摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 8-3 BCD七段显示译码器一、原理 7段数码管是利用不同发光段组合的方式来显示不同的数码,为了试数码管能将数码所代表的数显示出来,必须将数码经译码器译出,然后经驱动器点亮对用的段。结构图如下图1.1。 比如要显示数值5,须将a, f, g, c, d各段点亮。 表1.2 3-8译码器真值表二、实现在设计文件中输入Verilog代码 1 `timescale 1 ns / 1 ps 2 3 module bcd7seg ( Y ,A ); 4 5 input [3:... 阅读全文
posted @ 2011-08-25 08:51 让linux飞一会儿 阅读(14184) 评论(0) 推荐(2)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 3-8译码器一、原理: 译码是编码的逆过程,它的功能是将特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路成为译码器。 译码器可分为两种类型,一种是将一系列代码转换成与之一一对应得有效信号。这种译码器可以称为唯一地址译码器,它常用于计算机中对存储器单元地址的译码,即将每一个地址代码换成一个有效信号,从而选中对应的单元。另一种是将一种代码转换成另一种代码,所以也称为代码变换器。 图1.1 3-8译码器真值表二、实现 在设计文件中输入Verilog代码。 1 ... 阅读全文
posted @ 2011-08-24 10:44 让linux飞一会儿 阅读(7159) 评论(0) 推荐(3)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 直流电机PWM控制一、实验前知识准备 在上一篇中总结了步进电机的控制,这次我将学习一下直流电机的控制,首先,我们简要了解下步进电机和直流电机的区别。 (1)步进电机是以步阶方式分段移动,直流电机通常采用连续移动的控制方式。 (2)步进电机采用直接控制方式,它的主要命令和控制变量都是步阶位置;直流电机则是以电机电压为控制变量,以位置或速度为命令变量。 (3)直流电机需要反馈控制系统,他会以间接方式控制电机位置。步进电机系统多半以“开环方式”进行操作。1、什么是直流电机 输出或输入为直流电能的旋转电机,称为直... 阅读全文
posted @ 2011-08-23 18:03 让linux飞一会儿 阅读(16131) 评论(11) 推荐(7)
摘要: Verilog HDL 之 8-3优先编码器原理: 在数字系统中,常常会有几个部件同时发出服务请求的可能,而在同一时刻只能给其中一个部件发出允许操作信号。因此,必须根据轻重缓急,规定好这些控制对象允许操作的先后次序,即优先级别。 编码器有8个输入端,3个输出端。还有一个输入使能EI,输出使能EO和优先编码器工作状态标志GS。编码器以低为有效。当EI=0 时,编码器工作;输出全为高。输入优先级别的次序为7,6,5,…,0。当某一输入端有低电平输入,且比它优先级高的输入没有低电平输入时,输出端才输出相应输入端的代码。二、实现在设计文件中输入Verilog代码。 1 `timescale 1... 阅读全文
posted @ 2011-08-23 13:34 让linux飞一会儿 阅读(11423) 评论(1) 推荐(3)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 卡式电话计费器 我们每天都在和手机打交道,更熟悉了打电话的各项业务,那么怎么通过Verilog HDL 硬件描述语言简单的控制电话的计时计费呢,下面我们就来看看是如何实现的。先介绍下卡式电话计费器的要求。一、实验要求及原理(1) 计费器在话卡插入后,能将卡中的币值读出并显示出来;在通话过程中,根据话务种类计话费并将话费从卡值中扣除,卡值余额每分钟更新一次;计时与计费数据均以十进制形式显示出来。(2)话务分为3类:市话、长话和特话,其中市话按每分钟3角钱计费,长话按每分钟6角钱计费,特话不收费。当卡上余额不足时产生告 阅读全文
posted @ 2011-08-19 09:12 让linux飞一会儿 阅读(4256) 评论(4) 推荐(4)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 步进电机驱动控制 步进电机的用途还是非常广泛的,目前打印机,绘图仪,机器人等等设备都以步进电机为动力核心。那么,下面我们就了解下什么是步进电机,它是怎么控制的。一、步进电机相关知识简介1、步进电机概述 步进电机是一种能够将电脉冲信号转换成角位移或线位移的机电元件,它实际上是一种单相或多相同步电动机。单相步进电动机有单路电脉冲驱动,输出功率一般很小,其用途为微小功率驱动。多相步进电动机有多相方波脉冲驱动,用途很广。使用多相步进电动机时,单路电脉冲信号可先通过脉冲分配器转换为多相脉冲信号,在经功率放大后分别送入步进电动 阅读全文
posted @ 2011-08-16 14:00 让linux飞一会儿 阅读(16681) 评论(6) 推荐(5)
摘要: 先简单的介绍下nRF24L01无线模块 (1) 2.4Ghz 全球开放ISM 频段免许可证使用 (2) 最高工作速率2Mbps,高效GFSK调制,抗干扰能力强,特别适合工业控制场合 (3) 126 频道,满足多点通信和跳频通信需要 (4) 内置硬件CRC 检错和点对多点通信地址控制 (5) 低功耗1.9 - 3.6V 工作,待机模式下状态为22uA;掉电模式下为900nA (6) 内置2.4Ghz 天线,体积小巧15mm X29mm (7) 模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便 通过SPI方式完成数据的交... 阅读全文
posted @ 2011-08-13 16:53 让linux飞一会儿 阅读(6862) 评论(3) 推荐(4)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 交通灯的控制原理与要求: 在十字路口,每条道路各有一组红、黄、绿灯和倒计时显示器,用以指挥车辆和行人有序的通行。其中。红灯亮表示该道路禁止通行;黄灯亮表示停车;绿灯亮表示可以通行;倒计时显示器是用来显示允许通行或禁止通行的时间。交通灯控制器就是用于自动控制十字路口的交通灯和计时器,指挥各种车辆和行人安全通过。下面我们就设计一个这样的:1)、在十字路口设置一组红、黄、绿等,显示顺序为:红,绿,黄,红……2)、设置一组数码管,以倒计时的方式显示允许通过或禁止通过的时间,其中绿灯、黄灯、红灯的持续时间为20s,5s,25 阅读全文
posted @ 2011-07-25 08:56 让linux飞一会儿 阅读(9426) 评论(9) 推荐(2)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 七段数码管扫描显示原理: 一般来说,多个数码管的连接并不是把每个数码管都独立的与可编程逻辑器件连接,而是把所有的LED管的输入连在一起。如图1.1所示。 图1.1 扫描数码管的原理图 这样做的好处有两点:一是节约了器件的IO口;其二是降低了功耗。每次向LED写数据时,通过片选选通其中一个LED,然后把数据写入该LED管,因此每个时刻只有一个LED管是亮的。为了能持续看见LED上面的显示内容,必须对LED管进行扫描,即依次并循环地点亮各个LED管。利用人眼的视觉暂停效应,在一定的扫描频率下,人眼就会看见好几个LED一 阅读全文
posted @ 2011-07-23 19:16 让linux飞一会儿 阅读(18968) 评论(8) 推荐(6)
摘要: 【连载】 FPGA Verilog HDL 系列实例Verilog HDL 之 AD转换 AD转换就是模数转换,顾名思义,就是把模拟信号转换成数字信号。我们所用的模数转换芯片是ADC0809。 ADC0809 8通道8位a/d转换器,ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当.. 阅读全文
posted @ 2011-07-22 16:27 让linux飞一会儿 阅读(11745) 评论(13) 推荐(7)