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时的波特率加倍。

总结

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开启防火墙web服务器访问权限 开启必要端口共外部使用

开启防火墙开启必要端口共外部使用 控制面板>> win 防火墙 >>高级设置 >> 入站规则

WeX5 3.8开发工具之蓝牙打印(全流程记录不是最全,胜似最全)

技术分享 记录踩过的坑和别的大佬没有叽歪的点 开始做蓝牙打印看到网上很多做混合开发 和安卓开发,ios开发的例子,插件等等版本大同小异,并不是像其他博客上所说的那么简单,[下载插件,无需改动,连接打印开始,图片为证],没那么简单.往往困扰我们没有进行下去的是细节,那么 为…

扫一扫闪退的可能性之一[wex5开发]

这两个插件不可以同时存在 因为这一句插件的引入导致整个项目搜索了一下午,什么活都没干 蓝牙打印时 一般会有扫码的功能 并用 所以..... require("cordova!com.justep.cordova.plugin.barcodescanner");//require("cordova!phonegap-plugin-barcodescanner&…

jeecg 查看 页面 父子表 横向滚动条效果 官方被禁用

关键代码注释替换 if (tabs) {//增加width属性&#xff0c;fit属性之前写死&#xff0c;改为由页面设定&#xff0c;不填默认truesb.append("<div id\"" id "\" tabPosition\"" tabPosition "\" borderflase style\"…

JEECG 缓存用法

1 .配置文件 ehcache.xml 添加 2.Controller 手动更新接口数据 启动执行接口 声明接口 实现接口

JeeCG - <t:choose/> 标签用法 输入框控件 查询输入

页面 <td class"value"><!-- <input id"mateCode" name"mateCode" type"text" maxlength"32" style"width: 150px" class"inputxt" datatype"*" ignore"checked" /&…

关于js函数未定义not defined引发的感想

越是简单的问题往往越会被忽略,很多时候我们的代码都是copy , 粘贴的时候未修改对应函数名称,有时修改的大小写都导致我们犯错,一次一次的核对,自我感觉没有问题 现在的编程变得简便,牛逼的开发人员手上,可用的代码块宝典不尽其数,复制就显得尤为重要,一段可克隆的代码,在你我…

ORA-06550 PLS-00172 字符串太长 超过3W 处理方式

问题 描述 帖子 通过sql插入clob数据(数据库对应字段类型为clob), 在执行insert语句时(待插入的字符串有2W多), 总是报错如下: 不是说clob支持4G大小么? 有些资料说是sql本身的长度不能超过4000字符串? 但是类似博客类型的内容字段, 不是很正常就成千上W么 以下是问题补充&…

JEECG datagrid 页面刷新reloadTable

reloadTable 方法在进入页面执行函数触发刷新 多余10条分页状态是刷新失效,执行删除操作后刷新恢复有效, 故 使用datagrid("reload") 方法刷新 比较靠谱 reloadTable();$(#dbPassBoxList).datagrid(reload);//刷新 需要这两句联用 页面才会刷新

NC 633 BP类集锦 根据包名定位modules文件夹

ic 调拨出入 4Y 4E 采购入库 45 其他出入库 4I(4i) 4A 销售出库 4C so 销售订单 30 销售发货 4331 pu 采购订单 21 其他出入库 插入触发BP类路径 nc.impl.ic.m4i.action.InsertAction

vue+播放rtsp流视频监控

vue播放rtsp流视频监控-海康摄像头使用工具vuejsencryptjsWebControl思路解决办法1:弹出新页面vue代码解决办法2:采用组建的方式使用工具vuejsencryptjsWebControl 注:使用海康demo,下载地址:https://open.hikvision.com/download/5c67f20bb254d61550c2f63e?type10 需要注册&…

浏览器播放rtmp

rtmp播放 文章目录rtmp播放1、rtmp测试路径地址2、video.js播放rtmp3、ezuikit播放rtmp1、rtmp测试路径地址 https://www.cnblogs.com/yeminglong/p/14704789.html 2、video.js播放rtmp 注意&#xff1a; 1.如果写在html本地运行&#xff0c;请使用http-server启动&#xff…

网页打开微信公众号关注界面

代码 <a href"https://mp.weixin.qq.com/mp/profile_ext?actionhome&__biz微信公众号biz号码&scene110#wechat_redirect">进入公众号</a>例如&#xff1a;<a href"https://mp.weixin.qq.com/mp/profile_ext?actionhome&__bizMjgz…

海康、大华网络摄像机RTSP URL格式组成及参数配置

经常有开发者咨询我们关于海康、大华网络摄像机RTSP url拼接规则和相关参数配置&#xff0c;虽然很简单&#xff0c;考虑到资料不全&#xff0c;写个博客记录下&#xff1a; 1. 海康摄像机&#xff1a; 在IE浏览器输入网络摄像机的IP地址&#xff0c;输入配置的用户名、密码&…

直播系统中使用SEI传输用户自定义数据方案讨论

在直播系统中&#xff0c;除了直播音视频之外&#xff0c;有时候还想从主播端发布文本信息等&#xff0c;这些信息可以不通过视频传输通道发送给用户播放端&#xff0c;但如果传输的数据想和视频保持精准同步&#xff0c;那最好的办法就是这些信息和视频数据打包在一起传输, 通…

安卓端/iOS端如何播放4K分辨率的RTMP/RTSP流

关于4K分辨率 4K分辨率即40962160的像素分辨率&#xff0c;它是2K投影机和高清电视分辨率的4倍&#xff0c;属于超高清分辨率。在此分辨率下&#xff0c;观众将可以看清画面中的每一个细节&#xff0c;每一个特写。影院如果采用惊人的40962160像素&#xff0c;无论在影院的哪个…

干货:如何实现RTSP推送H.264、RTSP推送H.265(hevc)

rtsp推送相关的资料和测试软件比较少&#xff0c;本文介绍rtsp推送相关信令和测试效果&#xff1a; 1. rtsp推送流程. 主要分两部分&#xff1a;第一部分先发送信令&#xff1b;第二部分发送rtp包。 信令流程: 1.1 先发送OPTIONS, OPTIONS比较常用&#xff0c;就不做详细说明…

如何支持RTSP播放H.265(HEVC)流

随着H.265的普及&#xff0c;越来越多的开发者希望大牛直播SDK能支持低延迟的RTSP H.265播放&#xff0c;并分享相关经验&#xff1a; 实现思路&#xff1a; 对rtsp来说&#xff0c;要播放h265只要正确解析sdp和rtp包即可. 下面对这些相关内容做一些介绍. 1. H265 Nal Unit …

直播协议的选择:RTMP vs. HLS

前言 随着直播业务的兴起&#xff0c;越来越多的直播平台开始涌现&#xff0c;这火热的程度好像一个应用不带上直播业务出来都不好意思跟人打招呼。想要做一个直播业务&#xff0c;主要包括三个部分&#xff1a;采集推流端、流媒体服务端、播放端。这里不多说&#xff0c;就主…

Flutter下实现低延迟的跨平台RTSP/RTMP播放

为什么要用Flutter&#xff1f; Flutter是谷歌的移动UI框架&#xff0c;可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。在全世界&#xff0c;Flutter正在被越来越多的开发者和组织使用&#xff0c;并且Flutter是完全免费、开源的。 …