社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 精华区
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
搜索
查看: 2283|回复: 5

瑞萨R7F0C80212电路板-使用code generator 生成pwm

[复制链接]

198

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2014-8-26 00:01:44 | 显示全部楼层 |阅读模式
这两天一直在使用code generator,目前设置ADC,IO口都得心应手了,因为实在是使用起来很简单的。但是使用PWM时却出现了问题,设置好以后一直不见仿真的波形出来,无奈之间只好去老老实实看资料了,最终功夫不负有心人,终于让我找出问题的关键了。那就是:使用自动代码生成器生成的PWM,默认的输出时P40,而不是我自以为的P0.4。这一点大家可以自己试试。而如何解决这个问题呢,那就必须在自动生成代码前,把引脚设置好,PIOR1那一列选择P40,之后绑定设置。具体实现过程如下:1.首先建立工程文件,并保证已经安装了code generator插件。
2.双击工程栏里的 Peripheral Function,出现Pin assignment setting.注意这里需要将PIOR1选择为P40,因为自动生成的代码默认选择的是P40引脚作为PWM的输出引脚。
3.选择时钟图标进行PWM配置。首先选择通用设置:General setting 将通道0和1分别选中PWM output(master),通道0会自动选到slave。
4.之后点击channel0(master)和 channel1(slave)的设置。分别可以设置时钟周期,和占空比,以及输出电瓶高低,最后当然还有中断的等级。这里没有使用,中断等级使用默认等级。
5.确认好设置以后,可以点击生成代码按钮,生成代码。
6.之后再在自动生成的main函数中添加启动计时器函数R_TAU0_Channel0_Start()即可。
7.点击编译,没有问题就可以download了,如果仿真器选择软件模拟器,可以观察到P40口的输出情况。


自动代码生成插件

自动代码生成插件

配置好PIOR1

配置好PIOR1

选择定时器工作模式为PWM

选择定时器工作模式为PWM

配置定时器通道0

配置定时器通道0

配置定时器通道1

配置定时器通道1

软件模拟器观察到的波形情况

软件模拟器观察到的波形情况

回复

使用道具 举报

198

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2014-8-26 00:08:43 | 显示全部楼层
PS:如果有人想要使用P0.4端口作为PWM的输出口,需要修改自动代码生成器生成的代码函数R_TAU0_Create(void)最后两行到P0端口上去,另外还需要手动配置一下P0口设置,配置PMC0=0xE1,才能保证P0.4输出PWM波形。
void R_PORT_Create(void)
{
            /* Port Mode '0'=Out, '1'=In */
       
        PM0 = 0x00;
        PM4 = 0x00;
        /* Port Register */
        P0 = 0x00;
        P4 = 0x00;
        /* Pull-up resistor */
        PU0 = 0x00;
        PU4 = 0x00;
        PU12 = 0x00;
        /* Port output mode '1'=open-drain */
        POM0 = 0x00;
        /* Port mode control '0'=I/O, '1'=AIN*/
        PMC0 = 0xE1;
        /* Peripheral I/O redirection */
        PIOR = 0x00;       
}

回复

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2016-5-15 21:26:50 | 显示全部楼层
您好  我现在在做瑞萨的PWM控制,我看到您的帖子,我有问题请教您?看到消息能不能回复一下,谢谢!

点评

??  详情 回复 发表于 2016-5-15 22:23

回复

使用道具 举报

198

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

 楼主| 发表于 2016-5-15 22:23:33 | 显示全部楼层
若之为 发表于 2016-5-15 21:26
您好  我现在在做瑞萨的PWM控制,我看到您的帖子,我有问题请教您?看到消息能不能回复一下,谢谢!

??

回复

使用道具 举报

2

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2016-5-16 12:03:02 | 显示全部楼层
能否加一下你的QQ?谢谢

回复

使用道具 举报

40

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2016-5-16 17:07:15 | 显示全部楼层
我以前用过,那个时候是要输出正弦波,要在定时器中断里面更改占空比。

回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-9-20 10:09 , Processed in 0.480684 second(s), 18 queries , Redis On.

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