找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1459|回复: 8
打印 上一主题 下一主题
收起左侧

关于单片机定时器初始化代码看不懂,先谢谢,求告知

[复制链接]
跳转到指定楼层
楼主
ID:895406 发表于 2021-3-29 15:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/**  
   系统默认的时钟频率设置
   晶振:fosc=12MHZ
   系统时钟:fcclk=fosc *5=60MHZ  晶振的5倍频
   VPB时钟:fpclk=fcclk/4=15MHZ  fcclk的4分频
**/
  /* 将TIMER0 设置成1s 定时 */
  TOPR=99; /* 对pclk进行100分频,TC计数频率为150000HZ
  TOMCR=Ox03;/*TC 和MR 匹配时产生中断,TC复位 */
  TOMRO=150000;/*匹配值150000,1s定时*/
  TOTCR=Ox03;/* 启动并复位TOTC */
  TOTCR=OX01;/* 启动TO */
    问题1:上面的五行代码等于号右边的设置的数值我看不懂,还请大神解释下?
    问题2:TIMERO设置成2s定时,要如何设置了?
       先谢谢,求告知!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:584814 发表于 2021-3-29 17:20 | 只看该作者
不懂too,不过可以百度。以下供参考:
/* 系统设置, Fosc、Fcclk、Fcco、Fpclk 定义*/
#define Fosc 12M //晶振频率,10MHz~25MHz,应当与实际一致
#define Fcclk (Fosc * X ) //系统频率,必须为Fosc 的整数倍(1~32),且<=60MHZ
#define Fcco (Fcclk * Y ) //CCO 频率,必须为Fcclk 的2、4、8、16 倍,范围156MHz~320MHz
#define Fpclk (Fcclk / Z ) * 1 //VPB 时钟频率,只能为(Fcclk / 4)的1 ~ 4 倍
通常只需要设置Fosc 即可。.......
回复

使用道具 举报

板凳
ID:895406 发表于 2021-3-30 08:51 | 只看该作者
man1234567 发表于 2021-3-29 17:20
不懂too,不过可以百度。以下供参考:
/* 系统设置, Fosc、Fcclk、Fcco、Fpclk 定义*/
#define Fosc 12M  ...

百度上真是没有,我都查过了 !
回复

使用道具 举报

地板
ID:887371 发表于 2021-3-30 09:21 | 只看该作者
/* 将TIMER0 设置成2s 定时 */
  TOPR=199;
  TOMCR=Ox03;
  TOMRO=150000;
  TOTCR=Ox03;
  TOTCR=OX01;
回复

使用道具 举报

5#
ID:887371 发表于 2021-3-30 09:22 | 只看该作者
/* 将TIMER0 设置成2s 定时 */
  TOPR=99;
  TOMCR=Ox03;
  TOMRO=300000;
  TOTCR=Ox03;
  TOTCR=OX01;
不要那么死板,要学会举一反三。
回复

使用道具 举报

6#
ID:895406 发表于 2021-4-2 09:20 | 只看该作者
datouyuan 发表于 2021-3-30 09:22
/* 将TIMER0 设置成2s 定时 */
  TOPR=99;
  TOMCR=Ox03;

TOPR=99,是什么意思?求大神告知,谢谢
回复

使用道具 举报

7#
ID:824490 发表于 2021-4-2 09:37 | 只看该作者
低级错误!是“0”不是“O”
   TOPR=99; /*从单片都是从0开始计数,所以实际上是99+1
  TOMCR=0x03;/*看你的芯片手册,TOMCR的bit1/bit0同时置1
  TOMRO=150000;/*这个就是预设值,从15000开始计算,减数计算?
  TOTCR=0x03;/* 启动并复位TOTC */
  TOTCR=0X01;/* 启动TO */这2条一样的寄存器,参数为什么不同?
回复

使用道具 举报

8#
ID:895406 发表于 2021-4-8 10:06 | 只看该作者
名字不是重点 发表于 2021-4-2 09:37
低级错误!是“0”不是“O”
   TOPR=99; /*从单片都是从0开始计数,所以实际上是99+1
  TOMCR=0x03;/* ...

你好大神,要是设置成2s定时该如何设置了
回复

使用道具 举报

9#
ID:895406 发表于 2021-4-11 10:38 来自手机 | 只看该作者
datouyuan 发表于 2021-3-30 09:22
/* 将TIMER0 设置成2s 定时 */
  TOPR=99;
  TOMCR=Ox03;

你说的对,非常感谢
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表