0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

4G模组PWM接口:技术实操要点

青山老竹农 来源:jf_82863998 作者:jf_82863998 2024-11-20 23:29 次阅读

今天我们讲解的是4G模组PWM接口的技术实操要点,以我常用的模组Air724UG为例分享出来。

一、简介

1.1pwm是什么

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

PWM 的相关参数

PWM 的频率:
是指 1 秒钟内信号从高电平到低电平再回到高电平的次数(一个周期),也就是说一秒钟 PWM 有多少个周期 单位:Hz

PWM 的周期:
T=1/f 周期=1/频率 例:如果频率为 50Hz ,也就是说一个周期是 20ms,那么一秒钟就有 50 次 PWM 周期 3. PWM 的占空比:是一个脉冲周期内,高电平的时间占整个周期时间的比例 单位:% (0%-100%) 例:一个周期 10ms,高电平占 8ms,那么此占空比就是 8/10=80%

1.2pwm 原理

单片机的 IO 引脚输出的是数字信号,且只能输出 1 和 0,那如果 TTL 电平中,高电平为 5V,低电平为 0V,但是我们想要输出不同的模拟电压,比如输出 3.75V 应该怎么操作?

此时要用到 PWM,通过改变 IO 口输出方波的占空比,得到不同的模拟电压。3.75/5=0.75 ,也就是高电平时间占整个周期的 75%,即占空比为 75%,可得到平均电压 3.75V.

wKgaoWc9_86AaDVtAABZskKAhgQ532.png

注意上图中蓝线,代表着输出的模拟电压,占空比越大,则模拟电压也越大。

1.3 Air724UG pwm 说明

查阅 Air724UG 模块硬件设计手册:
https://docs.openluat.com/air724ug/product/

wKgZoWc9_9iAHLcAAAFtQcvyyAE553.png

PWM_PWT_OUT 的时钟基于 APB 时钟,主时钟是 200Mhz,通过配置 pwt 寄存器的 PWT_Period 和PWT_Duty 来控制 pwm 的输出

PWM_LPG_OUT(Light Pulse Generation)用于低频率的应用如驱动 LED 闪烁。

下面是频率和占空比可以选择的取值范围:

周期范围:
125ms,250ms,500ms,1000ms,1500ms,2000ms,2500ms, 3000ms

选择对应的时间,输出的波形周期也与之对应。

高电平时间:
15.6ms, 31.2ms, 46.8ms, 62ms, 78ms, 94ms, 110ms, 125ms, 140ms, 156ms, 172ms, 188ms,

200ms, 218ms, 243ms

选择对应高电平时间,输出在当前周期内的高电平。

二、演示功能概述

教程教你如何使用开发板输出 PWM 功能。

功能定义:

1. 使用 PWM 引脚输出脉宽调制信号
2. 驱动开发板指示灯,呼吸灯演示

三、准备硬件环境

3.1 开发板准备

使用 EVB_Air724 开发板,如下图所示:

wKgZoWc9_-eAN5CyABGP1x2jrWI711.png

此开发板的详细使用说明参考:

https://docs.openluat.com/air724ug/product/

Air724UG 产品手册中的《EVB_Air724UG_AXX 开发板使用说明》,写这篇文章时最新版本的使用说明为:《EVB_Air724UG_A14 开发板使用说明》;开发板使用过程中遇到任何问题,可以直接参考这份使用说明文档。

api文档:
https://doc.openluat.com/wiki/21?wiki_page_id=2068

3.2 数据通信线

USB 数据线一根(micro USB)。

3.3 PC 电脑

WIN7 以及以上版本的 WINDOWS 系统。

3.4 组装硬件环境

USB 数据线插入 USB 口,另一端与电脑相连,拨码开关全部拨到 ON,串口切换开关选择 UART1,USB 供电的 4V 对应开关拨至 ON 档,如下图所示。

wKgaoWc9__SAXykEAAdcibXcEBA887.png

四、准备软件环境

4.1 下载调试工具

使用说明参考:
Luatools 下载和详细使用
https://docs.openluat.com/Luatools/

4.2 源码及固件

1、底层 core 下载

下载底层固件,并解压

链接:
https://docs.openluat.com/air724ug/luatos/firmware/

如下图所示,红框的是我们要使用到的

wKgZoWc9__-AKmn2AATau0XGcNc200.png

2、 本教程使用的 demo 见附件:

https://gitee.com/openLuat/LuatOS-Air724UG/tree/master/script_LuaTask/demo/pwm呼吸灯

4.3 下载固件和脚本到开发板中

打开 Luatools,开发板上电开机,如开机成功 Luatools 会打印如下信息

wKgaoWc-AAqARmFMAAOgyTpLkoI120.png

点击项目管理测试选项。

wKgaoWc-ABKAGP_pAAD-9aUPXoQ431.png

进入管理界面,如下图所示。

wKgZoWc-AByAYh-6AAIqUMJx-6I014.png

点击选择文件,选择底层固件,我的文件放在 D:luatOSAir724 路径中

wKgZoWc-ACaAEFdEAACDxhdPbo0408.png

点击增加脚本或资源文件,选择之前下载的程序源码,如下图所示。

wKgaomc-AC-Aabi2AAEDSesUPog782.png

点击下载底层和脚本,下载完成如下图所示。

wKgZomc-ADmAQVLAAAFMvgzyKkg716.png

五、代码示例介绍

5.1 PWM 接口说明

本例使用 Air724 的 49 管脚,即 PWM_PWT_OUT GPIO_5 pwm 通道 id=0,控制开发板上的红色电源指示灯。

开启 pwm 通道的 pwm 输出,设置不同的占空比,小灯会有不同的亮度,原理图如图所示。

wKgaomc-AEmAdOjjAAJuAx1m2BY769.png

5.2 breathingLight.lua 代码

打开并且配置 PWM 函数 misc.openPwm(0, 512, y) 说明

--0:gpio5, 1:gpio13

--p1 周期 0-1024

--p2 占空比 0-512

wKgZomc-AFWALUO8AAHeR02u67I512.png

5.3 main.lua 代码

本代码为主程序脚本,系统启动后首先会对 4G 网络进行配置,然后加载加载功能测试模块。

六、开机展示

连接好硬件并下载固件后,重启开发板观察指示灯的变化,如下图所示。

七、常见问题

1、为什么 gpio13 输出是低频波形吗?

gpio13 只能输出低频 pwm 波形。

2、为什么配置后输出没波形?

答:看通道是否配置正确,gpio 口是否被占用。

3、PWM 的信号的频率如何选择?

频率的选择通常取决于具体应用,根据自己的项目需要来选择:

(1)电机控制:常用频率为 1 kHz 到 20 kHz,以确保足够的反应速度和控制精度。

(2)LED 调光:频率通常在 1 kHz 以上,以避免人眼感知到闪烁。

(3)音频信号:频率设置应高于音频信号的最高频率(例如,至少为 20 kHz)。

分享完毕

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 4G
    4G
    +关注

    关注

    15

    文章

    5503

    浏览量

    118778
  • 接口
    +关注

    关注

    33

    文章

    8486

    浏览量

    150804
  • PWM
    PWM
    +关注

    关注

    114

    文章

    5140

    浏览量

    213358
  • 模组
    +关注

    关注

    6

    文章

    1432

    浏览量

    30278
收藏 人收藏

    评论

    相关推荐

    RK3588开发板(armsom-w3)之PWM

    RK3588开发板(armsom-w3) 之 PWM
    的头像 发表于 06-10 10:38 2031次阅读
    RK3588开发板(armsom-w3)之<b class='flag-5'>PWM</b><b class='flag-5'>实</b><b class='flag-5'>操</b>

    ESP32S2 WROVER在使用AT指令获取4G模组时,dte会报超时怎么解决?

    模组:ESP32 S2 WROVER 4G模组:合宙Air724UG 在使用AT指令获取4G模组时,dte会报超时。 代码和log如下图所示
    发表于 06-27 06:54

    4G技术

    4G技术{:4_95:}。。。。。。。。。。。。。。。。。。。
    发表于 06-14 15:39

    【沙龙】基于MDM9206芯片的GoKit4G)的应用

    `【沙龙】基于MDM9206芯片的gokit4G)的应用物联网应用开发之道-Qualcomm& 机智云开发者沙龙摘要:北上广深,四场workshop,Qualcomm和机
    发表于 08-24 17:55

    MiniPCIE 封装4G模组价值仍在

    类使用使用场景需要,奇迹物联推出一款基于eSIM技术的PCIExpress Mini Card 1.2 标准接口4G模组—AM400P。基于ASR平台 ,工作温度可达-40℃到+85
    发表于 02-21 11:57

    基于4G技术的移动宽带产品设计要点是什么?

    基于4G技术的移动宽带产品设计要点是什么?
    发表于 05-28 06:12

    4G路由器在选择时可以从三个要点入手

    。那么,接下来善睐物联的小编跟大家分享下:选择4G路由器在选择时可以从哪几个要点入手?1、从流畅程度开始使用4G路由器舒适度的关键是上网的流畅度。为了选择一个足够流畅的无线路由,可以考虑数据传输的要求
    发表于 04-11 10:38

    基于4G技术的移动宽带产品设计要点

    采作4G技术的移动宽带产品设计方案 移动WiMAX已经成为4G蜂窝技术的首选技术,现在能够满足新
    发表于 04-15 15:07 737次阅读
    基于<b class='flag-5'>4G</b><b class='flag-5'>技术</b>的移动宽带产品设计<b class='flag-5'>要点</b>

    4G模组

    4G模组:CR100IP-AHD-TF1-1F
    发表于 03-21 20:02 0次下载

    4G模组4G模块是什么?4G模组4G模块的平台?4G模组4G模块怎么选?ASR RDA 高通

    开始正文前,如需进一步交流,欢迎大家添加朱胖子微信交流: 4G模块是什么 4G模块是什么?4G模块是指第四代通讯技术模块, 4G模块是支持T
    的头像 发表于 06-07 19:50 1.5w次阅读

    合宙低功耗4G模组Air780EX——硬件设计手册02

    在上文我们介绍了合宙低功耗4G模组Air780EX的主要性能和应用接口, 本文我们将继续介绍Air780EX的射频接口,电气特性,网功耗数
    的头像 发表于 09-10 16:46 527次阅读
    合宙低功耗<b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780EX——硬件设计手册02

    4G模组SIM卡接口电路设计:从入门到精通

    今天我跟大家探讨的是4G模组SIM卡接口电路是怎么设计的?我们以低功耗4G模组经典型号Air780E为例,它支持两路SIM卡,支持双卡切换,
    的头像 发表于 11-02 11:59 277次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>SIM卡<b class='flag-5'>接口</b>电路设计:从入门到精通

    4G模组PWM调光入门:打造个性化呼吸灯

    一直有朋友问我怎么打造个性化呼吸灯,本文我将以合宙低功耗4G模组经典型号——Air780E为例,展示PWM输出呼吸灯的实现方法,帮助大家深入理解如何在项目中应用PWM
    的头像 发表于 11-17 09:56 107次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>PWM</b>调光入门:打造个性化呼吸灯

    4G模组SD卡接口编程:深度学习

    今天我们需要深度学习的是4G模组SD卡接口编程,以我常用的模组Air724UG为例,分享给大家。
    的头像 发表于 11-20 23:14 24次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>SD卡<b class='flag-5'>接口</b>编程:深度学习

    SPI与4G模组的集成:技术要领篇

    今天咋们要讲的是SPI与4G模组技术要领,以低功耗模组Air724UG为例,展示给大家学习。
    的头像 发表于 11-20 23:25 26次阅读
    SPI与<b class='flag-5'>4G</b><b class='flag-5'>模组</b>的集成:<b class='flag-5'>技术</b>要领篇