Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
PWM
【开发板评测】Renesas RA2L1 开发板之pwm 蜂鸣器
发布于 2022-10-30 21:49:02 浏览:490
订阅该版
**功能模块的硬件介绍** ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/b168137fc1b9c4e74312f5a5a2efe3f8.png) 此处的功能模块为自己绘制的蜂鸣器电路,二极管做蜂鸣器保护,单片机输出接入NPN 三极管的基极,通过三级管放到单片机的PWM 波然后驱动蜂鸣器发声。 **功能模块的使用说明** 功能模块主要通过pwm 进行驱动,可播放人耳可听到的声音。 PWM 输出口直接驱动是利用PWM 输出口本身可以输出一定的方波来直接驱动蜂鸣器。在单片机的软件设置中有几个系统寄存器是用来设置PWM 口的输出的,可以设置占空比、周期等等,通过设置这些寄存器产生符合蜂鸣器要求的频率的波形之后,只要打开PWM 输出,PWM 输出口就能输出该频率的方波,这个时候利用这个波形就可以驱动蜂鸣器了。比如频率为2000Hz 的蜂鸣器的驱动,可以知道周期为500μs,这样只需要把PWM 的周期设置为500μs,占空比电平设置为250μs,就能产生一个频率为2000Hz 的方波,通过这个方波再利用三极管就可以去驱动这个蜂鸣器了。 而利用I/O 定时翻转电平来产生驱动波形的方式会比较麻烦一点,必须利用定时器来做定时,通过定时翻转电平产生符合蜂鸣器要求的频率的波形,这个波形就可以用来驱动蜂鸣器了。比如为2500Hz 的蜂鸣器的驱动,可以知道周期为400μs,这样只需要驱动蜂鸣器的I/O 口每200μs 翻转一次电平就可以产生一个频率为2500Hz,占空比为1/2duty 的方波,再通过三极管放大就可以驱动这个蜂鸣器了。 **外设性能指标测试** ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/7c99470ceb65404fd63f918162c73179.png) 该芯片有4个32bit 6个16bit的timer ,性能比较强劲,准确率相当高 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/269bafb170f49dc5629fae4762272264.png) 周期设定相对比较自由 **整个实现过程** 1.环境安装,参考群里讨论及RTT bsp doc 内文档实现uart9 shell 交互 keil 环境安装,软件调试、下载 2.FSP 3.6.0环境安装 ,RTT env 环境安装 3.在rtt ra2l1 bsp 下运行RTT env ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/4dcadc5c2543b30dd5ed7d16dba0222e.png) 开启PWM ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/d945d12de1d812f109eaa0e280e519b5.png) 开启GPT3 保存config scons-update ,scons --target=mdk5 重新生成keil5 工程 4.Keil 中开启RA 配置工具 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/2e759b489fd64d17e50d2b3bc8157877.png) 5.RA 配置工具中配置好GPT3 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/fbb8def254ee990ab99eb2295d92ff3a.png.webp) 6.配置完成后 点击生成 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20221030/4c94a7b18a916c9c917f81797cc1bddb.png) 7.编写bsp 应用代码 ```c #include
#include
#include
struct rt_device_pwm *pwm_dev; int pulse = 0; /** * There's actually only one GPT timer with 10 channels. In this case, the * timer is separated into 10 PWM devices, so each device has only one * channel. */ void pwm_init(void) { pwm_dev = (struct rt_device_pwm*) rt_device_find("pwm3"); if(pwm_dev ==RT_NULL) { rt_kprintf("find pwm3 error\n"); } else{ rt_kprintf("find pwm3 success\n"); rt_pwm_set(pwm_dev, 0, 200000*5, 100000*5); rt_pwm_enable(pwm_dev, 0); } } MSH_CMD_EXPORT(pwm_init, timer3 init); ``` **完成模块功能的演示** 【RA2L1_开发板评测】 https://www.bilibili.com/video/BV1V84y1i7zb/?share_source=copy_web&vd_source=2cd1712485ef02569790d921b11dd330 **可编译下载的代码** https://gitee.com/xinshuwei/ra2-l1-driver-degsin **心得体会** 1.感觉此次不如 RA64在RT studio 内开发方便,需要自己搭建环境,中间坑比较多, 2.timer 的ch 有些误导性,必须仔细阅读bsp内代码,才知只能指定ch0 3.瑞萨的配置工具感觉蛮方便的,外设配置相对轻松些
0
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
xinshuwei
这家伙很懒,什么也没写!
文章
8
回答
0
被采纳
0
关注TA
发私信
相关文章
1
玩iot camera笔记之3测试试用3路pwm
2
[已解决]PWM输出异常分析
3
给RT-Thread添加PWM驱动框架
4
关于rt-thread-3.1.0 pwm
5
关于rt-thread的PWM框架在stm32f103vf应用的疑问
6
rt-thread stm32 bsp adc pwm 外设适配好了吗
7
stm32f103ze 添加pwm 设备失败
8
【正点原子】潘多拉IoT-STM32L475开发板 用menuconfig 看不到PWM....
9
关于rtthread 4.0.0版本中pwm的初始化定时器寄存器读写问题
10
RT-Thread正点原子战舰V3使用PWM设备驱动没有输出
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
Bootloader
AT
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
I2C_IIC
ESP8266
UART
WIZnet_W5500
ota在线升级
PWM
cubemx
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1444
个答案
290
次被采纳
张世争
813
个答案
177
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
149
次被采纳
本月文章贡献
聚散无由
2
篇文章
14
次点赞
catcatbing
2
篇文章
4
次点赞
Wade
2
篇文章
2
次点赞
Ghost_Girls
1
篇文章
5
次点赞
xiaorui
1
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部