SBUF 数据缓冲寄存器 这是一个可以直接寻址的 串行口 专用 寄存器 。有朋友这样问起过“为何在 串行口 收发中,都只是使用到同一个寄存器 SBUF ?而不是收发各用一个寄存器。”实际上 SBUF  包含了两个独立的寄存器,一个是发送寄存,另一个是接收寄存器,但它们都共同使用同一个寻址地址-99H。CPU 在读 SBUF  时会指到接收寄存器,在写时会指到发送寄存器,而且接收寄存器是 双缓冲 寄存器,这样可以避免接收中断没有及时的被响应,数据没有被取走,下一帧数据已到来,而造成的数据重叠问题。发送器则不需要用到 双缓冲 ,一般情况下我们在写发送程序时也不必用到发送中断去外理发送数据。操作 SBUF 寄存器的方法则很简单,只要把这个99H 地址用关键字 sfr 定义为一个 变量 就可以对其进行读写操作了,如sfr SBUF = 0x99;当然你也可以用其它的名称。通常在标准的reg51.h 或at89x51.h 等头文件中已对其做了定义,只要用#include 引用就可以了。

SBUF数据缓冲寄存器相关推荐

  1. 串行口数据缓冲寄存器 SBUF 之 初步了解

    c52系列的SBUF 有两个缓冲器 写SBUF 的操作完成待发送数据的加载,读SBUF 的操作可获得已接收到的数据. 两个操作分别对应两个不同的寄存器,一个是只写寄存器,一个是只读寄存器 在所有的串行 ...

  2. Keil C51教程

    第三课 C51数据类型 作者:    来源:本站原创    点击数: <script src="http://www.51hei.com/Article/GetHits.asp?ID= ...

  3. 单片机c语言中sbuf的定义,SBUF的详细介绍!(51单片机)

    满意答案 dianzicidian3 推荐于 2018.02.23 SBUF---即串口数据缓冲寄存器 MCS-51串行口有两个在物理上独立的串行数据缓冲寄存器SBUF, 这两个缓冲寄存器共用一个地址 ...

  4. 软考笔记——1.1、计算机硬件组成、数据的进制转换、校验码

    一.计算机硬件组成 计算机的硬件基本系统由五部分组成:运算器.控制器.存储器.输入设备(如鼠标键盘).输出设备(如显示器) 存储器分为内部存储器(即内存.容量小,速度快,临时存放数据)和外部存储器(即 ...

  5. 【51单片机快速入门指南】3.3:USART 串口通信

    目录 快速使用 硬知识 串行口相关寄存器 串行口控制寄存器SCON和PCON 串行口数据缓冲寄存器SBUF 从机地址控制寄存器SADEN和SADDR 与串行口中断相关的寄存器IE和IPH.IP 串行口 ...

  6. STC15系列的UART串口基础

    现在对串口的理解很浅,仅仅停留在会用的地步-- 梳理一下大致用法 首先是串口的控制寄存器 可以看到该寄存器是可以进行位寻址的 我们主要操作的有SM0.SM1(控制串口的工作方式) 一般都采用方式1,并 ...

  7. 80C51引脚功能及片内RAM、片内ROM简介

    一. 80C51系列单片机引脚图及逻辑符号,为标准的40脚DIP封装,如下图: Pin1-Pin8为P1口,内部带上拉电阻的8位准双向IO口 Pin9为复位口,高电平有效(持续两个机器周期). Pin ...

  8. 大二单片机笔记,串口通信代码【郭天祥】【700字】【勿笑】【原创】

    文章目录 工作时,串口通信理解(最新) 大二时,串口通信理解 串口助手 代码部分 工作时,串口通信理解(最新) 大二时,串口通信理解 /*cpu,串口助手,单片机,根据程序得知输入X之前,我之前理解的 ...

  9. 单片机与 PC 机串口通信实验

    实验原理 51 单片机的串行口是一个可编程的全双工的通信接口,具有 UART(通用异步收发器)的全部功能,能同时进行数据的发送和接收,也可以作为同步移位寄存器使用.51 单片机的串行口主要有两个独立的 ...

最新文章

  1. (原創) 标准的makefile写法 (C/C++)
  2. C++中的c_str()函数用法
  3. js 点击button切换颜色_ThingJS 和three.js开发示例对比,让开发早点下班回家!3D 可视化...
  4. linux下文件颜色说明
  5. python 多维list 排序_一行代码的优雅| Python列表生成式
  6. Kava将于下午2时重新启动Kava Chain
  7. 使用docx4j生成数据库字典文档
  8. java语言特点概述
  9. 合并报表和汇总报表之如何合并报表
  10. Deep Light Enhancement without Paired Supervision (非配对数据监督学习用于低曝光图像增强)
  11. 浅谈RabbitMQ的基石—高级消息队列协议(AMQP)
  12. 不需要登录微信,发送消息python
  13. MySQL基础教程【1】数据库简介
  14. toLua:简洁的使用说明
  15. 牛客编程巅峰赛S1第3场 - 黄金钻石 A.简单题 B.dfs C.并查集
  16. QGC地面站对PX4无人机速度进行限制
  17. 防紫外线衣服,要求工业UV灯紫外线防护用,紫外线防护服UV涂层,深圳沃客密科技
  18. 大数据和云计算技术周报(第115期)
  19. 树莓派拍照命令——raspistill
  20. win10系统专用DVD播放器安装的方法--win7w.com

热门文章

  1. 一度智信电商:店铺转化率太低?
  2. android pcm 音量_Android中实时获取音量分贝值详解
  3. IT痴汉的工作现状12-叶志坚离职了
  4. 自动摘要生成(三):词向量相似度与有效词含量
  5. 读书笔记:《谁说菜鸟不会数据分析-入门篇》第1-4章
  6. java取拼音首字母
  7. 【前端基础】12.CSS 基础知识学习——基本语法结构
  8. TensorFlow基础(1)特点安装基本用法
  9. openlayers 绘制动态迁徙线、曲线
  10. matlab升幂降幂排列,升幂排列与降幂排列