首页 > 评测 > NXP i.MX7D与AndroidThings系列之六:PWM输出
NXP i.MX7D与AndroidThings系列之六:PWM输出
- [导读]
- 本文是AndroidThings的第六篇,将为大家演示如何通过PWM实现电灯。
本文是AndroidThings的第六篇,将为大家演示如何在IMX7D上通过PWM实现电灯。“需要注意的是,PWM输出并不是模拟信号,而是利用数字输出来达到模拟信号的特性,通过调整频率及占空比,可以实现常规模拟信号不能达到的要求,在电机控制、灯光调光方面应用非常广泛。在AndroidThings设备中使用PWM,方法更简单!
欢迎加入Android Things交流群:452863046
脉宽调制 (PWM)是使用数字输出引脚向外部器件施加比例控制信号的常用方法。例如,伺服电机使用输入PWM信号的脉冲宽度来确定它们的旋转角度。LCD显示器根据PWM信号的平均值调整其亮度。
PWM是一种数字(即方波)信号,它根据给定的频率和占空比振荡
• 频率(以Hz表示)描述输出脉冲重复的频率。
• 周期是每个周期所需的时间,并且是频率的倒数。
• 占空比(以百分比表示)描述该频率窗内的脉冲宽度。
例如,设置为50%占空比的PWM信号在每个周期的一半时间内有效:
i.MX7D提供的PWM接口如下
接口引脚图上看到有两个PWM,即PWM1和PWM2,这一点可以通过如下的代码来加以验证
Log.d(TAG, "PWM" + PeripheralManager.getInstance().getPwmList());
LogCat输出信息如下:
/com.example.netlh.pwm D/AndroidThings: PWM[PWM1, PWM2]
接下来我们使用LED灯来做一个呼吸灯效果,实现PWM输出测试。
LED灯连接到PWM1接口,使用Handler.postDelay()来做简单的定时功能。当然在此之前记得打开IO权限
<uses-permission android:name="com.google.android.things.permission.USE_PERIPHERAL_IO" />
接下来看代码,如何来实现呼吸灯的效果
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
RAK831 Lite:基于树莓派3的LoRa网关... 2022-06-17
-
Imagination推出PowerVR AX2185和AX2145神经... 2022-06-17
-
ODROID-GO是一款兼容Arduino的基于ESP32的便... 2022-06-17
- PID温度控制器
预算:¥700003天前
- 摄像头的可视画面需要一直超上(linux系统,ARM)
预算:¥1000018小时前
- DICOM协议搭建(ARM架构,linux系统)
预算:¥1000017小时前
- 需MIPI摄像头隔离电路,实现3-4米能长距离
预算:¥1000017小时前
- 膨宫仪的控制板,控制流量和检测压力
预算:¥1000016分钟前
- 无创自动测量血压计 NIBP模块
预算:¥100007小时前