当前位置: 首页 > backend >正文

关于汇编语言与接口技术——单片机串行口的学习心得

学习目标:

1.了解AT89S51单片机片内串行口的基本工作原理

2.掌握与串行口有关的特殊功能寄存器以及四种工作方式

一、串行口内部结构

        单片机串行口有两个独立的接收、发送缓冲器SBUF,属于特殊功能寄存器,可以同时发送、接收数据;发送缓冲器只能写不能读,接收缓冲器只能读不能写;有两个特殊功能控制器:SCON和PCON,具体内部结构图如下所示:

二、特殊功能寄存器

2.1 特殊功能寄存器PCON

        字节地址为87H,不能位寻址,基本格式如下所示:

2.2串行口控制寄存器SCON

        字节地址98H,可位寻址,位地址为98H-9FH,基本格式如下:

三、串行口的四种工作方式

        在SCON结构图中,D6和D7位为SM0,SM1,他们的取值分别对应着不同的工作方式。

当SM0=0,SM1=0时,串行口此时为方式0,表示是同步移位寄存器方式,用于扩展I/O口;

当SM0=0,SM1=1时,串行口此时为方式1,表示是8位异步收发,波特率可变,由定时器控制;

当SM0=1,SM1=0时,串行口此时为方式2,表示是9位异步收发,波特率为固定值;

当SM0=1,SM1=1时,串行口此时为方式3,表示是9位异步收发,但波特率可变,由定时器控制。

学习小结:

        在本节课中,我深入了解了单片机串行口的应用。通过对比学习,我发现单片机串行口的内容更加接近硬件操作,需要精确控制硬件。在单片机串行口中,我学习了如何通过串行口进行数据传输,如何设置波特率、数据位、停止位等参数,以及如何使用串行口进行通信。通过实验,我验证了串行口的通信原理,并且了解了如何使用简单汇编语言程序来控制硬件。

http://www.xdnf.cn/news/7638.html

相关文章:

  • thread 的mutex优化
  • 基于FFT变换的雷达信号检测和参数估计matlab性能仿真
  • 每日两道leetcode(今天开始刷基础题模块——这次是之前的修改版)
  • ES 调优帖:关于索引合并参数 index.merge.policy.deletePctAllowed 的取值优化
  • 数字展厅是什么?怎样实现数字展厅的落地?
  • matlab编写的BM3D图像去噪方法
  • SpringBoot-4-Spring Boot项目配置文件和日志配置
  • 电子制造企业智能制造升级:MES系统应用深度解析
  • centos7安装mysql8.0
  • Android trace presentFence屏幕显示的帧
  • sgRNA的靶基因基因组如何获得? for 下游的 T7E1验证
  • 不同的二叉搜索树 II:动态规划与递归构造
  • JavaScript作用域和作用域链
  • web开发全过程总结
  • 创建一个使用 GPT-4o 和 SERP 数据的 RAG 聊天机器人
  • deepseek梳理java高级开发工程师es面试题
  • 1.3 C++之变量与数据类型
  • Vue百日学习计划Day43-45天详细计划-Gemini版
  • Jenkins+Docker+Harbor快速部署Spring Boot项目详解
  • sv数据格式转换
  • 【氮化镓】低剂量率对GaN HEMT栅极漏电的影响
  • 2025年第十一届传感器、机电一体化和自动化系统国际学术研讨会(ISSMAS 2025)
  • 景区卡机数据报表-跨服务查看数据教程——诸天万界相连—仙盟创梦IDE
  • docker容器知识
  • 宿州金博学校开展防震演练:夯实安全根基,守护校园平安
  • java redis set 集合操作中 如何有效移除自定义对象
  • 深信服golang面经
  • 【Python 算法零基础 4.排序 ③ 插入排序】
  • 零基础入门Selenium自动化测试:自动登录edu邮箱
  • waitress 简介