这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Renesas » 定时器 超简单

共22条 2/3 1 2 3 跳转至
助工
2012-09-05 11:50:26     打赏
11楼
LZ的那段英文是IAR断点的设置方式,跟呼吸灯和APPLILET3都没什么关系。 LZ想怎么操作?说个想法上来。 如果只是用I/O口操作的话,可以用APPLILET设置时钟,以及需要的I/O设置为输出,然后在主程序里面控制I/O的高低电平应该就可以了吧。 或者还是有别的想法?

工程师
2012-09-05 12:29:27     打赏
12楼

    感谢大虾指点。那段英文是我在开始读手册时搞不明白的部分,后来搞清楚了。
    我是用applilet3 生成工程文件再用IAR编辑调试,现在不明白的是,使用applilet3到底能做些什么?它的引脚分配、时钟、片上调试设置等有什么作用?对后期的IAR有什么帮助或牵制?
    我在大虾的“瑞萨Applilet使用感受分享”一帖中看到“...简介在其说明文档里面就有,这里不再赘述,下面说说其使用,以便大家快速入门。”这里的说明文档指的是什么文档?
    还望大虾指点


工程师
2012-09-05 12:35:01     打赏
13楼
    感谢大虾指点。
    那段英文是我在开始读手册时搞不明白的部分,这个帖子是在原来的帖子上修改的,没有去掉原来的内容。我现在主要是不清楚applilet3到底是做什么的,或者说能做多少事情。谢谢指点!

工程师
2012-09-05 12:38:34     打赏
14楼

感谢大虾指点。对我很有帮助和启发。


院士
2012-09-05 13:26:36     打赏
15楼
好吧。那段我已经删除了。


applilet的作用,仅仅为工程师们初始化硬件配置时方便而编写的一款助手式软件。
通过图形式的配置方式,来完成枯燥的寄存器配置,也减少了配置错误而带来的不必要的时间浪费。

核心程序的运行还是需要咱们自行编写。其applilet不是必须使用的工具,其代码也是一个参考。

工程师
2012-09-12 11:16:56     打赏
16楼

     得到版主和大虾指点,又看了很多资料,对applilet3 有了更多的认识,做了基于applilet3的定时器实验,超简单,也很能体现出瑞萨的特点,得到了在使用这类型板子时应该尽可能多地利用其资源的启示,拿出来和大家分享,同时也希望得到大虾的指点。

    对applilet3最感兴趣的是它的定时器众多功能,applilet3的定时器除了定时功能外,还有很多功能:

    1、可以输出方波、PWM和多通道PWM

    2、能输出受内部指令或外部触发控制的单脉冲

    3、具有分频器、外部事件计数器、延迟计数功能

    4、能够检测输入脉冲的周期和宽度

    再加上时钟/蜂鸣器输出功能,RTC功能等等,似乎就可以构成一个完整的应用系统。而这些功能的实现只需在applilet3中进行设置即可。

    这就给出了一个启示,如果我们掌握了这些功能的使用方法,无论是外围还是编程应用,只需在applilet3中设置一下,就会简化很多,将变得非常简单。

    基于这个想法,做了定时实验,果然如愿,整个过程除设定参数和启动指令外,只敲入7个字符。具体如下:

applilet3 操作:

    1、打开applilet3,完成基本设定后,点击
timer选项:

    选择channel0 功能为interval timer(间隔定时器)


    在channel0 选项卡中,选择interval value (间隔值)的单位为ms,便于观察led,参数选择为1000或500即1秒或0.5秒均可。


    2、打开watchdog timer,选择Unused,点击工具栏的generate source code,生成源代码文件

IAR操作:

    3、双击applilet3操作生成文件夹中的IAR IDE 文件,启动IAR

    4、在CG_timer.c文件中找到“
TAU0_Channel0_Start()”,复制,并粘贴到CG_main.c文件中如下位置:

**-----------------------------------------------------------------------------
*/
void  main(void)
{
  TAU0_Channel0_Start();    //粘贴到这里
 /* Start user code. Do not edit comment generated here */
 while (1U)
 {
  ;
 }
 /* End user code. Do not edit comment generated here */
}

/* Start user code for adding. Do not edit comment generated here */
/* End user code. Do not edit comment generated here */

    5、在CG_timer_user.c中断函数中加入语句如下:

#pragma vector = INTTM00_vect
__interrupt void MD_INTTM00(void)
{
  P7=~P7;     //仅有这个语句的7个字符是加入的
 /* Start user code. Do not edit comment generated here */
 /* End user code. Do not edit comment generated here */
}

/* Start user code for adding. Do not edit comment generated here */

    6、点击 Project 选项卡的Rebuild AII,生成文件,点击Download And Debug,写入板子。

    确实很简单,以后是不是该多多利用applilet3这个好帮手呢?



工程师
2012-09-14 00:40:29     打赏
17楼

沙发上自己看。

觉得这是瑞萨除了低功耗外的主要特点。不过,我了解其它产品很少,只是感到瑞萨的这个片子输出端口功能很强,能直接实现很多目的,很贴近和简化应用,应用起来更简单更节省外围器件或单元。


院士
2012-09-14 10:50:48     打赏
18楼
楼主,建议将自己的代码写在下面两者之间
/* Start user code. Do not edit comment generated here */
楼主你的代码写在这里吧~~
 /* End user code. Do not edit comment generated here */

助工
2012-09-14 15:33:25     打赏
19楼
 TAU0_Channel0_Start();
这个必须写吗?他不是已经设置好了吗?

工程师
2012-09-14 17:25:31     打赏
20楼
这个是在主程序里启动定时器的指令,没有它定时器就不会被调用。我在这里用COPY的方法是告诉大家这条指令的目的地,也省事免的敲错。

共22条 2/3 1 2 3 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]