MSP430寄存器中文注释----串口寄存器

发布者:明理厚德最新更新时间:2015-01-21 来源: laogu关键字:MSP430  寄存器  串口寄存器 手机看文章 扫描二维码
随时随地手机看文章

/************************************************************
* USART   串口寄存器"UCTL","UTCTL","URCTL"定义的各个位 可串口1 串口2公用
************************************************************/
/* UCTL  串口控制寄存器*/ 
#define PENA                0x80        /*校验允许位*/
#define PEV                 0x40        /*偶校验   为0时为奇校验*/
#define SPB                 0x20        /*停止位为2 为0时停止位为1*/
#define CHAR                0x10        /*数据位为8位 为0时数据位为7位*/
#define LISTEN              0x08        /*自环模式(发数据同时在把发的数据接收回来)*/
#define SYNC                0x04        /*同步模式  为0异步模式*/
#define MM                  0x02        /*为1时地址位多机协议(异步) 主机模式(同步);为0时线路空闲多机协议(异步) 从机模式(同步)*/
#define SWRST               0x01        /*控制位*/

/* UTCTL 串口发送控制寄存器*/
#define CKPH                0x80        /*时钟相位控制位(只同步方式用)为1时时钟UCLK延时半个周期*/   
#define CKPL                0x40        /*时钟极性控制位 为1时异步与UCLK相反;同步下降延有效*/
#define SSEL1               0x20        /*时钟源选择位:与SSEL0组合为0,1,2,3四种方式*/
#define SSEL0               0x10        /*"0"选择外部时钟,"1"选择辅助时钟,"2","3"选择系统子时钟 */
#define URXSE               0x08        /*接收触发延控制位(只在异步方式下用)*/
#define TXWAKE              0x04        /*多处理器通信传送控制位(只在异步方式下用)*/
#define STC                 0x02        /*外部引脚STE选择位 为0时为4线模式 为1时为3线模式*/
#define TXEPT               0x01        /*发送器空标志*/

/* URCTL 串口接收控制寄存器                同步模式下只用两位:FE和OE*/
#define FE                  0x80         /*帧错标志*/          
#define PE                  0x40         /*校验错标志位*/
#define OE                  0x20         /*溢出标志位*/
#define BRK                 0x10         /*打断检测位*/
#define URXEIE              0x08         /*接收出错中断允许位*/
#define URXWIE              0x04         /*接收唤醒中断允许位*/
#define RXWAKE              0x02         /*接收唤醒检测位*/
#define RXERR               0x01         /*接收错误标志位*/

/************************************************************
* USART 0           串口0寄存器定义
************************************************************/

#define U0CTL_              0x0070  /* UART 0 Control */
sfrb    U0CTL             = U0CTL_;
#define U0TCTL_             0x0071  /* UART 0 Transmit Control */
sfrb    U0TCTL            = U0TCTL_;
#define U0RCTL_             0x0072  /* UART 0 Receive Control */
sfrb    U0RCTL            = U0RCTL_;
#define U0MCTL_             0x0073  /* UART 0 Modulation Control */
sfrb    U0MCTL            = U0MCTL_;
#define U0BR0_              0x0074  /* UART 0 Baud Rate 0 */
sfrb    U0BR0             = U0BR0_;
#define U0BR1_              0x0075  /* UART 0 Baud Rate 1 */
sfrb    U0BR1             = U0BR1_;
#define U0RXBUF_            0x0076  /* UART 0 Receive Buffer */
const sfrb U0RXBUF        = U0RXBUF_;
#define U0TXBUF_            0x0077  /* UART 0 Transmit Buffer */
sfrb    U0TXBUF           = U0TXBUF_;

/* Alternate register names */

#define UCTL0_              0x0070  /* UART 0 Control */
sfrb    UCTL0             = UCTL0_;
#define UTCTL0_             0x0071  /* UART 0 Transmit Control */
sfrb    UTCTL0            = UTCTL0_;
#define URCTL0_             0x0072  /* UART 0 Receive Control */
sfrb    URCTL0            = URCTL0_;
#define UMCTL0_             0x0073  /* UART 0 Modulation Control */
sfrb    UMCTL0            = UMCTL0_;
#define UBR00_              0x0074  /* UART 0 Baud Rate 0 */
sfrb    UBR00             = UBR00_;
#define UBR10_              0x0075  /* UART 0 Baud Rate 1 */
sfrb    UBR10             = UBR10_;
#define RXBUF0_             0x0076  /* UART 0 Receive Buffer */
const sfrb RXBUF0         = RXBUF0_;
#define TXBUF0_             0x0077  /* UART 0 Transmit Buffer */
sfrb    TXBUF0            = TXBUF0_;

#define UCTL_0_             0x0070  /* UART 0 Control */
sfrb    UCTL_0            = UCTL_0_;
#define UTCTL_0_            0x0071  /* UART 0 Transmit Control */
sfrb    UTCTL_0           = UTCTL_0_;
#define URCTL_0_            0x0072  /* UART 0 Receive Control */
sfrb    URCTL_0           = URCTL_0_;
#define UMCTL_0_            0x0073  /* UART 0 Modulation Control */
sfrb    UMCTL_0           = UMCTL_0_;
#define UBR0_0_             0x0074  /* UART 0 Baud Rate 0 */
sfrb    UBR0_0            = UBR0_0_;
#define UBR1_0_             0x0075  /* UART 0 Baud Rate 1 */
sfrb    UBR1_0            = UBR1_0_;
#define RXBUF_0_            0x0076  /* UART 0 Receive Buffer */
const sfrb RXBUF_0        = RXBUF_0_;
#define TXBUF_0_            0x0077  /* UART 0 Transmit Buffer */
sfrb    TXBUF_0           = TXBUF_0_;

/************************************************************
* USART 1         串口1寄存器定义
************************************************************/

#define U1CTL_              0x0078  /* UART 1 Control */
sfrb    U1CTL             = U1CTL_;
#define U1TCTL_             0x0079  /* UART 1 Transmit Control */
sfrb    U1TCTL            = U1TCTL_;
#define U1RCTL_             0x007A  /* UART 1 Receive Control */
sfrb    U1RCTL            = U1RCTL_;
#define U1MCTL_             0x007B  /* UART 1 Modulation Control */
sfrb    U1MCTL            = U1MCTL_;
#define U1BR0_              0x007C  /* UART 1 Baud Rate 0 */
sfrb    U1BR0             = U1BR0_;
#define U1BR1_              0x007D  /* UART 1 Baud Rate 1 */
sfrb    U1BR1             = U1BR1_;
#define U1RXBUF_            0x007E  /* UART 1 Receive Buffer */
const sfrb U1RXBUF        = U1RXBUF_;
#define U1TXBUF_            0x007F  /* UART 1 Transmit Buffer */
sfrb    U1TXBUF           = U1TXBUF_;

#define UCTL1_              0x0078  /* UART 1 Control */
sfrb    UCTL1             = UCTL1_;
#define UTCTL1_             0x0079  /* UART 1 Transmit Control */
sfrb    UTCTL1            = UTCTL1_;
#define URCTL1_             0x007A  /* UART 1 Receive Control */
sfrb    URCTL1            = URCTL1_;
#define UMCTL1_             0x007B  /* UART 1 Modulation Control */
sfrb    UMCTL1            = UMCTL1_;
#define UBR01_               0x007C  /* UART 1 Baud Rate 0 */
sfrb    UBR01             = UBR01_;
#define UBR11_              0x007D  /* UART 1 Baud Rate 1 */
sfrb    UBR11             = UBR11_;
#define RXBUF1_             0x007E  /* UART 1 Receive Buffer */
const sfrb RXBUF1         = RXBUF1_;
#define TXBUF1_             0x007F  /* UART 1 Transmit Buffer */
sfrb    TXBUF1            = TXBUF1_;

#define UCTL_1_             0x0078  /* UART 1 Control */
sfrb    UCTL_1            = UCTL_1_;
#define UTCTL_1_            0x0079  /* UART 1 Transmit Control */
sfrb    UTCTL_1           = UTCTL_1_;
#define URCTL_1_            0x007A  /* UART 1 Receive Control */
sfrb    URCTL_1           = URCTL_1_;
#define UMCTL_1_            0x007B  /* UART 1 Modulation Control */
sfrb    UMCTL_1           = UMCTL_1_;
#define UBR0_1_             0x007C  /* UART 1 Baud Rate 0 */
sfrb    UBR0_1            = UBR0_1_;
#define UBR1_1_             0x007D  /* UART 1 Baud Rate 1 */
sfrb    UBR1_1            = UBR1_1_;
#define RXBUF_1_            0x007E  /* UART 1 Receive Buffer */
const sfrb RXBUF_1        = RXBUF_1_;
#define TXBUF_1_            0x007F  /* UART 1 Transmit Buffer */
sfrb    TXBUF_1           = TXBUF_1_;

 
关键字:MSP430  寄存器  串口寄存器 引用地址:MSP430寄存器中文注释----串口寄存器

上一篇:C语言中嵌入汇编语言在本论坛中的集锦
下一篇:基于USB接口的VSAT基带数据采集系统的设计

推荐阅读最新更新时间:2024-03-16 13:51

基于MSP430F449D的携带式电子血压计硬件设计方案
一、血压测量原理 血压的概念就是血液流经血管壁时的压力。由心脏出来的血液,需要有推力,才能绕行身体一周,心脏就是借着不停的收缩、放松,将血液推送前进。血压有两种,一是收缩压:是当心脏收缩将血液打到血管所测得的血压,另一是舒张压:是心脏在不收缩所测得的压力。当袖带的压力等于血压时,血液开始可以流通而产生所谓的袖带声,这时候表现为收缩压,从这一刻开始做记录,直到最后袖带声音消失的时候,记录此点即为舒张压。 二、电子血压计工作原理 系统框图如图1所示。系统由恒流源、压力传感器、放大电路、带通滤波、二次放大、血压脉冲触发、液晶驱动器、键盘语音电路和单片机组成。 图1 电子血压计原理图 单片机主要原理为:PWM输出控制气泵充气漏气调
[单片机]
基于<font color='red'>MSP430</font>F449D的携带式电子血压计硬件设计方案
MSP430单片机命名规则
TI MSP430命名规则
[单片机]
<font color='red'>MSP430</font>单片机命名规则
二元给定序列非线性移位寄存器的综合与产生
摘要:依据非线性移位寄存器的原理,文中讨论二元给定序列非线性反馈移位寄存器的综合算法,用C语言编程,找到了产生该序列的非线性移位寄存器。借助EDA技术,以FPGA为硬件基础,经过设计优化构成定长序列和给定周期序列的伪随机序列发生器,并进行了仿直实验,用硬件实验证实了设计的合理性。 关键词:非线性伪随机序列 非线性移位寄存器 现场可编程门阵列 1 引言 伪随机序列具有良好的随机性,在伪码测距、导航、遥控和遥测、扩频通信、多址通信、分离多径、数据加乱、信号同步、误码测试、线性系统测量、天线方向测量和各种噪声源等方面得以广泛的应用。伪随机序列的产生可以通过线性移位寄存器即m序列来实现,也可以通过非线性移位寄存器来实现。非线性移位寄
[半导体设计/制造]
MSP430方波发生器
最近在研究MSP430,有产生方波的需要,于是尝试用定时器写了两个方波发生的函数,一个可以产生几十K的方波,一个可以产生几百K的方波,感觉还比较有用,特来分享。 频率与CCR0计算式:2*CCR0/TimerAFrequency=1/F --- CCR0=TimerAFrequency/(2*F) void low_square_Generator(int frequency) //几十KHZ方波产生器 { P1DIR |= 0x02; //P1.1的第二功能 P1SEL |= 0x02; CCTL0=OUTMOD_4; //翻转模式
[单片机]
ARM寄存器总结
ARM有16个32位的寄存器(r0到r15)。 r15充当程序寄存器PC,r14(link register)存储子程序的返回地址,r13存储的是堆栈地址。 ARM有一个当前程序状态寄存器:CPSR。 一些寄存器(r13,r14)在异常发生时会产生新的instances,比如IRQ处理器模式,这时处理器使用r13_irq和r14_irq ARM的子程序调用是很快的,因为子程序的返回地址不需要存放在堆栈中。 1、 ARM处理器共有37个寄存器,其中包括: i. 31个通用寄存器,包括程序计数器(PC)在内。都是32位寄存器 ii. 6个状态寄存器,都是32位寄存器,但目前只使用了其中12位 2、 ARM处理器有7
[单片机]
STM32入门系列-使用C语言封装寄存器
前面介绍了存储器映射、寄存器和寄存器映射,这些都是为了介绍使用 C语言封装寄存器做铺垫。这里我们通过一个实例来对 C 语言封装寄存器进行介绍。 具体实例:控制 GPIOC 端口的第 0 管脚输出一个低电平。首先我们需要知道GPIOC 端口外设是挂接在哪个总线上的,然后根据总线基地址和本身的偏移地址得到 GPIOC 外设基地址,最后通过这个外设基地址得到里面各种寄存器基地址。 总线和外设基地址封装 根据寄存器的概念,我们可以使用 C 语言中的宏定义对寄存器进行定义。具体代码如下: //定义外设基地址 #define PERIPH_BASE ((unsigned int)0x40000000) 1) //定义 APB2 总线基地址
[单片机]
MSP430平台下实现Si4432的收发数据
Si4432芯片是Silicon Labs公司推出集成度、低功耗、多频段的EZRadioPRO系列无线收发芯片。可以工作在433M免费频段。早期生产的V2版本的不太稳定,经过SI公司改进后,B1版本的性能比较稳定,最大功率可以到20dBm(100mw),接收灵敏度可以到-121dbm,工作电压为1.9~3.6 V,20引脚QFN封装(4 mm×4 mm),可工作在315/433/868/915 MHz四个频段;内部集成分集式天线、功率放大器、唤醒定时器、数字调制解调器、64字节的发送和接收数据FIFO,以及可配置的GPIO等。因其发射功率大,接收灵敏度高,可以传输到上千米的距离,素有 穿墙王 之称。他与NRF905、CC1101无
[单片机]
MSP430和CC2500的USB无线数据采集系统
基于MSP430单片机和CC2500的无线数据采集系统是一个功能齐全的无线开发工具,该系统主要由MSP430F系列微控制器和CC2500(2.4 GHz)无线收发器组成。系统可在PC机上利用IAR嵌入式工作平台集成开发环境(IDE)或CCE开发环境编写、下载和调试应用程序。用户可以通过设置硬件断点全速运行应用程序,也可单步运行,无需额外消耗硬件资源。系统核心控制器采用MSP430F24X系列单片机,该单片机为16位单片机,集成度高,处理速度快.超低功耗,能极大的节省资源。通过Simplici TI协议,MSP430控制器通过USB接口实现与PC机的通信,调试稳定、简易方便。该数据采集系统消耗硬件资源较少,功耗超低,是一种无线数据采集
[模拟电子]
<font color='red'>MSP430</font>和CC2500的USB无线数据采集系统
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved