| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【蓝桥杯】——定时器/计数器与串行口 -> 正文阅读 |
|
[嵌入式]【蓝桥杯】——定时器/计数器与串行口 |
目录 一、定时器/计数器(一)什么是定时器/计数器定时器/计数器,是一种可以对所接收到的信号进行响应,即对接收的内部时钟信号或外部输入信号进行计数,其呈现周期性的计数方式(有点类似于现实生活中时钟计数方式)。故定时器/计数器的最基本工作原理就是进行计数。 (二)、51单片机定时器/计数器的结构51单片机定时器/计数器的结构如图1 图1 51单片机定时器/计数器的结构 其中TMOD用于选择定时器/计数器T0、T1的工作模式和工作方式,TCON用于控制定时器/计数器T0,T1的启动和停止,同时还包括定时器/计数器的T0、T1的状态,它的内容有软件设计或查询,单片机复位时,TMOD、TCON的各位皆位0. 1、控制寄存器TMOD工作方式控制寄存器TMOD用于选择定时器/计数器T0、T1的工作模式和工作方式,它是字节地址为89H,不可位寻址。
注:高八位为定时器/计数器T1的方式控制字段;低八位为定时器/计数器T1的方式控制字段。 (1)GATE:门控位 GATE=0,由TR0和TR1启动定时器/计数器;GATE=1,由外部中断INT1和INT0启动定时器/计数器。 (2)C/T:定时器/计数器工作模式选择位 C/T=0,为定时功能;C/T=1,为计数功能; (3)M1,M0:定时器/计数器工作方式选择位 如图2所示
2、控制寄存器TCON对于TCON的讲解见:【蓝桥杯】——单片机的中断系统_m0_50708613的博客-CSDN博客 (三)定时器/计数器的编码思路定时器/计数器的程序设计,通常包含两个函数:初始化函数和中断服务函数 1、初始化函数(1)确定工作方式(即对TMOD赋值) (2)预值定时器/计数器的初值,即TH0、TL0或者TH1、TL1的确定。 (3)根据需要决定是否开放定时器/计数器的中断,直接对IE对应位赋。 (4)启动定时器/计数器。 2、中断服务函数(1)判断工作方式,如果不是自动重装模式,需要对THx和TLx重新赋值。 (2)进行间隔定时到达的逻辑处理。 二、51单片机串行口(一)单片机串行的基本概念1、串口通信是串行数据一帧一帧进行发送和接收。 2、串口通信的模式有:单工、半双工和全双工三种。 3、异步通信:就是接收和发送双方不使用共同的同步时钟来控制收、发双方的同步。而是依靠各自的时钟来控制数据的传送。 4、波特率:是指串行口每秒发送或接收数据的位数,单位为b/s。每发送一位所需的时间为T,则其波特率为1/T (二)串行口结构如图3所示 ?串行数据缓冲器SBUF SBUF是两个物理上独立的发送缓冲器和接收缓冲器,可同时发送、接收数据、可实现全双工串行通信。两个缓冲器共用于一个特殊功能的寄存器字节地址99H。串行发送时,从内部总线向发送缓冲器SBUF写入数据;串行接收时,从接收缓冲器SBUF中读取数据。 (三)、与串口相关的寄存器? 51单片机中与串口相关的寄存器有四类: (四)、串行接口控制寄存器SCON
1、SM0、SM1:串行口方式控制位 其串行口有4中工作方式,如表所示
2、REN REN=1,允许串行口接收数据;REN=0,禁止串行口接收数据. (五)波特率的计算
三、例题在CT107D综合训练平台上,采用定时器中断实现一个简易时钟的操作,格式为yy-mm-dd; 其中S5具有清零功能,S4具有暂定和启动的功能。
|
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:32:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |