FPGA 技术是不断发展变化的,要掌握 FPGA 技术的精髓,需要设计者在实践中不懈地摸索与积累,逐步提高自己的设计水平。下面介绍FPGA蜂鸣器的设计的开发流程。
1、FPGA蜂鸣器的设计——编程语言
采用Verilog HDL实现本文蜂鸣器设计
2、FPGA蜂鸣器的设计——开发环境
硬件系统为 EP2C8Q208C8 增强版开发套件。软件实验环境为 Quartus II 9.0 开发工具。
3、蜂鸣器发出警车鸣笛声原理
硬件系统提供 50MHZ 的晶振,通过 Verilog HDL 语言编程将此频率分频后驱动一个 I/O Port。这个 I/O Port连接到一个交流蜂鸣器。通过改变这个 I/O Port的输出频率,就可以使蜂鸣器发出各种声音和音乐。本设计实现蜂鸣器发出警车鸣笛声,我们需要产生一个音调的变化,使之听起来像是警车的笛声。仍然从"tone"计数器开始。我们仅使用 23 位,这样便可以得到两倍与前面的频率(最高有效位大约以 3Hz 的频率转)。
使用一个寄存器"ramp"来表征当前的音调,则要 求 ramp 的值在某一区间来回变化,例 如 ...-2-1-0-1-2-3-...-127-126-125-...-2-1-0-1-2-...。考虑 "tone"计数器的15到21位(tone[21:15]), 这是一个在 0 到 127 之间循环递增的值,0-1-2-...-127-0-。再考虑这几位的反转,即