打印
[活动专区]

【赛元95F】之三:TIMER3

[复制链接]
453|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 lisingch 于 2020-4-1 20:43 编辑

      本次实验基于SC95F8617内部的定时器3产生100ms计时输出至P50端口,并利用逻辑分析仪对输出信号进行捕捉、观察。直观感受SC95F8617内建振荡频率可调的高精度高频振荡器“HRC”。
一、实验资源
1、SC95F8617 demo板;
2、SC-LINK;
3、Keil C51 V9.60;
4、逻辑分析仪及配套软件Logic 1.1.15;

二、相关资源简介
1、系统时钟

      SC95F8617内建振荡频率可调的高精度高频振荡器,出厂时被精确地调校至32MHz(5V/25℃),压漂(2.0V~5.5V)以及(-40℃~105℃)的温漂会在 ±2% 以内,精度还是挺高的。应用中还可通过“Code  Option”进行1/2/4/8进行分频,非常灵活。

2、定时器

SC95F8617的定时器资源非常丰富,除了TIMER0/1外 还有TIMER2/3/4 。这其中的TIMER3/4只有一种16位自动重载模式。因为TIMER2/3/4共用了同一组地址(C8H-CDH)的控制寄存器,使用中要通过TXINX[2:0]进行指定。

三、程序实现
TIMER配置:
//定时器3使用MCU内建高精度高频振荡器HRC
void Timer3_Config(void)
{
        TXINX = 0X03;                                                      //TimerX寄存器组指向Timer3

        TXMOD = 0X80;                                                                 //Timer3时钟频率为FSYS=32MHz
        THX = (65535-32000) / 256;    //1ms
        TLX = (65535-32000) % 256;
        RCAPXH = (65535-32000) / 256;
        RCAPXL = (65535-32000) % 256;
        TRX = 1;                                                                //启动Timer3
        
        IE1 = 0X40;                                                                                //ET3=0 使能T中断
        
        EA = 1;                                                                                                //开总中

}

TIMER3中断服务:
void Timer3_INT() interrupt 13  //Timer3中断服务函数 
{
        static unsigned char T3_Cont = 0;
        
        TXINX = 0X03;              //进入Timer3中断服务函数首先将TimerX寄存器组指向Timer3
        TFX = 0;                              //清除Timer3中断标志位
        T3_Cont++;
        if(T3_Cont >= 100)
        {
                T3_Cont = 0;
                P50 = ~P50;
        }
}

主函数:
void main(void)
{
        P5CON = 0xff;                          //设置P5为强推挽输出模式
        
        Timer3_Config();
        
        while(1)
        {

        }
}

四、实验结果


五、总结
      SC95F8617的定时器资源丰富,操作方便,配合内置高精度高频振荡器可满足用户高标准的需求。

使用特权

评论回复

相关帖子

沙发
598330983| | 2020-4-5 19:15 | 只看该作者
这个芯片定时器挺多的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

14978

帖子

17

粉丝