《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

来源:本站
导读:目前正在解读《《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作》的相关信息,《《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作》的详细说明。
简介: 本实验主要是实现蜂鸣器的操作,蜂鸣器的操作是非常简单的,只有把简单的事情做好,方可谈其他复杂的事。本实验部分会利用verilog一些宏定义语句,其实在VGA实验部分已经出现过,这里为了巩固,再次调用相关宏定义命令,已达到最大化的可移植性,请读者务必掌握这种用法,很实用。

1 基础理论部分

本实验主要是实现蜂鸣器的操作,蜂鸣器的操作是非常简单的,只有把简单的事情做好,方可谈其他复杂的事。本实验部分会利用verilog一些宏定义语句,其实在VGA实验部分已经出现过,这里为了巩固,再次调用相关宏定义命令,已达到最大化的可移植性,请读者务必掌握这种用法,很实用。

谈及蜂鸣器或者LED,多多少少会有一个概念,PWM(pulse width modulation),即脉宽调制,PWM的输出只有高电平1和低电平0,PWM不断重复输出周期T,高电平所占用的时间为t,则占空比 = t / T ;频率 = 1 / T,如图14.1所示。

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

图14.1 PWM脉冲图

2 Verilog代码实现部分

对于实现不同的占空比,可以去建立一个parameter模块,用来定义不同的PWM脉冲信号。主要是从两方面去定义,一个是占空比相同(这里是占空比为50%),频率不同,一个是频率相同,不同的占空比。下面是FM_param.v中的各参数的设置。

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

上述是宏定义个参数,分别定义了不同的占空比和频率。

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

上述是对定义的宏参数具体执行的参数设置。

下面是FM_PWM.v文件中的内容。

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

24行调用参数文件,然后定义各宏参数,

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

此部分是执行宏定义后的具体执行的内容。

3 Modelsim仿真部分

3.1 测试程序

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

上述的测试程序很简单,和之前的部分一样。

3.2 仿真结果

图14.2是占空比为50%,周期为40ms的情况。图14.3是脚本文件的输出,其他的仿真类似。

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

图14.2 仿真波形

《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作

图14.3 脚本输出

提醒:《《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作》最后刷新时间 2024-03-14 00:53:57,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《《FPGA全程进阶---实战演练》第十四章 蜂鸣器操作》该内容的真实性请自行鉴别。