请选择 进入手机版 | 继续访问电脑版

930电子网

 找回密码
 立即注册
艾克姆科技推出最新产品STC32G12K128开发板
查看: 6882|回复: 3

视频资料里只有定时器,计数器改怎么写?

[复制链接]

4

主题

7

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2020-12-2 20:23:46 | 显示全部楼层 |阅读模式
求解改如何设置定数器。
回复

使用道具 举报

101

主题

330

帖子

7416

积分

版主

Rank: 7Rank: 7Rank: 7

积分
7416
发表于 2020-12-3 09:44:23 | 显示全部楼层
    基础实验例程没有计数器的配置,但是在项目实战1中,有简易频率计的例程,是用到了定时器计数功能。


  • /***********************************************************
  • 功能描述:定时器3初始化
  • 入口参数:无
  • 返回值:无
  • ************************************************************/  
  • void Timer3Init(void)  
  • {  
  •     T4T3M |= 0x04;                  //定时器3设置为计数方式  
  •     T4T3M |= 0x02;                  //设置定时器3为1T模式  
  •     T3L = 0x00;                     //1T模式下初始装载值   
  •     T3H = 0x00;                     //1T模式下初始装载值   
  •     T4T3M |= 0x08;                  //打开定时器3  
  •     IE2  |=  (1<<5);                //使能定时器3中断  
  • }



    上述即是其中的配置相关,不过,简易把频率计实验仔细研究下,计数功能通常会结合计数引脚使用。


回复 支持 反对

使用道具 举报

4

主题

7

帖子

50

积分

注册会员

Rank: 2

积分
50
 楼主| 发表于 2020-12-3 13:35:33 | 显示全部楼层
id Timer0Init(void)
{
        TMOD |= 0x04;                   //计数
        TMOD &= 0xF7;                   //定时器0门控位GATE设置为0
        TL0 = (65536-2)%256;                //1T模式下初始装载值      
        TH0 = (65536-2)/256;              //1T模式下初始装载值
        ET0 = 1;                        //使能定时器0的溢出中断允许位
        TR0 = 1;                        //定时器0开始计时
}
        T0
回复 支持 反对

使用道具 举报

101

主题

330

帖子

7416

积分

版主

Rank: 7Rank: 7Rank: 7

积分
7416
发表于 2020-12-4 08:57:58 | 显示全部楼层
    定时器/计数器0的配置你看下相关寄存器设置为计数模式即可,然后注意计数的对象。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|官方淘宝店|930电子网 ( 皖ICP备16000695号-2 )

Copyright © 合肥艾克姆电子科技有限公司
快速回复 返回顶部 返回列表