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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

[未解决] omapl138 PWM输出问题

[复制链接]

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
跳转到指定楼层
楼主
发表于 2017-9-14 18:02:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
新手求助~~4 J6 v  `/ ~6 u* }- t1 E
+ g# l7 V" C+ p
项目中需要用到4路pwm输出,
; C3 {& j- P4 r& `# q( a5 Z内核自带只有一个apwm2输出(lcd背光),
! Z1 S$ m8 C1 ^' q内核menuconfig 配置中 去掉 SPI模块 ,在sys/class/PWM下面多了一个ehrpwm输出
4 X3 l0 A( j  r6 c/ ^- K
" e  N' @5 b% H( y. c1 l去掉占用apwm0的网口PHY驱动
. Z6 B0 e$ ^) D- {. l5 v! D  J3 K( K
6 D  d0 V( i) {9 m" {结果还是一样,不知配置项对不对?
8 R9 e' G+ `9 |然后再看下apwm1只接了一个led灯 d7,* X8 F/ w, |; S* Z2 b! x- N
按说也该还有个 ecap.1 才对。
- K+ z/ j4 P1 ^, a8 W# w7 |
# c7 ?, g) i8 d4 B搞一天了,请大家帮忙看下,是内核配置里有哪些模块和PWM输出有冲突? 谢谢
; G+ K7 o: H' s/ {/ V

本帖子中包含更多资源

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

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配置。( x3 ]1 ^" u6 t- C- B
参考:: I  t8 l/ h" {
http://note.youdao.com/noteshare ... F458DA6058A8D9873B0
& O; l8 s0 Y- r$ k: ~. s
; P# \6 \/ W( q3 g
2 P5 v$ r/ x* |. X6 v  J3 u6 u) B
! F1 b5 V9 N( E% }% G) c
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
板凳
 楼主| 发表于 2017-9-15 17:02:33 | 只看该作者
感谢感谢,刚摸索出来才看到回复, l* u1 O# b( t2 _# q; j1 Z5 B) g9 @
在board-da850-evm.c 注册了ecap1,频率 占空比 个参数也都能设置,就是IO输出没反应,还要修改哪里?
8 l/ C& d. [+ {( h: n8 @

本帖子中包含更多资源

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

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
. |6 ]$ I8 }9 e9 W感谢感谢,刚摸索出来才看到回复, J' F* V0 T# x% ^& k
在board-da850-evm.c 注册了ecap1,频率 占空比 个参数也都能设置,就 ...
( A; I' _( K& E" ?
确认一下ecap.1的管脚pinmux是否配置正确
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
5#
 楼主| 发表于 2017-9-20 00:15:23 | 只看该作者
本帖最后由 baicaibang7456 于 2017-9-20 00:20 编辑
" V& p6 F5 |' S! P: \0 E' q, D, [  j7 w  o: s
看了下源码,我的理解是pinmux应该本身已经在Da850.c的da850_pins[]里声明了(linux-3.3内核),只要使用davinci_cfg_reg(DA850_ECAP1_APWM1)注册一下应该就行了,下图是Mux.h 和 Da850.c里关于DA850_ECAP1_APWM1的对应关系。是不是我理解有问题?
& e: ~6 m8 j* L4 A* m! c! ~( GC:\Users\Administrator\Desktop\Da850.c, m/ h  ?& z$ c! U+ Q$ b
C:\Users\Administrator\Desktop\Mux.h

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

2

主题

8

帖子

113

积分

注册会员

Rank: 2

积分
113
6#
 楼主| 发表于 2017-10-10 15:17:43 | 只看该作者
问题解决了,现在7路PWM都可输出。% k' d( L* `5 _2 Z2 |4 P' D1 w
8 z" p# U% ]5 f, u. K7 ]
ecap.1没输出是因为:/ n, O; S+ b7 T6 p( l
注册过DA850_ECAP1_APWM1后,后面又注册了LED,       da850_evm_tl_leds_init(); 然而LED的D7是和APWM1共用管脚的。
* L8 `. f4 E+ |& @4 u/ m0 h6 w0 L6 o
ehrpwm0没输出是因为:' v, A8 o; L$ ?, N1 s- c. a

& L/ ]- G/ `! b6 y. [7 G6 Z此处的rmii_en在结构体里没有声明,导致一直是初始值0。
. s  O4 _* r* j) J这样改后就有输出了
3 c8 h" t  E: }+ O) E8 N& h/ V% W/ n7 H, Y* B

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-31 15:01 , Processed in 0.041134 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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