zoukankan
html css js c++ java
单片机的定时器/计数器
最近上课讲了单片机的内容,马上要复习了,于是打算总结总结。
我们上课使用的是汇编讲的单片机,于是就学习了一下汇编的编程过程。(刚接触汇编的时候有些不太适应,因为以前都是写C或java的,在条件判断的时候总想写括号,但是汇编中没有括号,只能通过缩进来找格式....)不多说废话了。
进行单片机的定时计算器的判断的时候,其结构图需要了解一下:
这个图是单片机中两定时器/计数器的结构。
单片机的定时器/计数器需要两个寄存器来控制(在硬件方面学的不精,有些器件说错了请谅解),这两个寄存器分别为TMOD(用于控制寄存器的工作方式),TCON(该寄存器的高4位于定时器/计数器有关,其低4位于外部中断有关)。其结构如下:
图中的GATE为门控位
。一般的情况下GATE = 0;但是当进行外部中断0的高点平测量的时候则将其置为1。
C/T为控制定时器/计数器是用于计数的还是用户定时的
。
当该位为0
表示该为用于定时。
当该为为1
表示该为用于计数。
其中的后两位分别为M1、M0.
这两位用户统计定时器的计数位数。其中当
M1M0 = 00
,此时单片机定时器0于定时器1分别工作于方式0,定时位数为13位。该方法使用的情况较少。
M1M0 = 01
,该单片机定时器1和定时器0工作的定时位数位16位。
M1M0 = 10
,该单片机定时器1和定时器0工作的定时位数位8位。但是此时单片机可以进行重装载。
M1M0 = 11
,此时单片机1停止工作,单片机0的高8位于低8位拆成两部分。
T0使用的低8位正常的定时计数,而T0的高8位借给定时器1用作定时器。
给定时器THx和TLx赋初的公式
(2^n-X)*Tcy = T
公式说明:
1.n表示单片机的位数。单片机的工作位数有8位,13位,16位。
2.X表示要赋的初始值
3.Tcy为机器周期。 当机器频率为6MHz的时候,其机器周期为12/6MHz = 2μs,当机器频率为12MHz的时候,其机器周期为12/12MHz = 1μs。
4.T表示总共要定的时间。
查看全文
相关阅读:
jdb应用 远程调试
maven POM总结
jvm
jdbc取出表名 名称
nginx配置openssl证书
DNS A记录 CNAME NS记录等的区别
linux文件目录类命令|--cd指令
linux文件目录类命令--ls命令
linux文件目录类命令--pwd命令
linux 帮助指令
原文地址:https://www.cnblogs.com/gxcstyle/p/6883486.html
最新文章
python中的生成器
python中的函数名,闭包,迭代器
python中的命名空间以及函数的嵌套
python中的函数
python中的文件操作
python中的set集合和深浅拷贝
JPush Wiki
JPush开发
FragmentTabHost+ViewPager实现底部按钮
(转) Cookie/Session机制详解
热门文章
Android Session
配置环境变量
Android与后台数据交互学习
Eclipse主题更改
Http返回码
使用Gson送解析Json格式
高并发系统设计
设计模式
mysql 日期与索引问题
加密算法
Copyright © 2011-2022 走看看