51单片机相关寄存器

前言

单片机复习的时候对应寄存器的记忆感觉很混乱,这里进行一下整理,后面的单词是我用来辅助记忆的,可能并不是表示原本的含义。

P3口的第二功能

0RXD

串行数据输入口

1TXD串行数据输出口
2INT0外部中断0输入
3INT1外部中断1输入
4T0定时器0外部计数输入
5T1定时器1外部计数输入
6WR外部数据存储器的写选通控制信号
7RD外部数据存储器的读选通控制信号

程序状态字寄存器(PSW)

D7D6D5D4D3D2D1D0
PSWCyAcF0RS1RS0OVPD0H
  • Cy进位标志位:也可以写成C。有进位/借位,则Cy=1;否则,Cy=0.
  • Ac辅助进位标志位:用于在BCD码运算时进行十进位调整,当D3位D4位产生进位或借位,Ac=1;否则,Ac=0。
  • F0用户使用的标志位:可用指令来使它置“1”或清零,也可以用指令来测试该标志位,根据测试结果控制程序的流向。
  • RS1,RS04组工作寄存器区选择控制位1和位0:用来选择片内RAM区中的4组工作寄存器区中的某一组为当前工作寄存区。
  • OV溢出标志位:用来指示运算结果是否产生溢出。如果结果产生溢出,OV=1;否则,OV=0。
  • P奇偶标志位,累加器A中“1”的个数是奇数,P=1,否则,P=0.
RS1RS04组寄存器
010区(片内RAM 00H~07H)
011区(片内RAM 08H~0FH)
102区(片内RAM 10H~17H)
113区(片内RAM 18H~1FH)
RS1、RS0与4组工作寄存器区的对应关系

中断源的中断入口地址

中断源

入口地址

外部中断00003H
定时器T0000BH
外部中断10013H
定时器T1001BH
串行口0023H

AUXR寄存器

D7D6D5D4D3D2D1D0
AUXRWDIDLEDISRTODISALE8EH

  • DISRTO:禁止/允许看门狗定时器(WDT)溢出时的复位输出。1:禁止WDT溢出时的复位输出;0:WDT溢出时,允许向RST引脚输出一个高电平脉冲,使单片机复位。
  • WDIDLE:WDT在空闲模式下的禁止/允许位。1:禁止WDT在空闲模式下计数;0:允许WDT在空闲模式下计数。

TCON(定时器/计数器控制寄存器)

D7D6D5D4D3D2D1D0
TCONTF1TR1TF0TR0IE1IT1IE0IT088H
位地址8FH8DH8BH8AH89H88H

  • TF:片内定时器/计数器T的溢出中断请求标志位。启动计数后,从初值开始加1计数,当计数溢出时,又硬件自动为TF置“1”,向CPU申请中断。CPU响应TF中断时,标志位由硬件自动清零,同时也可以用软件来清零。(Flag)
  • IE:外部中断请求的中断请求标志位(enable)
  • IT:选择外部中断请求的中断方式,0为电平触发方式,1为负跳变触发方式。
  • TR:计数运行控制位。1:启动定时器/计数器计数的必要条件;0:停止。软件置1或者清零。

SCON(串行口控制寄存器)

D7D6D5D4D3D2D1D0
SCONSM0SM1SM2RENTB8RB8TIRI98H
位地址9FH9EH9DH9CH9BH9AH99H98H
  • SM0、SM1:串行口工作方式选择位。
  • SM2:多机通信控制位。
  • REN:允许串行口接收位(由软件置“1”或清零),1:允许;0:禁止。
  • TB8:发送的第9位数据。
  • RB8:接收的第9位数据。
  • TI:串行口发送中断请求标志位。当CPU将1字节的数据写入串行口的发送缓冲器SBUF时,就会启动一帧串行数据的发送,每发送完一帧串行数据后,硬件把TI中断请求标志位自动置“1”,发送之后需要在中断服务程序中用指令对其清零。TI必须由软件清零。(transmit)
  • RI:串行口接收中断请求标志位。在串行口接收完一个串行数据帧,硬件自动把RI中断请求标志位置“1”,需要在中断服务程序中用指令对其清零。RI必须由软件清零。(receive)
SM0SM1功能说明
00方式0,同步移位寄存器方式(用于扩展I/O口)
01方式1,8位异步收发,波特率可变(由定时器控制)
10方式2,9位异步收发,波特率为fosc/64或fosc/32
11方式3,9位异步收发,波特率可变(由定时器控制)

IE(中断允许寄存器)

D7D6D5D4D3D2D1D0
IEEAESET1EX1ET0EX0A8H
位地址AFHACHABHAAHA9HA8H
  • EA:中断允许总开关控制位。1:允许;0:屏蔽。(enable all)
  • ES:串行口中断允许控制位。1:允许;0:屏蔽。(enable serial)
  • ET:定时器/计数器的溢出中断允许控制位。1:允许;0:屏蔽。(enable timer)
  • EX:外部中断中断允许控制位。1:允许;0:屏蔽。(enable external)

IP(中断优先级寄存器)

D7D6D5D4D3D2D1D0
IPPSPT1PX1PT0PX0B8H
位地址BCHBBHBAHB9HB8H
  • PS:串行口中断优先级控制位,1:高优先级;0:低优先级。(priority serial)
  • PT:定时器T中断优先级控制位,1:高优先级;0:低优先级。(priority timer)
  • PX:外部中断中断优先级控制位,1:高优先级;0:低优先级。(priority external)

同级中断的查询顺序(中断级别):外部中断0>T0溢出中断>外部中断1>T1溢出中断>串行口中断。

TMOD(定时器/计数器工作方式存储器)

D7D6D5D4D3D2D1D0
TMODGATEC/TM1M0GATEC/TM1M089H
T1方式字段T0方式字段
  • GATE:门控位,1:由外中断引脚(或INT1)INT0上的电平与运行控制位TRx两个条件共同控制;0:仅由控制位TRx(x=0,1)来控制。
  • M1、M0:工作方式选择位。
  • C/T:计数器模式和定时器模式选择位。1:计数器工作模式,对系统时钟12分频后的内部脉冲进行计数;0:计数器工作模式,计数器对外部输入引脚T0或T1的外部买重(负跳变)计数。
M1M0工作方式
00方式0,为13位定时器/计数器
01方式1,为16位定时器/计数器
10方式2,为8位的常数自动重新装载的定时器/计数器
11方式3:,仅适用于T0,此时T0分成2个8位计数器,T1停止计数

PCON

D7D6D5D4D3D2D1D0
PCONSMODGF1GF0PDIDL87H

SMOD=1时要比SMOD=0时的波特率加倍。

总结

本文主要是用来区分不同寄存器的大概功能,所以不是很详细,写这个主要是给自己记忆的,所以有点水。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/269947.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

spring之资源操作:Resources

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需…

等级保护的基本要求(一)

目录 等级保护的标准定位 其他标准的关系 标准适用范围 标准编写思路 描述模型 基于安全保护能力 能力目标 第一级安全保护能力 第二级安全保护能力 第三级安全保护能力 第四级安全保护能力 描述模型-管理要求特点 描述模型-覆盖范围特点 等级保护的标准…

【汇编先导】-- 2

汇编先导 6. 寄存器 存储数据:CPU > 内存 > 硬盘(固态、机械) CPU还可分为: 32位CPU 8 16 32 64位CPU 8 16 32 64(增加了寻址能力) 通用寄存器 # 32位的通用寄存器只有8个 # 可以在任意软件的底层看到 # 通用寄存器可以存储任何值存值的范围…

ES6-11

一、ES6 js的异步和同步,js是单线程语言: 同步:加入主线程,按顺序执行,即上一个同步任务结束后,本任务跟着执行。 异步:加入任务队列,等待主线程上任务都执行完毕,请求主…

Ubuntu 常用命令之 date 命令用法介绍

📑Linux/Ubuntu 常用命令归类整理 date命令在Ubuntu系统中用于显示或设置系统的日期和时间。 date常见的参数 -d, --dateSTRING:显示STRING指定的时间,而不是当前时间。-u, --utc, --universal:显示或设置协调世界时间。-R, --…

《C++避坑神器·二十五》简单搞懂json文件的读写之遍历json文件读写

json.hpp库放在文章末尾 1、遍历json文件读写 (1)插入新键值对到json之情形1 原来json文件如下所示: {"Connection": {"IpAddress": "192.168.20.1","Rock": 0,"Solt": 1}, "Data…

【Java注解的作用是什么?】

🍁Java注解的作用是什么? 🍁典型解析🍁扩展知识仓🍁什么是元注解🍁Retention🍁Target🍁Documented🍁Inherited 🍁典型解析 Java 注解用于为 Java 代码提供元数…

W5500-EVB-Pico评估版介绍

文章目录 1 概述2 板载资源2.1 硬件规格2.2 硬件规格2.3 工作条件 3 参考资料3.2 原理图3.3 尺寸图 (单位 : mm)3.4 参考例程 4 硬件协议栈优势 1 概述 W5500-EVB-Pico是基于树莓派RP2040和完全硬连线TCP/IP控制器W5500的微控制器开发板-基本上与树莓派Pico板相同,但…

博客摘录「 Apollo安装和基本使用」2023年11月27日

常见配置中心对比 Spring Cloud Config: https://github.com/spring-cloud/spring-cloud-configApollo: https://github.com/ctripcorp/apolloNacos: https://github.com/alibaba/nacos 对比项目/配置中心 spring cloud config apollo nacos(重点) 开源时间 2014.9 2016…

逻辑运算加法器

前言 逻辑门本质上操作的是单个二进制数,通过高低电压或者有无信号来表示,并且,因为二进制数的原因,一个数字,我们可以通过二进制数来表示,整数可以精确表示,浮点数可以近似表示 本篇文章使用逻…

【前端查漏补缺】每日10题 2023-12-25

1. 实现lodash _get方法 _.get 是 Lodash 库中的一个方法,用于按照给定的路径从对象中获取值。它是一种安全的方式,可以避免在获取嵌套属性时出现的空指针错误。 _.get 方法的语法如下: _.get(object, path, [defaultValue])参数说明&…

python dash call_back 多output 7

效果 代码 # 导入Dash库及其相关组件,用于构建交互式Web应用 from dash import Dash, dcc, html, Input, Output, callback# 定义一个外部样式表,用于美化应用界面 external_stylesheets [https://codepen.io/chriddyp/pen/bWLwgP.css]# 创建一个D…

Jupyter Notebook的安装及在网页端和VScode中使用教程(详细图文教程)

目录 一、Jupyter Notebook1.1 组成组件1.2 优点1.3 常规用途 二、安装及使用2.1 网页端2.1.1 安装Jupyter Notebook2.1.2 检验是否安装成功2.1.3 启动Jupyter Notebook2.1.4 使用Jupyter Notebook 2.2 VScode中安装及使用2.2.1 安装Jupyter2.2.2 使用Jupyter 三、常用命令3.1 …

有没有简单好用的仓库管理系统?

“我是一家小型加工制造企业,希望使用一款免费的仓库管理软件管理下仓库物资,要上手比较快,有各类报表统计功能!同时有客服人员可以答疑。PS:最好有配套APP就最方便了。” 稍微总结一下仓库管理系统的需求—— 免费的仓…

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问

开源自托管导航页配置服务Dashy本地搭建结合内网穿透远程访问 简介1. 安装Dashy2. 安装cpolar3.配置公网访问地址4. 固定域名访问 简介 Dashy 是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。你可以将自己常用的一…

220v电源转换12v和24v用什么芯片

问:将220V电源转换为12V和24V - 使用什么芯片? 答:常用于将220V电源转换为12V和24V的芯片是AH8669和AH8665。 问:AH8669芯片提供了什么特点? 答:AH8669芯片适用于最大电流为700mA的应用。它内置了MOSFET…

Text2SQL学习整理(五)将Text-to-SQL任务与基本语言模型结合

导语 上篇博客:Text2SQL学习整理(四)将预训练语言模型引入WikiSQL任务简要介绍了两个借助预训练语言模型BERT来解决WIkiSQL数据集挑战的方法:SQLOVA和X-SQL模型。其中,借助预训练语言模型的强大表示能力,S…

maven下载jar包失败

配置国内镜像 设置国内的仓库,比如: <!--阿里仓库--><mirror><id>alimaven</id><name>aliyun maven</name><url>https://maven.aliyun.com/repository/public/</url><mirrorOf>central</mirrorOf></mirror>…

C++11(上):新特性讲解

C11新特性讲解 前言1.列表初始化1.1{ }初始化1.2std::initializer_list 2.类型推导2.1 auto2.2 typeid2.3 decltype 3.范围for4.STL的变化4.1新容器4.2容器的新方法 5.右值引用和移动语义5.1 左值引用和右值引用5.2 左值引用与右值引用比较5.3 右值引用的使用场景5.4 右值、左值…

张驰咨询:企业提质增效的关键:掌握六西格玛设计(DFSS)的核心法则

在当今快节奏、变革迅速的商业世界中&#xff0c;企业面临的最大挑战之一是如何兼顾成本效益与高品质输出。六西格玛设计&#xff08;DFSS&#xff09;方法论不仅响应了这一挑战&#xff0c;而且提供了一个综合解决方案&#xff0c;将顾客需求和企业目标完美融合&#xff0c;并…