参考文献
有关文件及软件,请浏览:
//www.wsdof.com/雷电竞官网登录products/greenpak
下载我们的免费GreenPAK设计软件[1],打开。gp文件[2],并使用GreenPAK开发工具[3]在几分钟内将设计冻结到您自己的定制IC中。
雷竞技电竞平台Dialog Semiconductor提供了一个完整的应用笔记[4]库,包括设计示例以及Dialog IC内的功能和模块的说明。
- GreenPAK设计软件,软件下载和用户指南,Dialog Semiconductor雷竞技电竞平台
- AN-1111正弦波发生器,绿派克设计文件,Dialog半导体雷竞技电竞平台
- GreenPAK开发工具, GreenPAK开发工具网页,Dialog半导体雷竞技电竞平台
- GreenPAK应用笔记,绿派克应用笔记网页,对话半导体雷竞技电竞平台
- SLG46531对话框数据表,半导体雷竞技电竞平台
作者:大卫Riedell
介绍
在这个应用程序说明中,我们将使用脉冲宽度调制与外部滤波器,使用SLG46531V[5]设备创建一个近似的正弦波。然后,我们将使用Arduino Uno与GreenPAK接口,并让GreenPAK播放一小段歌曲。这个功能可以通过通过I2C写入多个计数器和通过切换GPIO触发一个记录来创建。
GreenPAK设计
CNT4、CNT6和DFF3是本次设计的核心。CNT4和CNT6均用于时钟反相触发器DFF3, CNT6恰好比CNT4长一个时钟周期。结果是DFF3的输出是一个占空比变化的方波。
图2和图3中,黄色为CNT4的输出,蓝色为CNT6的输出,粉色为DFF3的输出。你可以看到CNT6脉冲之间的延迟比CNT4脉冲之间的延迟稍长,而粉色脉冲由于这个差异变得更短。
在图3中,可以看到偏移计数器的缩小效果是一个周期为CNT4*CNT6的重复波形。DFF3(粉色)的输出在100%占空比和0%占空比之间振荡。
GreenPAK设计文件的底部部分(参见图1)创建了Trigger功能,该功能将告诉设备开始播放音调。引脚3的上升边缘将锁定DFF4高,这是馈入与反相输出管道延迟。管道延迟块将输入延迟10个时钟周期,然后重置DFF4。
同时,DFF5的输出被用作锁存器,当触发周期结束时使振荡器断电。DFF5由DFF4的输出时钟,并由管道延迟的输出下降沿复位。图4、5和6包括Pipe Delay、DFF4和DFF5的属性设置。
CNT2用于在振荡器上电时产生1kHz的时钟信号,用于时钟CNT0。CNT0依次记录管道延迟。这意味着为了设置您希望音调播放的时间长度,您将需要通过I2C将以下内容写入CNT0:
CNT0 = 0.1 *[时间长度(毫秒)]- 1
|
|
|
|
|
外部电路
图7为正弦波发生器的外部电路。触发器引脚有一个内部的1MΩ下拉电阻。扬声器使用了一副旧耳机,通过RC滤波器连接到Pin4。RC滤波器具有平滑图3和图4所示方波的效果,留下图8所示的大致正弦波。同样,黄色是CNT4的输出,蓝色是CNT6的输出,粉色是RC滤波器的输出。
Arduino草图
这个Arduino Uno小图将利用目前介绍的技术,通过GreenPAK播放童谣“Mary had a little lamb”,并将歌词与相应的音符同步打印到Arduino串行监视器。这个草图使用了Dialog Arduino库一个- 1107.
结论
在这个应用笔记中,我们使用Dialog SLG46531V GreenPAK设备创建了一个正弦波发生器,只有几个外部组件。然后我们用Arduino Uno与GreenPAK进行交互,播放童谣“玛丽有只小羊羔”。
这种技术对于需要产生不同频率的正弦波的应用是有用的。雷竞技安卓下载