【ARM开发板应用—智能插排】4. PWM驱动

【前言】
首先感谢深圳市米尔科技有限公司举办的这次活动并予以本人参加这次活动的机会,以往接触过嵌入式,但那都是皮毛,最多刷个系统之类的,可以说对于嵌入式系统开发这件事情是相当非常陌生的,这次活动为我提供了一个非常好的入门和学习嵌入式的机会,同时在社区及技术群内也得到了很大的帮助和鼓励,这也是我不断前行和进步的动力,在这里一并致谢了。下面我附上本次学习心得及过程。
**米尔MYS-6ULX单板机介绍:
MYS-6ULX是一款以NXP i.MX6UL/i.MX6ULL处理器,Cortex-A7内核为核心的嵌入式单板机,主频为528MHz。配备了256MB高速DDR3、256M NAND Flash,集成了以太网、WIFI、LCD接口、USB OTG、USB Host、TF Card、用户按键、用户LED、IO扩展接口等功能。
详细介绍:http://www.myir-tech.com/product/mys_6ulx.htm
收到米尔的板子,先上图:
这里写图片描述
【概述】
计划通过本次项目实现一些家庭电器设备控制,进现实现远程监控;
1,实现计时控制插排包括,计时,延时,定时,倒计时,周期开通和关闭功能;
2,实现PWM调控灯光或者风扇调速;
3,实现红外遥控控制空调。
【正文】

PWM驱动

我的项目中有一个是pwm调光调速的功能,本帖就实现如何进行pwm调光调速,外接一个了led灯来观察实验结果,下边记录本次实验的全部过程。pwm驱动已经由系统提供了,我们只需修改dts来分配一个io即可,本次实验我们使用gpio_5做为pwm输出(gpio_9已经用作插座的开关了),默认目录为arch/arm/boot/dts/。

  1. 首先修改imx6ull.dtsi,修改pwm4 如下图所示,第二个红框是修改过的,注意大小写,第一个红框是未修改的。
    这里写图片描述

为何修改pwm4,这个是依据imx6ul_pinfunc.h查找到的

!
这里写代码片

  1. 打开mys-imx6ull-14x14-evk.dts, 先找到要用的gpio_5,先注释掉
    这里写图片描述
  2. 接上一步,添加pwm4,及gpio1_io05(gpio_5)
    这里写图片描述
    这里写图片描述
  3. 保存后编译生成dtb,下载到开发板,使用dd覆盖,重启开发板(此过程省略)

  4. ssh进入开发板,通过以下步骤,点亮LED,改变占空比来观察LED的亮度

这里写图片描述
【综述】通过本次实验,实现了pwm输出,进而可以进行调光调速。顺便附上官网的培训资料Yocto Training - HOME

后续继续更新博客,敬请关注,有同道者欢迎提出建议。
声明:本文首发在与非网社区 NXP论坛›竞技场›恩智浦/米尔i.MX6ULL竞赛专区.›作者论坛ID:leo121_3006061

猜你喜欢

转载自blog.csdn.net/m0_37358682/article/details/82622461