• «
  • 1
  • 2
  • »
  • Pages: 2/2     Go
主题 : 版主,开发板的PWM0测试控制不了占空比!!! 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 57992
精华: 0
发帖: 60
金钱: 300 两
威望: 60 点
综合积分: 120 分
注册时间: 2011-11-01
最后登录: 2015-04-13
10楼  发表于: 2013-04-11 09:11

 回 6楼(xililena) 的帖子

911gt3,你确定他这个映射是对的。我读取每个寄存器的值,都是读取失败。
unsigned long data = __raw_readl(S3C2410_TCNTB(0));
        printk("TCNTB0 data1 = %lu\n", data);
        data = __raw_readl(S3C2410_TCNTB(0));
        printk("TCNTB0 data2 = %lu\n", data);
        data = __raw_readl(S3C2410_TCMPB(0));
        printk("TCMPB0 data = %lu\n", data);
        data = __raw_readl(S3C2410_TCON);
        printk("TCON data = %lu\n", data);
        data = __raw_readl(S3C2410_TCFG1);
        printk("TCFG1 data = %lu\n", data);
        data = __raw_readl(S3C2410_TCFG0);
        printk("TCFG0 data = %lu\n", data);

读到的值:
[   78.214761] TCNTB0 data1 = 0
[   78.214787] TCNTB0 data2 = 0
[   78.214812] TCMPB0 data = 0
[   78.214836] TCON data = 0
[   78.214860] TCFG1 data = 0
[   78.214883] TCFG0 data = 0
^很多问题的背后都是简单的原因......
级别: 荣誉会员
UID: 34780
精华: 0
发帖: 1219
金钱: 6230 两
威望: 1246 点
综合积分: 2438 分
注册时间: 2010-12-21
最后登录: 2017-09-18
11楼  发表于: 2013-04-11 10:48
1) mini210_pwm.c 不是我的程序,是友善提供的;
2) arch/arm/plat-samsung/pwm.c 中的 pwm_config 接口,第二个参数 duty_ns 就是用来控制占空比的,蜂鸣器驱动则是设置成了50:50
3) 建议仔细阅读相关的源程序和S5PV210 datasheet
4) 如果寄存器定义错了,那蜂鸣器就不会发声,更不可能还能开/关
5) 不清楚你具体是怎么操作的,所以没办法确定为什么会读出为0
6) 关于9楼的问题,请容我不客气的说一句,你真的没有认真的看程序~
级别: 侠客
UID: 57992
精华: 0
发帖: 60
金钱: 300 两
威望: 60 点
综合积分: 120 分
注册时间: 2011-11-01
最后登录: 2015-04-13
12楼  发表于: 2013-04-11 11:28

 回 11楼(911gt3) 的帖子

我经过测试的。不管往pwm_config里输入什么参数,蜂鸣器都是一直常叫,不信,你可以试试。
PWM0的一直是高电平,是
static void pwm_set_freq(unsigned long freq) {
    int period_ns = NS_IN_1HZ / freq;

    pwm_config(pwm4buzzer, period_ns / 2, period_ns);
    pwm_enable(pwm4buzzer);

    s3c_gpio_cfgpin(BUZZER_PMW_GPIO, S3C_GPIO_SFN(2));
}
这里面的最后一句,把电平拉高了。
自由,自强,共享,共创。
级别: 论坛版主
UID: 12573
精华: 27
发帖: 8838
金钱: 46490 两
威望: 9298 点
综合积分: 18216 分
注册时间: 2010-01-09
最后登录: 2019-07-16
13楼  发表于: 2013-04-11 15:39
要测pwm,也可以参考210裸机开发指南
新手如何向我们反馈有效的信息,以便解决问题,见此贴:
http://www.arm9home.net/read.php?tid-14431.html

[注]: 此处签名链接仅为指引方向,而非解答问题本身.
级别: 侠客
UID: 57992
精华: 0
发帖: 60
金钱: 300 两
威望: 60 点
综合积分: 120 分
注册时间: 2011-11-01
最后登录: 2015-04-13
14楼  发表于: 2013-04-11 15:40

 回 13楼(mindee) 的帖子

版主,有测过PWM能控制蜂鸣器的不同叫声吗?
^很多问题的背后都是简单的原因......
级别: 荣誉会员
UID: 34780
精华: 0
发帖: 1219
金钱: 6230 两
威望: 1246 点
综合积分: 2438 分
注册时间: 2010-12-21
最后登录: 2017-09-18
15楼  发表于: 2013-04-11 17:03
s3c_gpio_cfgpin(BUZZER_PMW_GPIO, S3C_GPIO_SFN(2));
这是配置GPIO为功能2,至于其它代码,很抱歉,我不能一行一行解释了~

你可以烧写最新版本的image,Android 4的iTest中就有PWM测试,调节频率,应该就能听到声音的变化。
  • «
  • 1
  • 2
  • »
  • Pages: 2/2     Go