这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Renesas » 一步一步玩转SAKURA板 [离线编译--HEW+GCC]

共51条 2/6 1 2 3 4 5 6 ›| 跳转至
工程师
2012-11-09 10:57:51     打赏
11楼
LZ 是MM

不可能吧~~~~

专家
2012-11-13 11:11:52     打赏
12楼
支持下,小鱼

工程师
2012-11-13 11:25:44     打赏
13楼

支持一下,小鱼


工程师
2012-11-13 11:50:46     打赏
14楼
好快的速度啊!学习!

菜鸟
2012-11-16 15:13:33     打赏
15楼

No.4 时间到啦,定时器生成10ms的周期中断(timer)

身份被一步步地泄露,唉....

话说板子里的确没有定时器周期性中断函数可以用,还真不习惯


粗略看了下工程,基本库里用了CMT定时器,那我用TMR试试,用的8位定时器生成一个10ms的周期中断,Excep_TMR0_CMIA0是对应的中断函数,在intvect.c里有矢量声明
跑下来可以断定外设时钟PCLK果然是48MHz了...

#include <rxduino.h>
#include "iodefine_gcc63n.h"
#include "intvect.h"

void TMR0_init(void);

void TMR0_init(void)
{
    SYSTEM.PRCR.WORD = 0xA502;    // setting PRCR1 - writes enabled
    MSTP(TMR0) = 0;
    SYSTEM.PRCR.WORD = 0xA500;    // clearing PRCR1 - writes disabled
   
    TMR0.TCORA = 58;            // 10ms interrupt rate
    TMR0.TCR.BIT.CCLR = 1;        // cleared by compare match A
    TMR0.TCR.BIT.CMIEA = 1;        // compare match A interrupt enabled
    TMR0.TCCR.BIT.CSS = 1;
    TMR0.TCCR.BIT.CKS = 6;        // counter = Pclk/8192 (48MHz/8192)

    IEN(TMR0, CMIA0) = 1;        // enable compare match interrupt A
    IPR(TMR0, CMIA0) = 15;        // compare match interrupt A priority
    IR(TMR0, CMIA0) = 0;        // clear compare match interrupt A flag
}

void Excep_TMR0_CMIA0(void)
{
   /*hahahahahaha*/
}

RX63N的定时器资源丰富,但很多已经被众多的应用占用了
CMT0用于系统定时器(6MHz计数,1ms周期)
CMT1~CMT3 用于tone函数
MTU0~MTU5用于伺服,TPU0~~5用于analogwrite

TMR是8位定时器,但是2个TMR定时器可以级联组成16位定时器
TPU6~TPU11虽然没有用,但中断号与MTU冲突,如果使用中断的话,不建议使用


院士
2012-11-16 16:18:10     打赏
16楼
看到楼主的帖子,如果测试成功。
我觉得倒是可以直接证明,可以绕过arduino的固件库来执行程序。

我没有仔细研究过Arduino的系统级源代码,但是咱们能成功,也说明了,楼主使用的timer没有与系统冲突 —— 毕竟Sakura的MCU有众多的timer定时器。

院士
2012-11-16 16:28:06     打赏
17楼
不能吧~~

富士的X100相机  发烧机的相机啊~~~

小鱼的同事 一定是一名“高富帅”啊~~

院士
2012-11-16 16:43:26     打赏
18楼
我确认,小鱼的确是个MM。想要进攻的,赶紧!

院士
2012-11-16 19:26:55     打赏
19楼
楼主 来北京吧~~

我请吃冰激凌  & 果冻~~

菜鸟
2012-11-19 15:33:51     打赏
20楼
毋庸置疑, 如假包换

共51条 2/6 1 2 3 4 5 6 ›| 跳转至

回复

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