网站首页 > 技术教程 正文
之前我们有了解过,MCU单片机相当于一个微控制器,和其他芯片相比,最大的特点就是可编程特性。由于它的可编程特点,让它得以广泛的应用在生活的方方面面,比如手机、PC外围、遥控器,汽车、电子、智能家居等,但这些都是使用MCU单片机配合不同电路去实现的。
那MCU单片机的基本功能有哪些呢?金誉半导体带大家来了解一下,包括:定时器(TImer)、IO口、外部中断、通讯接口、A/D转换、PWM功能等。其中定时器(TImer)功能可以说是MCU单片机最基本的功能,那定时器(TImer)功能使如何实现的呢?
定时器是由两个寄存器组成的,其中一个寄存器是用来确定计数器的工作形式和功能的,另外一个计时器是用来控制单片机的启动和停止的,同时它也是设置溢出的一个标志。
TImer的种类虽然比较多,但可归纳为两大类:
一类是固定时间间隔的TImer:即其定时的时间是由系统设定的,用户程序不可控制,系统只提供几种固定的时间间隔给用户程序进行选择,如32Hz,16Hz,8Hz等,此类TImer在4位MCU中比较常见,因此可以用来实现时钟、计时等相关的功能。
固定时间间隔的TImer在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。
另一类则是可编程定时器(Programmable Timer),顾名思义,该类Timer的定时时间是可以由用户的程序来控制的,控制的方式包括:时钟源的选择、分频数(Prescale)选择及预制数的设定等,有的MCU三者都同时具备,而有的则可能是其中的一种或两种。此类Timer应用非常灵活,实际的使用也千变万化,由于时钟源可以自由选择,因此,此类Timer一般均与Event Counter(事件计数器)合在一起。
MCU单片机计数过程
每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求(定时器/计数器中断允许时)。如果定时器/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。
其实数字集成电路也可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)可以实现时序电路,但是只有单片机实现起来最简单,成本最低。因此单片机定时器的使用是非常重要的,掌握逻辑加时间控制的编程是学习使用单片机的基础。
*此文来源网络资料整理后内容,如有侵权请联系删除
猜你喜欢
- 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)
本文暂时没有评论,来添加一个吧(●'◡'●)