常用控制寄存器详解
附录A CC2530中常用的控制寄存器

附录A CC2530中常用的控制寄存器1 IO引脚表1-1 Po (0×80)-端口0表1-2 P1 (0×90)-端口1表1-3 P1 —P1端口寄存器表1-5 P2DIR (OxFF)-端口2方向和端口0外设优先级控制表1-6 P1SEL—P1 功能选择寄存器表1-7 P1INP P1输入模式寄存器表1-8 PERCFG (0xF1) -外设控制表1-9 P2INP(0×F7)-端口2 输入模式P0,P1,P2中断状态标志表1-10 P0IFG(0x89 – P0中断状态标志)表1-11 PICTL(0x8C)– I/O中断控制表1-12 P0,P1,P2中断屏蔽P0IEN (0xAB )- P0中断屏蔽2 中断处理表2-1 IENO (OxA8) - 中断使能0表2-2 IEN1 (0xB8) - 中断使能1表2-3 IEN2 (0x9A) - 中断使能2表2-4 TCON (0x88) –中断标志表2-5 SOCON (0x98) - 中断标志2表2-6 S1CON (0x9B) - 中断标志 3表2-7 IRCON (0xC0) - 中断标志 43 系统时钟源表3-1 SLEEPCMD(O×BE)-睡眠模式控制表3-2 CLKCONCMD(0×C6)时钟控制命令表3-3 CLKCONSTA(0×9E)时钟控制状态4 定时器表4-1 T1CTL (0×E4)定时器1控制状态表4-2 IRCON(0×CO)- 中断标志4表4-3 IEN1 :中断使能1寄存器表4-5 PERCFG 外设控制寄存器默认位置2。
表4-6 T1CNTH(0xE3) 定时器1计数器高位表4-7 T1CNTL(0xE2) 定时器1计数器低位表4-8 TIMIF(0xD8)定时器1/3/4的中断标志5 串口表5-1 UOCSR (0x86) - USART 0 控制和状态表5-2 U0CSR(串口 0 控制&状态寄存器)表5-4 U0GCR (串口 0 常规控制寄存器)表5-5 UOGCR (0xC5) - USART 0 通用控制表5-6 U0BAUD (0×C2)-USART 0 波特率控制表5-7 U0BUF(0×C1)-USART 0 接收/传送数据缓冲6 ADC表6-1 ADCL(0xBA)- ADC数据低位表6-2 ADCH (0xBB) -ADC数据高位表6-3 ADCCON1(0×B4)-ADC控制1控制3表6-4 ADCCON3(0×B6)-ADC7 看门狗表7-1 WDCTL(0×C9)-看门狗定时器控制8 电源管理寄存器(睡眠定时器功耗模式选择)SLEEPCMD、STLOAD、ST2、ST1、ST0、STIF表8-1 STLOAD(0×AD)- 睡眠定时器加载状态表8-2 ST2(0×97)- 休眠定时器2表8-3 ST1(0×96)- 休眠定时器1表8-4 ST0(0×95)- 休眠定时器表8-5 PCON (0×87)- 供电模式控制9 DMA 存储DMAARM 、DMAIRQ 、DMAREQ表9-1 DMAARM (0×B6)-DMA 通道进入工作状态表9-2 DMAIRQ(0×D1)- DMA 中断标志表9-3 DMAREQ (0×D7)-DMA 通道开始请求和状态10 随机数生成器RNDL 、RNDH表10-1 RNDL (0×BC )-随机数发生器数据低字节表10-2 RNDH(0×BD)- 随机寄存器RNDH11 无线射频FRMCTRL0、RFST、RFRND、RSSISTAT表11-1 FRMCTRL0(0×6189)- 帧处理表11-2 RFST(0×E1)- RF CSMA-CA/选通处理器表11-3 RFRND(0×61A7)- 随机数据表11-4 RSSISTAT(0×6199)-RSSI有效状态寄存器表11-5 RFIRQF0(0Xe9)—RF中断标志表11-6 RFIRQF1(0x91)—RF中断标志表11-7 RFERRF(0xBF)—RF错误中断标志表11-8 RFIRQM0(0x61A3)—RF中断使能表11-10 RFERRM(0x61A5)—RF错误中断使能TX FIFO和RX FIFO可以通过SFR寄存器RFD(0xD9)进行存取。
SCI寄存器详解

1、波特率控制寄存器(SCIBDH、SCIBDL)IREN:红外调制模式使能位1使能0禁止TNP[0..1]:窄脉冲发射位SBR[0..12]:波特率设置位When IREN=0then,SCI baud rate=SCI bus clock/(16x SBR[12:0])When IREN=1then,SCI baud rate=SCI bus clock/(32x SBR[12:1])【说明】波特率发生器在复位后是禁止的,在设置TE、RE(在SCICR2寄存器中)后才会工作。
当(SBR[12:0]=0and IREN=0)或者(SBR[12:1]=0andIREN=1),波特率发生器不工作。
【注意】在未写入SCIBDL,写SCIBDH没有反应。
一般地,设置IREN=0,SR=52(总线频率8MHz),波特率为9600。
2、控制寄存器(SCICR1)LOOPS:在LOOP模式下,RXD引脚与SCI接收部分断开,发射部分输出在内部和接收部分相连接,此时RXD可作为普通IO口,TXD输出SCI信号。
1LOOP模式使能0正常模式SCISWAI:等待模式下SCI停止位0:在等待模式下允许SCI1:在等待模式下禁止SCIRSRC:接收器信号源选择位,当LOOPS=1时,RSRC决定接收器的内部反馈信号路径。
0:接收器的输入在内部连接到发送器输出(并非TxD引脚)。
1:接收器的输入连接到TxD引脚。
M:方式选择位(选择字符帧格式)。
0:1个起始位,8个数据位,1个停止位。
1:1个起始位,8个数据位,第9个数据位,1个停止位。
WAKE:唤醒选择位。
0:介质空闲唤醒。
1:地址标志(最后一个数据位为1)唤醒。
ILT:空闲检测方式选择位,该位在SCI接收器可以使用的两种空闲检测方式中选择一种。
0:快速检测,SCI在一个帧的开始位后立即开始对“1”计数,因此停止位以及停止位前面的任何“1”均被计算在内,这样可以提前检测到空闲状态。
USART模块寄存器使用说明

USART模块寄存器使用说明USART(Universal Synchronous/AsynchronousReceiver/Transmitter)是通用同步/异步收发器,是一种常用的串行通信接口模块。
在使用USART模块之前,需要配置一些寄存器来完成通信的参数设置。
ART控制寄存器(USART_CRx):用于配置发送和接收的参数。
常用的配置包括:- 使能发送和接收功能:通过设置 TE(Transmitter Enable)和 RE (Receiver Enable)位来使能发送和接收功能。
- 配置数据位数:通过设置 M(Mantissa)位来选择发送和接收的数据位数。
- 配置停止位:通过设置 STOP(Stop Bits)位来选择发送和接收的停止位数。
- 配置奇偶校验位:通过设置 PCE(Parity Control Enable)位和PS(Parity Selection)位来选择发送和接收的奇偶校验方式。
- 配置同步/异步模式:通过设置 SYNC(Synchronous mode enable)位来选择同步(同步模式)或异步(异步模式)通信。
ART数据寄存器(USART_DR):用于发送和接收数据。
写入该寄存器的数据将被发送,读取该寄存器可以获取接收到的数据。
ART状态寄存器(USART_SR):用于获取USART模块的状态信息。
常用的状态位包括:- TXE(Transmit Data Register Empty):发送数据寄存器为空。
- RXNE(Read Data Register Not Empty):接收数据寄存器非空。
- FE(Framing Error):帧错误。
- ORE(Overrun Error):溢出错误。
- NE(Noise Error):噪声错误。
ART波特率寄存器(USART_BRR):用于配置通信的波特率。
波特率=时钟频率/(16*USARTDIV)。
ART控制寄存器2(USART_CR2)和寄存器3(USART_CR3):用于配置流控制、硬件流控制、DMA接口等其他功能。
UART寄存器介绍

UART寄存器介绍UART(Universal Asynchronous Receiver/Transmitter)是一种串行通信协议,常用于各种微控制器和外围设备之间的通信。
UART寄存器是用来配置和控制UART模块的寄存器,包括数据传输、波特率、中断、状态等方面。
本文将从这几个方面详细介绍UART寄存器。
1.数据传输寄存器:数据传输寄存器用来存储和传输数据。
在发送数据时,将要发送的数据写入数据寄存器,发送完毕后,数据寄存器将被清空准备接收下一个数据。
在接收数据时,接收到的数据会存储在数据寄存器中,供读取或进一步处理。
2.波特率寄存器:波特率寄存器用来设置UART通信的波特率,它决定了数据传输的速率。
波特率寄存器通常是一个16位寄存器,低8位用来表示分频器的分频值,高8位用来表示分频器的倍频值。
通过设置不同的分频值和倍频值,可以实现不同的波特率。
具体的计算公式如下:波特率=时钟频率/(分频值*倍频值)3.中断寄存器:中断寄存器用来配置和控制UART模块的中断。
通过设置中断使能位和中断标志位,可以实现在特定事件发生时触发相应的中断处理程序。
常见的中断包括接收到数据中断、发送数据完成中断、数据溢出中断等。
4.状态寄存器:状态寄存器用来提供UART模块的状态信息。
常见的状态包括发送缓冲区为空、接收缓冲区不为空、接收缓冲区溢出、发送完成等。
通过读取状态寄存器的值,可以了解UART模块的当前状态,并进行相应的处理。
5.控制寄存器:控制寄存器用来配置和控制UART模块的行为。
它可以设置UART模块的工作方式、数据位数、停止位数、校验方式等。
通过写入控制寄存器的不同值,可以改变UART的工作模式,并对数据进行校验等处理。
6.波特率发生器寄存器:波特率发生器寄存器用来配置UART模块的波特率发生器。
波特率发生器根据设置的时钟频率和波特率,产生传输数据时所需要的时钟信号。
通过修改波特率发生器寄存器的值,可以调整UART模块的波特率。
在8086汇编语言中ax,_bx,_cx,_dx四个寄存器的常见用途

在8086汇编语言中ax, bx, cx, dx四个寄存器的常见用途1. 引言1.1 概述在8086汇编语言中,AX、BX、CX和DX是四个常见的寄存器。
这些寄存器具有不同的功能和用途,可以提供对数据的临时存储和处理。
它们在程序设计中扮演着重要的角色,并且对于编写高效且功能完善的汇编代码至关重要。
1.2 文章结构本文将详细讨论AX、BX、CX和DX四个寄存器的常见用途。
首先,我们将探讨AX寄存器及其在累加、函数返回值传递以及数据处理和运算中的作用。
然后,我们将研究BX寄存器,在基址寄存器、指针地址存储以及字符串操作方面的应用。
接下来,我们将介绍CX寄存器在计数与循环控制、位移与移位操作以及I/O 端口控制方面的功能。
最后,我们将讲解DX寄存器在数据传输、中断向量以及I/O端口地址存储方面所起到的重要作用。
1.3 目的通过深入理解AX、BX、CX和DX四个常用寄存器以及它们各自的应用领域,读者将能够更好地理解如何在8086汇编语言中使用这些寄存器,并且能够优化自己的编程技巧。
此外,对于那些希望进一步学习汇编语言的人来说,本文还可作为入门指南,提供了有关寄存器功能和用途的基本知识。
2. AX寄存器的常见用途:2.1 累加器:AX寄存器是8086汇编语言中最常用的累加器。
作为一个通用寄存器,它被广泛用于执行不同类型的运算,例如加法、减法、乘法和除法操作。
在进行加法或减法运算时,我们可以将待操作的数值加载到AX寄存器,并且可以通过执行ADD或SUB指令来实现加法或减法操作。
以乘法为例,其中一个乘数会被放入AX寄存器中,并通过执行MUL(无符号)或IMUL(有符号)指令与另一个操作数进行相乘。
2.2 存储函数返回值:在很多情况下,子程序会将其返回值保存在AX寄存器中。
当调用某个函数或子程序时,该函数或子程序可能会要求将结果返回给调用者。
这时候,函数会将结果保存在AX寄存器中,并通过RETN指令将控制权交还给调用者,从而返回函数的执行结果。
(完整版)cc2530常用寄存器讲解

(完整版)cc2530常用寄存器讲解一.CC2530控制外设的基本方法(通用I/O口)CC2530的I/O控制口一共有21个,分成3组,分别是P0、P1和P2;由上面的对照表可以看出LED1所对应的I/O口为P1_0,LED2所对应的I/O口为P1_1,LED3所对应的I/O口为P1_4,LED4所对应的I/O为P0_1。
相对应的常用SFR有:P1DIR(P1方向寄存器,P0DIR同理):0:输入1:输出P0SEL(P1SEL相同):各个I/O口的功能选择,0为普通I/O功能,1为外设功能寄存器的设置:将控制寄存器的某一位置1:例:P1DIR |= 0X02;解释:”|=“表示按位或运算,0X02为十六进制数,转换成二进制数为0000 0010,若P1DIR原来的值为0011 0000,或运算后P1DIR的值为0011 0010。
根据上面给出的取值表可知,按位与运算后P1_1的方向改为输出,其他I/O口方向保持不变。
将控制寄存器某一位清0:例:P1DIR &= ~0X02;解释:”&=“表示按位与运算,”~“运算符表示取反,0X02为0000 0010,即~0X02为1111 1101。
若P1DIR原来的值为0011 0010,与运算后P1DIR的值为0011 0000。
二.通过中断控制LED,如何捕获一个外部中断和CC2530捕获外部中断后的处理流程D5为USB D+中断状态标志,当D+线有一个中断请求未决时设置该标志,用于检测USB挂起状态下的USB恢复事件。
当USB控制器没有挂起时不设置该标志。
波特率由U0GCR中的低5位和U0BAUD决定,例如:U0GCR |= 9;U0BAUD |= 59;以上代码将波特率设为19200。
五.系统电源管理,外部中断睡眠唤醒PCON(0x87) Bit0. 系统电源模式控制寄存器,置1将强制系统进入SLEEPCMD所指定的电源模式,所有中断信号都可以清除此置位。
单片机笔记-寄存器、引脚及其英文名称缩写

单片机笔记-寄存器、引脚及其英文名称缩写在单片机开发过程中,我们常常会涉及到寄存器和引脚的使用。
寄存器是用于存储和处理数据的重要组成部分,而引脚则是用于连接外部设备和单片机的接口。
了解寄存器、引脚及其英文名称缩写是学习和理解单片机编程的重要一步。
一、寄存器寄存器是单片机中的一种特殊功能寄存器,它们用来存储特定的信息,如状态、控制和数据等。
寄存器的使用是通过对其地址进行读/写操作来实现的。
在单片机中,存在着许多不同的寄存器,下面是一些常见的寄存器及其英文名称缩写:1. 状态寄存器(Status Register) - SR状态寄存器用于存储和显示一些跟运算或处理结果有关的标志位,如进位标志位、溢出标志位、零标志位等。
通过对状态寄存器的读写,可以获取或设置这些标志位的值。
2. 数据寄存器(Data Register) - DR数据寄存器用于存储临时数据,如中间计算结果或输入/输出数据等。
读写数据寄存器时,可以进行数据的读取或写入操作。
3. 控制寄存器(Control Register) - CR控制寄存器用于控制某些外设或特定功能的工作方式,如时钟控制寄存器、中断控制寄存器等。
写入或读取控制寄存器可以实现对相应功能的配置和控制。
4. 地址寄存器(Address Register) - AR地址寄存器用于存储指令和数据的地址信息。
在程序执行过程中,地址寄存器可以用于指示当前要执行的指令或要读取/写入数据的地址。
二、引脚引脚是单片机的外部接口,通过引脚可以与其他电子元件或设备进行连接和通信。
引脚的使用通常包括输入输出、中断触发、时钟输入等功能。
下面是一些常见的引脚及其英文名称缩写:1. 电源引脚(Power Pin) - VCC、GND电源引脚用于提供单片机的供电电源。
其中,VCC用于给单片机提供正电源,而GND则是单片机的接地端。
2. 输入引脚(Input Pin) - IN输入引脚用于接收外部信号。
汇编语言中寄存器介绍

汇编语言中寄存器介绍寄存器是汇编语言中非常重要的概念,它们用于存储和操作数据。
在本文中,将介绍汇编语言中常用的寄存器,并详细解释它们的功能和用途。
1. 通用寄存器通用寄存器是最常用的寄存器,在汇编语言中使用频率较高。
通常有四个通用寄存器,分别是AX、BX、CX和DX。
这些寄存器既可用于存储数据,也可用于进行算术运算。
例如,将数据从内存加载到通用寄存器中,进行加法或减法运算,然后将结果存回内存。
2. 累加器寄存器累加器寄存器是AX寄存器的别名。
AX寄存器在处理循环和计数时非常有用。
它还可以用于存储需要频繁访问的数据,例如需要进行累加或累减的数值。
3. 基址寄存器基址寄存器是BX寄存器的别名。
它与偏移量配合使用,用于计算内存地址。
通常在存储大量数据的数组或缓冲区中使用。
4. 计数器寄存器计数器寄存器是CX寄存器的别名。
CX寄存器在处理循环时非常有用。
它可以作为循环计数器,用于控制循环的次数。
5. 数据寄存器数据寄存器是DX寄存器的别名。
它可以存储需要进行输入/输出操作的数据,例如从键盘读取的字符或向屏幕输出的字符。
数据寄存器还可以用于存放在算术运算中需要使用的常数。
6. 标志寄存器标志寄存器用于存储处理器运行过程中的状态信息,例如进位标志、零标志、符号标志等。
它们对于程序的条件分支非常重要,可以根据不同的标志位执行相应的操作。
7. 段寄存器段寄存器用于指示在内存中的位置。
在实模式下,由于地址总线的限制,内存地址仅能表示64KB。
因此,通过使用段寄存器,可以将内存地址拓展到1MB甚至更大。
常用的段寄存器有CS(代码段寄存器)、DS(数据段寄存器)、SS(堆栈段寄存器)和ES(附加段寄存器)。
8. 指令寄存器指令寄存器(IP)用于存储当前执行的指令在内存中的地址。
它是程序执行的关键寄存器之一,能够实现指令的顺序执行。
在汇编语言中,寄存器是程序设计中不可或缺的组成部分。
通过合理地使用和操作寄存器,能够提高程序的执行效率和性能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P2IFG:D0~D4为P2_0~P2_4的中断标志位
D5为USD D+中断状态标志,当D+线有一个中断请求未决时设置该标志,用于检测USB挂起状态下的USB恢复事件。
当USB控制器没有挂起时不设
置该标志。
IEN2:中断使能2,0为中断禁止,1为中断使能
T1STAT:定时器1的状态寄存器,D4~D0为通道4~通道0的中断标志,D5为溢出标志位,当计数到最终技术值是自动置1。
T1CCTL0~T1CCTL4:定时器1通道0~通道4的工作方式设置。
D1D0为捕捉模式选择:00为不捕捉,01为上升沿捕获,10为下降沿捕获,11为上升或下降沿都捕获。
D2位为捕获或比较的选择,0为捕获模式,1为比较模式。
D5D4D3为比较模式的选择:000为发生比较式输出端置1,001为发生比较时输出端清0,010为比较时输出翻转,其他模式较少使用。
4MHZ,100为2MHZ,101为1MHZ,110为500KHZ,111为250KHZ。
当D6为1时,系统主时钟最高可采用频率为16MHZ。
U0GCR:USART0通用控制寄存器;。