关于定时器、波特率、TH和TL值的计算

假设晶振位6MHZ,定时10ms

单片机系统晶振频率为6mhz,系统时钟频率 (也是计时脉冲频率)为500KHZ,一个脉冲周期2us ,10ms是5000个脉冲,因此
TMOD=0X01;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;

方式0:13位定时计数方式,最大计数值为2^13=8192,定时8192个机器周期。此方式已经不再用了,是为了和以前的单片机兼容,学初者不用掌握。
方式1:16位定时计数方式,最大计数值为2^16=65536,定时65536个机器周期。此方式可实现最大的定时时间和最大计数次数。是最常用方式之一。
方式2:8位自动重装计数方式,最大计数值为2^8=256,定时256个机器周期。此方式工作时定时或计数到了不用重装初值,精度较高。另外在串口通讯时常用此方式。是最常用方式之一。
方式3:特殊工作方式。将定时器0分成两个8位功能不全的定时计数器,要占用T1部分功能。也不常用。

时间: 2024-10-13 17:03:30

关于定时器、波特率、TH和TL值的计算的相关文章

matlab(8) Regularized logistic regression : 不同的λ(0,1,10,100)值对regularization的影响,对应不同的decision boundary\ 预测新的值和计算模型的精度predict.m

不同的λ(0,1,10,100)值对regularization的影响\ 预测新的值和计算模型的精度 %% ============= Part 2: Regularization and Accuracies =============% Optional Exercise:% In this part, you will get to try different values of lambda and % see how regularization affects the decisio

信息的存储与值的计算

信息的存储与值的计算 前言 我们很难想象出来,计算机只能识别0和1这样再简单不过的数字,却给人们带来了巨大的变化.对于无法与人脑相比的计算机来所,简单的1和0就是适合他们的数字.不过呢,一个1或者1个0往往代表不了什么意义,,他们必须被赋予上下文,才能有具体的含义.比如,如果我们知道1和0代表的布尔类型的值,那么我们就知道1是true,0是false. 对于二进制所表示的数字来说,主要有三种,即无符号,补码以及浮点数. 由于计算机对于固定类型的二进制数字往往都是有位数限制的,比如int类型使用四

根据umask值,计算文件权限

老男孩linux运维实战培训 老男孩教育教学核心思想6重:重目标.重思路.重方法.重实践.重习惯.重总结 学无止境,老男孩教育成就你人生的起点! 相信自己相信老男孩!!! 版权声明: 本方法遵循oldboy衍生而来,务必尊重作者!!! http://oldboy.blog.51cto.com/2561410/1060032 本文作者为<老男孩linux运维实战培训>学生-张志强 本文的所有内容均来自老男孩培训命令总结,未经本人及老男孩培训许可,禁止私自转发及使用. QQ: 1344683865

bt 介绍以及 bt 种子的hash值(特征值)计算

bt种子的hansh值计算,最近忽然对bt种子感兴趣了(原因勿问) 1. bt种子(概念) bt 是一个分布式文件分发协议,每个文件下载者在下载的同时向其它下载者不断的上传已经下载的数据,这样保证下载越快,上传越快,从而实现告诉下载 2. bt 如何实现下载同时上传文件 这个需要从文件本身说起,bt文件包含了两部分信息,一部分是Tracker信息,一部分是文件信息,tracker信息主要是记录下载过程中需要的tracker服务器地址和针对tracker服务器的设置,文件信息是根据对目标文件的计算

webQQ 中hash值的计算 python实现 2015年7月

目前,在获取群列表时,需要post一个hash值,计算函数在js中,具体位置详见注释部分. 另外,此部分更改的频率很快,应该很快就变了. #!/usr/bin/env python # -*- coding: UTF-8 -*- def getHashCode(b, j): """ get the hash num to achieve the grouplist info (record:gcode) source function: http://0.web.qstati

Java 区块链BLOCKCHAIN中区块BLOCK的hash值的计算

Java 区块链中区块的hash值的计算 计算方法有多种,如,可以直接String拼接,也可以用stringbuffer,或者stringbuilder .这里采用了速度较快的stringbuilder,自己编程的时候可采用stringbuffer.其中index是区块BLOCK的索引,timestamp是区块BLOCK的时间戳,data是区块BLOCK内包含的数据,nonce为该区块的难度系数.总体计算代码如下: /** * 计算hash服务 * @param index 索引 * @para

BERT模型在多类别文本分类时的precision, recall, f1值的计算

BERT预训练模型在诸多NLP任务中都取得最优的结果.在处理文本分类问题时,即可以直接用BERT模型作为文本分类的模型,也可以将BERT模型的最后层输出的结果作为word embedding导入到我们定制的文本分类模型中(如text-CNN等).总之现在只要你的计算资源能满足,一般问题都可以用BERT来处理,此次针对公司的一个实际项目--一个多类别(61类)的文本分类问题,其就取得了很好的结果. 我们此次的任务是一个数据分布极度不平衡的多类别文本分类(有的类别下只有几个或者十几个样本,有的类别下

数据类型取值范围计算

之前一直不清楚数据类型的取值范围是怎么计算的,现在弄懂了,记录一下. char型示例 signed char类型取值范围计算1 假设一个字符型变量占用一个字节,也就是8个二进制位(bit),由于是signed,所以最高为可以为1(负数)或0(正数). 当最高位为1时,能表示的范围是[1000 0000]-[1111 1111].然后按照二进制转十进制的规则计算,二进制"1000 0000"将8bit全部取反,变成"0111 1111",再加上1变成"100

单测中会用到的类,锁+定时器,等待回调的值返回

public class BaseJunit { private Timer timer; private Object mSync = new Object(); protected void Wait() { synchronized (mSync) { if (timer != null) { timer.cancel(); timer.purge(); timer = null; } timer = new Timer(); timer.schedule(task, 3 * 1000);