找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机定时器初值应该为多少

[复制链接]
跳转到指定楼层
楼主
Fsys是时钟频率,为16Mhz,我给它设成了12分频,为1.33MHz,请问定时50us,定时器的初始值应该为多少

1.PNG (69.46 KB, 下载次数: 0)

1.PNG

2.PNG (35.88 KB, 下载次数: 0)

2.PNG
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1109793 发表于 2024-9-16 13:47 | 只看该作者
不是那个工具软件可以帮你算吗?
回复

使用道具 举报

板凳
ID:1109793 发表于 2024-9-16 13:48 | 只看该作者
  1. void Timer0_Init(void)                //50微秒@16MHz
  2. {
  3.         AUXR |= 0x80;                        //定时器时钟1T模式
  4.         TMOD &= 0xF0;                        //设置定时器模式
  5.         TL0 = 0xE0;                                //设置定时初始值
  6.         TH0 = 0xFC;                                //设置定时初始值
  7.         TF0 = 0;                                //清除TF0标志
  8.         TR0 = 1;                                //定时器0开始计时
  9. }
复制代码
回复

使用道具 举报

地板
ID:1109793 发表于 2024-9-16 13:48 | 只看该作者
  1. void Timer1_Init(void)                //50微秒@16MHz
  2. {
  3.         AUXR |= 0x40;                        //定时器时钟1T模式
  4.         TMOD &= 0x0F;                        //设置定时器模式
  5.         TL1 = 0xE0;                                //设置定时初始值
  6.         TH1 = 0xFC;                                //设置定时初始值
  7.         TF1 = 0;                                //清除TF1标志
  8.         TR1 = 1;                                //定时器1开始计时
  9. }
复制代码
回复

使用道具 举报

5#
ID:161164 发表于 2024-9-16 14:48 | 只看该作者
12分频后得时钟周期是1/1.33 us
50us / 1/1.33 = 50*1.33 = 66.7
TL1 = 256 - 66;
TH1 = 256 - 66;
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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