pixiv手机app的介绍,pixiv手机网页版登录入口
2023-07-21
很多朋友对单片机寄存器什么意思,单片机的寄存器类型及操作教程不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。
大家都觉得电脑无所不能,在我们的生活中发挥了很大的作用,尤其是在学习单片机的过程中。学习计算机可以教会我们分析问题、解决问题,而学习单片机可以帮助我们更好地理解计算机是如何按照我们的思路解决问题的。本文带你了解寄存器,它将伴随你学习单片机的全过程。寄存器是连接硬件和软件的重要纽带。计算机的任何功能都离不开寄存器。CPU也有寄存器。
总线通信,通过注册,内存分页等等都是基于寄存器的。在电子洞和丰富多彩的计算机世界之间有更多的寄存器,如链接。它们看起来很复杂,但却很清晰。即使一夜之间所有的计算机突然消失,人类也可以从电子管和穿孔纸带开始,一层一层地建造一个计算机世界。我们所知道的只是这个庞大系统中的沧海一粟。
1.什么是语域
寄存器是CPU内部的一种存储器,分为通用寄存器和专用功能寄存器(8086也细分为专用功能寄存器)。通用寄存器,顾名思义,就是通用的。它们可以存储操作数、运算结果、内存地址和其他数据。用C语言编程时,编译器一般负责安排通用寄存器的使用,不直接接触它们。
特殊功能寄存器有特定的功能,有些作用于CPU,比如PC存储下一条指令的地址,SP在内存中记录栈顶的位置,有些与IO模块连接,MCU程序通过这些寄存器控制各种外设。
我们平时用的MCU是atmega324pa,封装种类很多,引脚也不一样,但是GPIO引脚有32个。因为AVR架构是8位字长,CPU一次处理1位数据和8位数据的时间是一样的。32个引脚被组织成4个端口,即PA、Pb、PC和PD。在微控制器和微控制器的AVR架构中,每个端口有三个寄存器控制数字信号IO,分别是portx、ddrx和PINX。这里的x是a,b,c或者d。
由于这四个端口在数字IO方面是相同的,所以我们将它们组合在一起。因此,对于每个引脚Pxn,有三个位portxn、ddxn(不带R)和pinxn来控制其数字io。
Ddxn控制引脚方向:ddxn为1时,输出Pxn当ddxn为0时,输入Pxn。Pxn输入时,如果portxn为1,此引脚通过上拉电阻连接到VCC;否则,该引脚被挂起。输出Pxn时,如果portxn为1,则引脚输出高电平;否则,引脚输出低电平。pinxn的值是Pxn引脚的电平。如果向pinxn写入1,则portxn的值将反转。
寄存器中有很多细节,比如MCUCR寄存器中PUD位的作用,复位后寄存器的值,输入/输出切换的方法,读取管脚电平的延迟,未连接管脚的处理方法。2.什么是微控制器寄存器?
寄存器是内存层次结构的顶层,也是系统获取操作数据的最快途径。寄存器通常以其能容纳的位数来衡量,例如,“8位寄存器”或“32位寄存器”。寄存器现在实现为寄存器文件,但也可能在几台机器上使用单独的触发器、高速核心存储器、薄膜存储器等方式实现。
寄存器通常用来指一组可以由指令的输出或输入直接索引的寄存器。称它们为“架构寄存器”更合适。例如,x86指令集定义了一组八个32位寄存器,但是实现x86指令集的CPU可以包含八个以上的寄存器。寄存器是CPU的内部组件。寄存器的读写速度非常快,所以寄存器之间的数据传输非常快。
3.MCU寄存器的类型3.1累加器累加器A是微处理器中最常用的寄存器。它在算术和逻辑运算中有双重作用:用于在运算前保存一个操作数;运算后,用于保存和、差或逻辑运算的结果。3.2数据寄存器DR
数据寄存器是通过数据总线向存储器和输入/输出设备发送(写入)或读取(读取)数据的临时存储单元。它可以保存正在解码的指令、发送到内存进行存储的数据字节等等。3.3指令寄存器IR和指令解码器ID
指令包括操作码和操作数。指令寄存器用于存储当前正在执行的指令。当一条指令被执行时,它首先被从存储器取入数据寄存器,然后被传送到指令寄存器。当系统执行给定的指令时,必须对操作码进行解码,以确定所需的操作,指令解码器负责这项工作。指令寄存器中操作码字段的输出是指令解码器的输入。3.4程序计数器PC
PC用于确定下一条指令的地址,以保证程序能连续执行,所以常被称为指令地址计数器。在程序开始执行之前,必须将程序第一条指令的内存单元地址(即程序的第一个地址)发送给PC,使其始终指向下一条要执行的指令的地址。3.5地址寄存器AR
用于保存当前CPU访问的内存单元的地址。由于内存和CPU的运行速度存在差异,所以必须使用地址寄存器来保存地址信息,直到内存的读/写操作完成。地址寄存器(AR)用于保存当前CPU访问的内存单元的地址。因为内存和CPU的运行速度存在差异,所以必须使用地址寄存器来保存地址信息,直到内存的读/写操作完成。
数据寄存器DR用于临时存储要在微处理器和存储器或输入/输出接口电路之间传输的数据。地址寄存器AR和数据寄存器DR还在微处理器的内部总线和外部总线之间起到隔离和缓冲的作用。
4.单片机寄存器的使用教程
要使用寄存器,需要写#include,然后就可以使用PORTA、DDRB、PINC等寄存器。它们是宏定义。不必探索它们是如何扩展的。只需要知道这些宏是可以读、赋值和位操作的,就像uint8_t类型变量一样。但是像PORTA0SumDDB7宏定义这样的东西并不代表寄存器上的位。它们实际上是字面常量,比如PORTAx寄存器表示寄存器PORTA的第x位(0为最低位,7为最高位),其值为X。
因此,直接复制这些宏是不正确的(不仅意思不对,编译也不会通过)。
在开发板的库函数中提供包含多个位操作的宏函数。可以拿出存储器的手册来,看看后面是怎么实现的。
让我们举个例子,点亮一个LED,首先打开红色LED。原理图第2页左上角红色LED通过电阻与网络LED0相连,第1页LED0与单片机PC4引脚相连,所以我们需要让PC4脚输出高电平。回到三个寄存器的功能。输出高电平要求ddxn和portxn同时为1。我们把X和N分别用C和4取进去,也就是我们希望ddc4和portc4为1。
如果寄存器的一个位置为1,则set_bit实现。它需要两个参数,要操作的整数变量和表示第一个数字的整数。将ddc4设置为1应该写入set_bit(DDRC,4);4可以用DDC4替换,就是这样定义的。同理,portc4可以设置为1。点亮红色LED的整个过程如下:
接下来是存储器的数字输入。使用第一个按键相关的例子,保持LED状态与按键一致,即按下点亮。
要读取寄存器中的一位,可以使用read_bit。如果引脚上的电平为高电平,则read_bit的运算结果不为0(但不一定是布尔值1)。注意按键时引脚电平是低的,所以读取引脚电平的结果是你是否按下该键。
原理图中,key的一端接btn0网络,再接单片机的PA4引脚。所以按键是否按下应该写成:read_bit(PINA,4)。
引脚应在读取前配置为输入。虽然是reset后默认输入的,在这个例子中没有必要给dda4写0,但是写清楚是一个好习惯,让看这段代码的人(可能是别人也可能是自己)明白PA4是输入。对于porta4,由于该引脚外接了上拉电阻,因此无需使能内部上拉电阻。
结合按键动作的知识,应该知道如何直接通过寄存器操作来判断按键动作。值得注意的是,这些程序都不需要在项目属性中将libee1库添加到链接器。虽然代码使用,但它们都是宏定义,独立于链接器。
5.关于单片机寄存器的常见问题
5.1什么是单片机寄存器?
简单地说,寄存器是一种内存。通常寄存器位于CPU 或MCU(微控制器)内,非常靠近算术单元或直接连接到各种I/O 端口。由于这个位置或特殊设计,与其他类型的存储器相比,寄存器在读/写速度方面要快得多。
5.2单片机寄存器有什么作用?
寄存器的单片机(计算机)的存储单元,是存取数据较为方便、快速地方寄存器常用于存放使用比较频繁的数据,再参与运算,都很容易。
5.3哪些计算机使用单芯片处理器?
单芯片云计算机(SCC) 是英特尔实验室开发的一种实验性微处理器,SCC 微处理器包括集成在单个硅芯片上的48 个内核,SCC 具有双核SCC 磁贴、内存控制器和24 路由器网状网络。
5.4什么是单芯片CPU?
大部分微机的ALU和控制单元都是在一块硅片上组合制造的。大多数现代CPU 都是微处理器,这意味着它们包含在单个集成电路(IC) 芯片中。
以上就是单片机的寄存器类型及操作教程的介绍了,单片机一种集成电路芯片,广泛用于各大行业中。单片机寄存器其实就相当于一个变量,只不过这个变量在固定的地址,有一个特殊的名称(当然也不强制)。初学者对寄存器的操作比较困难的原因不是汇编语言或C语言使用的不熟,而是对寄存器的陌生。
单片机中存储器的资源是非常宝贵和有限的,任何产品都有使用说明书,要想最好的使用一款产品也是去阅读说明书。单片机或者芯片的说明书就是数据手册。数据手册中往往都是对寄存器如何操作的描述,只不过要耐下心来一点一点的去理解去消化手册所介绍的功能,这样才能用好。
审核汤梓红
以上知识分享希望能够帮助到大家!
版权声明:本站所有作品图文均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系我们
推荐阅读
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
2023-07-21
栏目热点
pixiv手机app的介绍,pixiv手机网页版登录入口
LilyGoT手表键盘C3迷你电脑套件
索泰ZBOXEdgeCI342迷你电脑正式上市
谷歌在最新的视频预告片中展示了PixelWatch的独特设计
三星与设计师Juun.J合作推出限量版可折叠产品和配件
从2023年起Fitbit设备将需要Google帐户
TOKKCAMC2+智能WiFi独立日 夜视摄像头
三星正在与全球时尚品牌JUUN.J合作
OnePlusNordWatch的颜色选项通过泄露的渲染揭示
就在第一款Nothing手机发布之前一种新的TWS芽设计浮出水面