51单片机的串行接口介绍

  • 串行口结构
  • 设置工作方式(串行口控制寄存器SCON)
  • 设置波特率
 51单片机内部集成1~2个可编程通用异步串行通信接口(即UART),采用全双工制式。该通信接口有四种工作方式,并且能设置各种波特率

串行口结构


1、串行口数据缓存器SBUF用于存放发送/接收的数据,它在物理上是同一个寄存器,逻辑上是两个
2、串行口寄存器SCON用于控制串行口的工作方式
3、波特率发生器由定时器T1构成
4、波特率于单片机的晶振频率、定时器T1初值、串行口的工作方式以及波特率选择位SMOD有关

设置工作方式(串行口控制寄存器SCON)

 可位寻址
D7 D6 D5 D4 D3 D2 D1 D0
SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0 SM1 工作方式 功能 波特率
0 0 方式0 8位同步移位寄存器 Fosc/12
0 1 方式1 10位UART 可变
1 0 方式2 11位UART Fosc/64 或 Fosc/32
1 1 方式3 11位UART 可变
控制位 功能 说明
SM2 多机通信控制位 (空)
REN 允许串行接收位 REN=1时,允许接收;REN=0时,禁止接收
TB8 发送数据第九位 (空)
RB8 接收数据第九位 (空)
TI 发送中断标志位 发送完一帧数据的标志,由硬件置位,软件清零
RI 接收中断标志位 接收完一帧数据的标志,由硬件置位,软件清零

进行单机通信了解上面的就够使用了,(空)的以后再补充

设置波特率

本人只用过工作方式1,所以这里只介绍工作方式1

波 特 率 = 2 S M O D ∗ ( T 1 溢 出 率 ) / 32 波特率 = 2^{SMOD}*(T1溢出率)/ 32 波特率=2SMOD∗(T1溢出率)/32

T 1 溢 出 率 = F o s c / ( 12 ∗ ( 256 − 初 值 ) ) T1溢出率 = Fosc/(12*(256-初值)) T1溢出率=Fosc/(12∗(256−初值))

T 1 初 值 = 256 − F o s c ∗ 2 S M O D / ( 12 ∗ 波 特 率 ∗ 32 ) T1初值 = 256 - Fosc*2^{SMOD}/(12*波特率*32) T1初值=256−Fosc∗2SMOD/(12∗波特率∗32)
公式中256哪里来:上面说到方式一的10位UART 是:1位起始位,8位数据位(二进制),1位停止位,所以计数最大值为
M = 2 8 = 256 M = 2^8 = 256 M=28=256

51单片机的串行接口介绍相关推荐

  1. 51单片机入门基础介绍

    51单片机入门基础介绍 文章目录 51单片机入门基础介绍 前言 常用元器件 发光二极管 数码管 LED数码管的显示方式 按键 定时计数器 串行口控制寄存器SCON 中断系统 中断源及中断请求 中断允许 ...

  2. 51单片机IO口介绍

    文章目录 前言 1.内存空间 2.引脚 2.1 复位引脚 2.2 晶振 2.3 第二引脚功能 2.4 30管脚ALE 2.5 EA 2.6 GPIO 前言 本文介绍51单片的管脚 1.内存空间 C51 ...

  3. 51单片机串口通讯介绍和实现

    串口通讯 前言 计算机是一种现代化的信息处理工具,它对信息进行处理并提供结果,其结果(输出)取决于所接收的信息(输入)及相应的处理算法. 随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功 ...

  4. 51单片机计算机实物焊接,基于51单片机的最小系统焊接图 浅谈单片机最小系统...

    本文主要是关于51单片机的相关介绍,并对基于51单片机的最小系统焊接进行了详尽的阐述. 单片机最小系统 单片机最小系统主要由电源.复位.振荡电路以及扩展部分等部分组成. 对于一个完整的电子设计来讲,首 ...

  5. 单片机小白学步系列(三) 偶遇51单片机

    单片机有很多种,比较常见的有51单片机,AVR,MSP430,PIC,STM32等.现在我将从比较简单易学的51单片机说起,带领大家进入单片机的精彩世界. 20世纪80年代美国Intel公司推出MCS ...

  6. 小白系列之51单片机的入门速成法

    51单片机的入门速成法 01-经典51内核资源全览浓缩图 02-重要外设特殊功能寄存器概览 03-程序开发流程与设计要点 04-三大外设的开发与可重用代码 05-应用程序设计入门一例通 01-经典51 ...

  7. 嵌入式开发之路,从51单片机开始

    关注.星标公众号,直达精彩内容 来源:技术让梦想更伟大 作者:李肖遥 嵌入式开发入门之路 我相信很多朋友第一次接触的单片机应该就是51单片机,8位的mcu,丰富的教程,可以做很多小玩意,让初学者基本掌 ...

  8. 超声波测距模块(51单片机)

    超声波测距模块(51单片机) 硬件介绍 1.使用场景 2. 工作原理 讲解代码 重点 1.定义引脚 2.定义时间 3.获取时间和距离 4.主函数 5.延时函数 结尾 硬件介绍 1.使用场景 超声波测距 ...

  9. 软件与计算机硬件加密,51单片机程序进行软件加密和硬件解密的方法

    由于固化在片外EPROM 里的单片机程序容易复制,所以,如不在技术上采取保护措施,则程序中所采用的处理方法易被他人分析仿制.对单片机程序进行加密是一种有效的保护措施,也是一项实用的技术.虽然本身带有E ...

最新文章

  1. 【Qt】设置窗口透明度
  2. 集中配置管理工具puppet安装使用
  3. mysql5.5.28安装详最后一个步骤时为啥一直转_mysql5.7.28下载、安装、登陆步骤详解...
  4. VC解决error C2065: 'timeGetTime' : undeclared identi
  5. Redis 主从集群搭建及哨兵模式配置
  6. ElasticSearch探索之路(三)分布式原理:分布式路由、存储、搜索原理
  7. Spring简化Java开发_spring如何简化java开发
  8. 为支持nginx高并发而修改的一些Linux内核参数
  9. vim globle
  10. 设置后台事务的执行人
  11. [C++STL] Priority Queue 介绍及源码分析
  12. ASK,OOK,FSK的联系和区别
  13. 前后端分离开发,如何定义各类错误码?
  14. 列表,元组,字典,集合的特点
  15. Jenkins插件配置国内镜像
  16. 如何降低计算机版本,电脑系统WIN10如何降级,还原老系统_win10专业版教程
  17. 量化投资中常用python代码分析(一)
  18. java里面的悲观锁和乐观锁
  19. 王者荣耀官网制作心得
  20. 将https安全证书导入jdk中

热门文章

  1. go开源项目整理-新手篇_一周的前5篇文章:您正在从事什么开源项目?
  2. 树莓派4B安装系统,配置远程连接和WiFi,更新源,更新中文支持,基本Linux命令,用Python输出hello和“你好,世界”
  3. RP Fiber Power 免费讲座---光纤激光器仿真设计
  4. MySql高级:explain及索引优化
  5. 最新 ICCV | 35个GAN应用主题梳理,最全GAN生成对抗论文汇总
  6. 个人网站5-网站SEO优化推广和增加百度谷歌收录
  7. 微信小程序实战教程1503---生成二维码
  8. 文献综述-家装风格自动分类技术综述
  9. Sun推出新的开放网络系统产品
  10. 程序员该如何去写自己的简历-代码而成的简历