网站首页 > 技术教程 正文
在学习单片机的时候,我们发现很多功能都是通过中断来实现的。之前也举过烧水的例子来阐述中断,今天就讲解一下定时器赋初值的方法。8位的定时器最大可计数2的8次方为256,16位的定时器最大可计数2的16次方为65536。由于单片机的定时器是递加式的,所以最大值减去所要定时的值就是初值,举例如下:
最大值为100,我们只需要38,怎么办呢,由于是递加的,我们只需要在62时开始计时就可以了。
以proteus仿真为例简单讲解定时器赋初值
用proteus搭建的电路图如下,晶振为12M,P2.0每10ms翻转一次,即P2.0输出的频率为100HZ。
这里使用16位的定时器,那单片机定时器0的最大计数就是65536.晶振为12M,那单片机的一个机器周期就是1us,定时器 0工作在方式1时最大定时65.536ms。
定时器的定时时间T = (65536-X),单位是us;
定时器初值X = 65536-T;
假设定时时间T=10ms=10000us,
那定时器初值X=65536-10000=55536us,也就是定时器0从55536开始递加到65536就是10ms,所以55536就是定时器的初值,55536转化为十六进制为0Xd8f0,所以定时器的初值为:
TH0 = 0XD8;
THL = 0XF0;
用虚拟示波器抓到的波形如下:
只需要支付硬件成本的STM32单片机学习板正在集资众筹,价格129元,。这款学习板包含了GPIO应用、RS232通讯、RS485通讯、CAN总线通讯、USB通讯、IIC总线、SPI总线、JTAG在线调试、SW在线调试、ISP自动下载、RTC实时时钟、TFT真彩屏应用等丰富的外设资源,详情请加微信号了解。
本订阅号致力于单片机、ARM等嵌入式软硬件的设计经验分享,秉承“人人都是电子设计经验的分享者”的理念,成功路上不孤单,我们一起努力。
公众号:micropoint8。嵌入式学习网振兴网:www.picmcu.com
猜你喜欢
- 2025-07-01 类似于STM32之类的单片机,RTOS比裸机真有那么大优势?
- 2025-07-01 单片机系统按键硬件、软件设计技巧
- 2025-07-01 单片机键盘消抖“独门”汇编方案分享,不用延时还能用什么?
- 2025-07-01 单片机引脚功能介绍(单片机引脚工作原理)
- 2025-07-01 单片机与外设的交互(单片机与电脑交互)
- 2025-07-01 26单片机的最小电路介绍(单片机最小电路图pcb)
- 2025-07-01 汇编入门第一篇,小白也能看懂(汇编rl)
- 2025-07-01 单片机简介(arm单片机)
- 2025-07-01 51单片机可以用来做什么?单片机可以做的小产品
- 2025-07-01 我在高职教STM32——02一览STM32的重要功能
你 发表评论:
欢迎- 最近发表
-
- Android 16评测:热潮之后(16x安卓10)
- 新功能很赞!Android 7.0上手体验:系统巨流畅
- 解决Windows下linux子系统WSL无法使用reboot重启的问题
- Python 的 init 方法:深入对象初始化
- 【开源】基于 Vue 和 Gin 开发的前后端分离的开源框架
- 全面解析 Linux 中的运行级别,从 SysV init 到 systemd
- Android 开机启动流程分析(06)init.rc解析流程
- 399元,魅族推出智能手表inWatch(魅族的手表)
- Android 开机启动流程分析(01) init之前启动说明
- Android 开机启动流程分析(03)init启动关键进程uevent&watchdog
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)