omapl138 PWM输出问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 21524|回复: 5
打印 上一主题 下一主题

[未解决] omapl138 PWM输出问题

[复制链接]

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
跳转到指定楼层
楼主
发表于 2017-9-14 18:02:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
新手求助~~* s2 S( t8 H5 n
9 ]( ]1 c* I4 [+ c) ^' x4 Z; L
项目中需要用到4路pwm输出,2 j6 f' |: H( S3 B) P* S8 F
内核自带只有一个apwm2输出(lcd背光),
" i& L( R* i. O. b2 E& |内核menuconfig 配置中 去掉 SPI模块 ,在sys/class/PWM下面多了一个ehrpwm输出8 D- ^& T6 z- v
% [* n/ j( L  ]6 W2 W; J* [
去掉占用apwm0的网口PHY驱动
: d4 v3 V- l$ D- {: b. ~6 D
' m' [6 o! O% {0 {% X% y结果还是一样,不知配置项对不对?
6 B; C, T" j: |+ L/ E然后再看下apwm1只接了一个led灯 d7,
4 m, A, u! i. O9 V2 U7 {按说也该还有个 ecap.1 才对。  w7 D) q# w$ s4 q7 `8 e

$ {8 B- ?! q2 \: P搞一天了,请大家帮忙看下,是内核配置里有哪些模块和PWM输出有冲突? 谢谢
9 D5 d6 `9 s) z) H+ E, f

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

31

帖子

1402

积分

创龙

Rank: 8Rank: 8

积分
1402
沙发
发表于 2017-9-15 14:07:02 | 只看该作者
1. 在menuconfig中 Device Drivers->PWM Support中选中Davincie HRPWM Support.2. 参照arch/arm/mach-davinci/board-da850-evm.c里面的PWM配置,新增您需要的PWM配置。
( F  j& |* N% B4 Z. T$ E参考:
, s. [) e* @& m# n2 Khttp://note.youdao.com/noteshare ... F458DA6058A8D9873B0
4 N) U" ?% _8 L
+ S3 ]) Y+ W8 ?$ L+ n) W0 H& [* Z
  m9 o# {# C' P0 v( i
1 ~* [  q/ b; O" [
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
板凳
 楼主| 发表于 2017-9-15 17:02:33 | 只看该作者
感谢感谢,刚摸索出来才看到回复
+ B0 K8 p5 U) `1 e( j6 c7 @在board-da850-evm.c 注册了ecap1,频率 占空比 个参数也都能设置,就是IO输出没反应,还要修改哪里?1 ], D9 [4 q8 l

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

确认一下ecap.1的管脚pinmux是否配置正确  详情 回复 发表于 2017-9-19 14:53
回复 支持 反对

使用道具 举报

0

主题

31

帖子

1402

积分

创龙

Rank: 8Rank: 8

积分
1402
地板
发表于 2017-9-19 14:53:29 | 只看该作者
baicaibang7456 发表于 2017-9-15 17:02
; U# A) _  h' S* v8 D( l8 m感谢感谢,刚摸索出来才看到回复
5 ~- Z) x  y9 T) m  l" B; \3 F2 `在board-da850-evm.c 注册了ecap1,频率 占空比 个参数也都能设置,就 ...

* _- o! @6 G! k- E; p4 n确认一下ecap.1的管脚pinmux是否配置正确
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
5#
 楼主| 发表于 2017-9-20 00:15:23 | 只看该作者
本帖最后由 baicaibang7456 于 2017-9-20 00:20 编辑 5 o. s6 s1 v* Y# d6 Y; P
' ~; I4 _; v) h4 N8 f, o" n; G
看了下源码,我的理解是pinmux应该本身已经在Da850.c的da850_pins[]里声明了(linux-3.3内核),只要使用davinci_cfg_reg(DA850_ECAP1_APWM1)注册一下应该就行了,下图是Mux.h 和 Da850.c里关于DA850_ECAP1_APWM1的对应关系。是不是我理解有问题?
3 O: Z3 w4 l5 R) E9 qC:\Users\Administrator\Desktop\Da850.c
/ t9 J/ f3 T0 j4 d- iC:\Users\Administrator\Desktop\Mux.h

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
6#
 楼主| 发表于 2017-10-10 15:17:43 | 只看该作者
问题解决了,现在7路PWM都可输出。
  }* J) c( K& }/ L# b7 j3 \
& B7 [4 K8 c* T2 `/ N5 D; Decap.1没输出是因为:) v, G2 [/ H0 I) l, E- T& O
注册过DA850_ECAP1_APWM1后,后面又注册了LED,       da850_evm_tl_leds_init(); 然而LED的D7是和APWM1共用管脚的。
  r1 C: O1 p/ e" G6 c. s9 S: o$ w
0 a2 q9 z7 k1 r, w2 f9 W# r% rehrpwm0没输出是因为:
% h" r7 ^3 D0 Q% M
7 x7 k! S2 z: D此处的rmii_en在结构体里没有声明,导致一直是初始值0。$ M3 r5 N# W2 r* b0 T, \" k
这样改后就有输出了, E/ c. t2 c4 H/ `3 n

/ U& s+ Q, B# m* n! m$ ^# _, d4 k

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-12-19 15:09 , Processed in 0.042612 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表