首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BeagleBone黑上的脉宽调制芯片引脚映射(v4.14)

BeagleBone黑上的脉宽调制芯片引脚映射(v4.14)
EN

Stack Overflow用户
提问于 2018-05-06 20:41:12
回答 1查看 3.7K关注 0票数 2

关于如何在较新版本的内核上配置Beaglebone用于PWM的信息非常少。我按照BeagleBone黑的脉宽调制(v4.14)的指令与PWM芯片接口,但现在我需要弄清楚每个芯片连接的引脚。

基于BeagleBone黑文档中的Cape扩展头图像,我知道:

  • EHRPWM0A = P9_22
  • EHRPWM0B = P9_21
  • EHRPWM1A = P9_14
  • EHRPWM1B = P9_16
  • EHRPWM2A = P8_19
  • EHRPWM2B = P8_13
  • ECAP0 = P9_42

当我运行ls -lh /sys/class/pwm来查看可用的脉宽调制接口时,我看到:

代码语言:javascript
复制
lrwxrwxrwx 1 root pwm 0 May  6 14:31 pwmchip0 -> ../../devices/platform/ocp/48300000.epwmss/48300100.ecap/pwm/pwmchip0
lrwxrwxrwx 1 root pwm 0 May  6 14:31 pwmchip1 -> ../../devices/platform/ocp/48300000.epwmss/48300200.pwm/pwm/pwmchip1
lrwxrwxrwx 1 root pwm 0 May  6 14:31 pwmchip3 -> ../../devices/platform/ocp/48302000.epwmss/48302200.pwm/pwm/pwmchip3
lrwxrwxrwx 1 root pwm 0 May  6 14:31 pwmchip5 -> ../../devices/platform/ocp/48304000.epwmss/48304100.ecap/pwm/pwmchip5
lrwxrwxrwx 1 root pwm 0 May  6 14:31 pwmchip6 -> ../../devices/platform/ocp/48304000.epwmss/48304200.pwm/pwm/pwmchip6

当我将此与BeagleBone脉宽调制实例进行比较时,我发现可用的芯片和附件是不同的。这个例子确实提到PWMs可以改变,所以我需要找出新的映射。

如何确定PWM芯片的引脚映射?我正在使用TI AM335x BeagleBone黑色无线运行内核版本4.14.37-ti-r46。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-06 20:41:12

TI AM335x和AMIC110 Sitara处理器技术参考手册第184页给出了脉宽调制芯片的内存映射:

脉宽调制子系统0:0x48300000

  • eCAP00x48300100
  • ePWM00x48300200

脉宽调制子系统1:0x48302000

  • eCAP10x48302100
  • ePWM10x48302200

脉宽调制子系统2:0x48304000

  • eCAP20x48304100
  • ePWM20x48304180

每个PWM接口的地址(张贴在问题中)包含硬件地址。匹配这些地址给我们:

  • EHRPWM0 (ePWM0)是pwmchip1
  • EHRPWM1 (ePWM1)是pwmchip3
  • EHRPWM2 (ePWM2)是pwmchip6
  • ECAP0 (eCAP0)是pwmchip0

每个EHRPWM芯片都有两个脉宽调制输出通道,因此AB变体。它们是通过将01回显到export来导出的。这些通道必须使用相同的频率,但可以有不同的占空比。

因此,考虑到这种接口配置,EHRPWM0AEHRPWM0B位于:

代码语言:javascript
复制
root@beaglebone:~# cd /sys/class/pwm/pwmchip1
root@beaglebone:/sys/class/pwm/pwmchip1# ls
device  export  npwm  power  subsystem  uevent  unexport

要导出EHRPWM0A (P9_22):

代码语言:javascript
复制
root@beaglebone:/sys/class/pwm/pwmchip0# echo 0 > export
root@beaglebone:/sys/class/pwm/pwmchip0# ls
device  export  npwm  power  pwm-1:0  subsystem  uevent  unexport

要导出EHRPWM0B (P9_21):

代码语言:javascript
复制
root@beaglebone:/sys/class/pwm/pwmchip0# echo 1 > export
root@beaglebone:/sys/class/pwm/pwmchip0# ls
device  export  npwm  power  pwm-1:1  subsystem  uevent  unexport

注意:可用的PWM接口和地址列表可能与问题中提供的列表不同,但是这种方法仍然可以确定最终的引脚图。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50204329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档