这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » EASYARM2200 EASYARM2200+计数器1的操作

共2条 1/1 1 跳转至

EASYARM2200 EASYARM2200+计数器1的操作

院士
2006-09-17 18:14:16     打赏
EASYARM2200 EASYARM2200+计数器1的操作



关键词: EASYARM2200     EASYARM2200+         

院士
2006-12-22 22:43:00     打赏
2楼
问 void Timer1Init(void)
    {
    PINSEL0=(PINSEL0&0xf8ffffff)|(1<<27);
                           //配置P0.13功能为MAT1.1
//IO0DIR=0xffffffff;这个代码好象是不需要的吧

    T1IR=0xffffffff;  //写入1复位中断寄存器
    T1PR=1;           //预分频寄存器
    T1TC=0;           //定时计数器
    T1MCR=0X10;       //匹配控制寄存器,设置MR1匹配时TC复位
    T1MR1=Fpclk/200;  //匹配寄存器1 MAT1.1   P0.13
    T1EMR=0XC2;       //外部匹配寄存器,翻转
    }
我用计数器来发脉冲,在主程序中 T1TCR=1;//使能计数器1,和关闭计数器来控制。寄存器的设置如上面的代码,我对照教材反复的查了寄存器都没有问题,可是就是没有在p0.13口得到脉冲的输出。
请教高手指点一下 ,是不是有什么地方我没有考虑到?????

另外设置了p0.13为MAT1.1,还要不要再设置p0.13为输出?? 1: re:您启动定时器了吗?
    T1TCR = 0x03;    // 启动并复位T1TC
    T1TCR = 0x01;

还有,您可以在存储器观察窗口观察TIEMR的地址0xE000803C处,看有没有翻转

另外,设置为MAT1.0的管脚不需要再设置为输出(没有意义),因为只有选择GPIO,设置IODIR才有意义。

共2条 1/1 1 跳转至

回复

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