找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 959|回复: 8
收起左侧

单片机定时器值怎么计算TH0=(65536-500)/256;TL0=(65536-500)%256

[复制链接]
ID:302293 发表于 2023-4-19 12:00 | 显示全部楼层 |阅读模式
    单片机定时器值,这个是怎么计算的
回复

使用道具 举报

ID:332444 发表于 2023-4-19 15:21 | 显示全部楼层
这种算式是12M12T单片机的一个机器周期是1微秒
回复

使用道具 举报

ID:883242 发表于 2023-4-19 16:35 | 显示全部楼层
不知道你到底想问什么,如果是“(65536-500)/256”是怎么算的,那么可以告诉你,单片机不算这些东西,是编译器算好写到hex文件里面的。
回复

使用道具 举报

ID:302293 发表于 2023-4-19 18:10 | 显示全部楼层
Hephaestus 发表于 2023-4-19 16:35
不知道你到底想问什么,如果是“(65536-500)/256”是怎么算的,那么可以告诉你,单片机不算这些东西,是编 ...



回复

使用道具 举报

ID:67199 发表于 2023-4-19 18:57 | 显示全部楼层
就是对定时器0赋初值,TH0=(65536-500)/256取整,对高八位TH0赋值,TL0=(65536-500)%256 取余,对低八位TL0赋值。65536-500表示定时时间(具体时间得看所用MCU文档)。
回复

使用道具 举报

ID:1045628 发表于 2023-4-20 14:15 | 显示全部楼层
编译器会把纯数值计算给算出来,用不到单片机,变量计算才是单片机干的事
回复

使用道具 举报

ID:123289 发表于 2023-4-20 15:13 | 显示全部楼层
一般的计数认识是:从1到X,或从X至0。
而单片机中的计数是从X到65536,为何这样呢?因为它想考考你的智力。
回复

使用道具 举报

ID:1034262 发表于 2023-4-20 16:11 | 显示全部楼层
这是单周期定时,定时时间500个时钟周期。
回复

使用道具 举报

ID:101869 发表于 2023-4-21 11:47 来自手机 | 显示全部楼层
也就是说定时器的装入值是65036,走500个钟就溢出了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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