HOME
  • GM-3568JHF
  • M4-R1
  • M5-R1
  • SC-3568HA
  • M-K1HSE
  • CF-NRS1
  • CF-CRA2
  • 1684XB-32T
  • 1684X-416T
  • C-3568BQ
  • C-3588LQ
  • GC-3568JBAF
  • C-K1BA
Shop
  • English
  • 简体中文
HOME
  • GM-3568JHF
  • M4-R1
  • M5-R1
  • SC-3568HA
  • M-K1HSE
  • CF-NRS1
  • CF-CRA2
  • 1684XB-32T
  • 1684X-416T
  • C-3568BQ
  • C-3588LQ
  • GC-3568JBAF
  • C-K1BA
Shop
  • English
  • 简体中文
  • M4-R1

    • Introduction

      • M4-R1 Introduction
    • Get started quickly

      • OpenHarmony概述
      • 镜像烧录
      • 开发环境准备
      • Hello World应用以及部署
    • Application Development

      • getting Started

        • 第一章 ArkTS语言简介
        • 第二章 UI组件介绍和实际应用(上)
        • 第三章 UI组件介绍和实际应用(中)
        • 第四章 UI组件介绍和实际应用(下)
      • Advanced

        • 第一章 入门指引
        • 第二章 三方库的引用和使用
        • 第三章 应用编译以及部署
        • 第四章 命令行恢复出厂设置
        • 第五章 系统调试--HDC调试
        • 第六章 APP 稳定性测试
        • 第七章 应用测试
    • Equipment Development

      • 第一章 环境搭建
      • 第二章 下载源码
      • 第三章 编译源码
    • Peripherals and interfaces

      • 树莓派接口
      • GPIO 接口
      • I2C 接口
      • SPI通信
      • PWM控制
      • 串口通讯
      • TF Card
      • 屏幕
      • 触摸
      • 音频
      • RTC
      • Ethernet
      • M.2
      • MINI-PCIE
      • Camera
      • WIFI&BT
      • 树莓派拓展板
    • Frequently asked questions

      • 资源下载
  • M5-R1

    • Introduction

      • Introduction to ShimetaPi M5-R1

PWM控制

1. PWM引脚

以M4-R1为例,在板卡的40PIN引脚上有3个具有PWM功能的GPIO,其中PWM5(PIN33)已经被MIPI1屏幕背光所占用

TOOL
板卡pin12pin32pin33
M4-R1pwm0pwm14pwm5

备注

pwm0,pwm5,pwm14默认都已使能

2. 检查PWM设备

在终端输入以下命令查看pwm是否使能

    ls -l /sys/class/pwm/

如图:

TOOL

pwmchip1,pwmchip2为屏幕的背光,系统默认开启,当开启多个pwm设备树插件时,pwm控制器值越小,系统分配的pwmchip越小

	比如我同时开启了pwm0,pwm5,pwm14,那么会出现以下对应关系

    pwm0->pwmchip0
    pwm5->pwmchip2
    pwm14->pwmchip3

3. PWM控制方式

下面以控制PWM14为例

    #将pwm14导出到用户空间
    echo 0 > /sys/class/pwm/pwmchip3/export

    #设置pwm周期 单位为ns
    echo 1000000 > /sys/class/pwm/pwmchip3/pwm0/period

    #设置占空比
    echo 500000 > /sys/class/pwm/pwmchip3/pwm0/duty_cycle

    #设置pwm极性
    echo "normal" > /sys/class/pwm/pwmchip3/pwm0/polarity

    #使能pwm
    echo 1 > /sys/class/pwm/pwmchip3/pwm0/enable

    #取消将pwm14导出到用户空间
    echo 0 > /sys/class/pwm/pwmchip3/unexport

Tips

当设置period与duty_cycle值时,需要注意在任何的情况下都得保证period的值大于等于duty_cycle的值。


Edit this page on GitHub
Last Updated:
Contributors: zwhuang
Prev
SPI通信
Next
串口通讯