⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msp430x14x头文件说明.h

📁 车载GPS监控终端的完整代码,与监控中心的通讯采用GPRS.
💻 H
📖 第 1 页 / 共 4 页
字号:
#define SCS                 (0x0800)  /* Capture sychronize */
#define SCCI                (0x0400)  /* Latched capture signal (read) */
#define CAP                 (0x0100)  /* Capture mode: 1 /Compare mode : 0 */
#define OUTMOD2             (0x0080)  /* Output mode 2 */
#define OUTMOD1             (0x0040)  /* Output mode 1 */
#define OUTMOD0             (0x0020)  /* Output mode 0 */
#define CCIE                (0x0010)  /* Capture/compare interrupt enable */
#define CCI                 (0x0008)  /* Capture input signal (read) */
#define OUT                 (0x0004)  /* PWM Output signal if output mode 0 */
#define COV                 (0x0002)  /* Capture/compare overflow flag */
#define CCIFG               (0x0001)  /* Capture/compare interrupt flag */

#define OUTMOD_0            (0*0x20)  /* PWM output mode: 0 - output only */
#define OUTMOD_1            (1*0x20)  /* PWM output mode: 1 - set */
#define OUTMOD_2            (2*0x20)  /* PWM output mode: 2 - PWM toggle/reset */
#define OUTMOD_3            (3*0x20)  /* PWM output mode: 3 - PWM set/reset */
#define OUTMOD_4            (4*0x20)  /* PWM output mode: 4 - toggle */
#define OUTMOD_5            (5*0x20)  /* PWM output mode: 5 - Reset */
#define OUTMOD_6            (6*0x20)  /* PWM output mode: 6 - PWM toggle/set */
#define OUTMOD_7            (7*0x20)  /* PWM output mode: 7 - PWM reset/set */
#define CCIS_0              (0*0x1000) /* Capture input select: 0 - CCIxA */
#define CCIS_1              (1*0x1000) /* Capture input select: 1 - CCIxB */
#define CCIS_2              (2*0x1000) /* Capture input select: 2 - GND */
#define CCIS_3              (3*0x1000) /* Capture input select: 3 - Vcc */
#define CM_0                (0*0x4000) /* Capture mode: 0 - disabled */
#define CM_1                (1*0x4000) /* Capture mode: 1 - pos. edge */
#define CM_2                (2*0x4000) /* Capture mode: 1 - neg. edge */
#define CM_3                (3*0x4000) /* Capture mode: 1 - both edges */

/************************************************************
* Timer B  定时器B
************************************************************/

#define TBIV_               (0x011E)  /* Timer B Interrupt Vector Word 中断向量寄存器*/
const sfrw TBIV           = TBIV_;
#define TBCTL_              (0x0180)  /* Timer B Control 控制寄存器*/
sfrw    TBCTL             = TBCTL_;
#define TBCCTL0_            (0x0182)  /* Timer B Capture/Compare Control 0捕获/比较控制寄存器0 */
sfrw    TBCCTL0           = TBCCTL0_;
#define TBCCTL1_            (0x0184)  /* Timer B Capture/Compare Control 1捕获/比较控制寄存器1 */
sfrw    TBCCTL1           = TBCCTL1_;
#define TBCCTL2_            (0x0186)  /* Timer B Capture/Compare Control 2捕获/比较控制寄存器2 */
sfrw    TBCCTL2           = TBCCTL2_;
#define TBCCTL3_            (0x0188)  /* Timer B Capture/Compare Control 3捕获/比较控制寄存器3 */
sfrw    TBCCTL3           = TBCCTL3_;
#define TBCCTL4_            (0x018A)  /* Timer B Capture/Compare Control 4捕获/比较控制寄存器4 */
sfrw    TBCCTL4           = TBCCTL4_;
#define TBCCTL5_            (0x018C)  /* Timer B Capture/Compare Control 5捕获/比较控制寄存器5 */
sfrw    TBCCTL5           = TBCCTL5_;
#define TBCCTL6_            (0x018E)  /* Timer B Capture/Compare Control 6捕获/比较控制寄存器6 */
sfrw    TBCCTL6           = TBCCTL6_;
#define TBR_                (0x0190)  /* Timer B 寄存器*/
sfrw    TBR               = TBR_;
#define TBCCR0_             (0x0192)  /* Timer B Capture/Compare 0捕获/比较寄存器0 */
sfrw    TBCCR0            = TBCCR0_;
#define TBCCR1_             (0x0194)  /* Timer B Capture/Compare 1捕获/比较寄存器1 */
sfrw    TBCCR1            = TBCCR1_;
#define TBCCR2_             (0x0196)  /* Timer B Capture/Compare 2捕获/比较寄存器2 */
sfrw    TBCCR2            = TBCCR2_;
#define TBCCR3_             (0x0198)  /* Timer B Capture/Compare 3捕获/比较寄存器3 */
sfrw    TBCCR3            = TBCCR3_;
#define TBCCR4_             (0x019A)  /* Timer B Capture/Compare 4捕获/比较寄存器4 */
sfrw    TBCCR4            = TBCCR4_;
#define TBCCR5_             (0x019C)  /* Timer B Capture/Compare 5捕获/比较寄存器5 */
sfrw    TBCCR5            = TBCCR5_;
#define TBCCR6_             (0x019E)  /* Timer B Capture/Compare 6捕获/比较寄存器6 */
sfrw    TBCCR6            = TBCCR6_;

#define SHR1                (0x4000)  /* Timer B Compare latch load group 1 */
#define SHR0                (0x2000)  /* Timer B Compare latch load group 0 */
#define TBCLGRP1            (0x4000)  /* Timer B Compare latch load group 1 */
#define TBCLGRP0            (0x2000)  /* Timer B Compare latch load group 0 选择单独或成组加载比较锁存器*/
#define CNTL1               (0x1000)  /* Counter lenght 1 */
#define CNTL0               (0x0800)  /* Counter lenght 0 配置16位定时器(TBR)为1,10,12,16位操作*/
#define TBSSEL2             (0x0400)  /* unused */
#define TBSSEL1             (0x0200)  /* Clock source 1 */
#define TBSSEL0             (0x0100)  /* Clock source 0 定时器进入输入分频的输入时钟选择*/
#define TBCLR               (0x0004)  /* Timer B counter clear 定时器清除位*/
#define TBIE                (0x0002)  /* Timer B interrupt enable 定时器溢出中断允许位,置位使溢出产生中断请求,复位禁止*/
#define TBIFG               (0x0001)  /* Timer B interrupt flag 指示定时器溢出实践*/

#define TBSSEL_0            (0*0x0100)  /* Clock Source: TBCLK */
#define TBSSEL_1            (1*0x0100)  /* Clock Source: ACLK  */
#define TBSSEL_2            (2*0x0100)  /* Clock Source: SMCLK */
#define TBSSEL_3            (3*0x0100)  /* Clock Source: INCLK */
#define CNTL_0              (0*0x0800)  /* Counter lenght: 16 bit */
#define CNTL_1              (1*0x0800)  /* Counter lenght: 12 bit */
#define CNTL_2              (2*0x0800)  /* Counter lenght: 10 bit */
#define CNTL_3              (3*0x0800)  /* Counter lenght:  8 bit */
#define SHR_0               (0*0x2000)  /* Timer B Group: 0 - individually */
#define SHR_1               (1*0x2000)  /* Timer B Group: 1 - 3 groups (1-2, 3-4, 5-6) */
#define SHR_2               (2*0x2000)  /* Timer B Group: 2 - 2 groups (1-3, 4-6)*/
#define SHR_3               (3*0x2000)  /* Timer B Group: 3 - 1 group (all) */
#define TBCLGRP_0           (0*0x2000)  /* Timer B Group: 0 - individually */
#define TBCLGRP_1           (1*0x2000)  /* Timer B Group: 1 - 3 groups (1-2, 3-4, 5-6) */
#define TBCLGRP_2           (2*0x2000)  /* Timer B Group: 2 - 2 groups (1-3, 4-6)*/
#define TBCLGRP_3           (3*0x2000)  /* Timer B Group: 3 - 1 group (all) */

/* Additional Timer B Control Register bits are defined in Timer A */

#define SLSHR1              (0x0400)  /* Compare latch load source 1 */
#define SLSHR0              (0x0200)  /* Compare latch load source 0 */
#define CLLD1               (0x0400)  /* Compare latch load source 1 */
#define CLLD0               (0x0200)  /* Compare latch load source 0 */

#define SLSHR_0             (0*0x0200)  /* Compare latch load sourec : 0 - immediate */
#define SLSHR_1             (1*0x0200)  /* Compare latch load sourec : 1 - TBR counts to 0 */
#define SLSHR_2             (2*0x0200)  /* Compare latch load sourec : 2 - up/down */
#define SLSHR_3             (3*0x0200)  /* Compare latch load sourec : 3 - TBR counts to TBCTL0 */

#define CLLD_0              (0*0x0200)  /* Compare latch load sourec : 0 - immediate */
#define CLLD_1              (1*0x0200)  /* Compare latch load sourec : 1 - TBR counts to 0 */
#define CLLD_2              (2*0x0200)  /* Compare latch load sourec : 2 - up/down */
#define CLLD_3              (3*0x0200)  /* Compare latch load sourec : 3 - TBR counts to TBCTL0 */

/************************************************************
* Basic Clock Module   基本时钟模块
************************************************************/

#define DCOCTL_             (0x0056)  /* DCO Clock Frequency Control DCO时钟控制 */
sfrb    DCOCTL            = DCOCTL_;
#define BCSCTL1_            (0x0057)  /* Basic Clock System Control 1 基础时钟控制1*/
sfrb    BCSCTL1           = BCSCTL1_;
#define BCSCTL2_            (0x0058)  /* Basic Clock System Control 2 基础时钟控制2*/
sfrb    BCSCTL2           = BCSCTL2_;

#define MOD0                (0x01)   /* Modulation Bit 0 */
#define MOD1                (0x02)   /* Modulation Bit 1 */
#define MOD2                (0x04)   /* Modulation Bit 2 */
#define MOD3                (0x08)   /* Modulation Bit 3 */
#define MOD4                (0x10)   /* Modulation Bit 4 *//*MOD常数定义在32个DCO周期中插入的F(dco+1)周期,在余下的DCO周期中为F(dco)周期。*/
#define DCO0                (0x20)   /* DCO Select Bit 0 */
#define DCO1                (0x40)   /* DCO Select Bit 1 */
#define DCO2                (0x80)   /* DCO Select Bit 2 *//*DCO常数定义了选择8种频率之一,频率由注入DC发生器的电流定义*/

#define RSEL0               (0x01)   /* Resistor Select Bit 0 */
#define RSEL1               (0x02)   /* Resistor Select Bit 1 */
#define RSEL2               (0x04)   /* Resistor Select Bit 2 *//*由内部电阻选择8个频率之一*/
#define XT5V                (0x08)   /* XT5V should always be reset 必须复位*/
#define DIVA0               (0x10)   /* ACLK Divider 0 */
#define DIVA1               (0x20)   /* ACLK Divider 1 ,选择ACLK的分频数*/
#define XTS                 (0x40)   /* LFXTCLK 0:Low Freq. / 1: High Freq.选择LFXT1工作在低频晶振模式或高频晶振动模式,必须与外接的晶振符合 */
#define XT2OFF              (0x80)   /* Enable XT2CLK 控制XT2振荡器的开启可关闭*/

#define DIVA_0              (0x00)   /* ACLK Divider 0: /1 */
#define DIVA_1              (0x10)   /* ACLK Divider 1: /2 */
#define DIVA_2              (0x20)   /* ACLK Divider 2: /4 */
#define DIVA_3              (0x30)   /* ACLK Divider 3: /8 */

#define DCOR                (0x01)   /* Enable External Resistor : 1 */
#define DIVS0               (0x02)   /* SMCLK Divider 0 */
#define DIVS1               (0x04)   /* SMCLK Divider 1 */
#define SELS                (0x08)   /* SMCLK Source Select 0:DCOCLK / 1:XT2CLK/LFXTCLK */
#define DIVM0               (0x10)   /* MCLK Divider 0 */
#define DIVM1               (0x20)   /* MCLK Divider 1 */
#define SELM0               (0x40)   /* MCLK Source Select 0 */
#define SELM1               (0x80)   /* MCLK Source Select 1 */

#define DIVS_0              (0x00)   /* SMCLK Divider 0: /1 */
#define DIVS_1              (0x02)   /* SMCLK Divider 1: /2 */
#define DIVS_2              (0x04)   /* SMCLK Divider 2: /4 */
#define DIVS_3              (0x06)   /* SMCLK Divider 3: /8 */

#define DIVM_0              (0x00)   /* MCLK Divider 0: /1 */
#define DIVM_1              (0x10)   /* MCLK Divider 1: /2 */
#define DIVM_2              (0x20)   /* MCLK Divider 2: /4 */
#define DIVM_3              (0x30)   /* MCLK Divider 3: /8 */

#define SELM_0              (0x00)   /* MCLK Source Select 0: DCOCLK */
#define SELM_1              (0x40)   /* MCLK Source Select 1: DCOCLK */
#define SELM_2              (0x80)   /* MCLK Source Select 2: XT2CLK/LFXTCLK */
#define SELM_3              (0xC0)   /* MCLK Source Select 3: LFXTCLK */

/*************************************************************
* Flash Memory   FLASH芯片
*************************************************************/

#define FCTL1_              (0x0128)  /* FLASH Control 1 *///Flash存储器控制寄存器FCTL1
sfrw    FCTL1             = FCTL1_;
#define FCTL2_              (0x012A)  /* FLASH Control 2 *///Flash存储器控制寄存器FCTL2
sfrw    FCTL2             = FCTL2_;
#define FCTL3_              (0x012C)  /* FLASH Control 3 *///Flash存储器控制寄存器FCTL3
sfrw    FCTL3             = FCTL3_;
//FCTL1寄存器
#define FRKEY               (0x9600)  /* Flash key returned by read */
#define FWKEY               (0xA500)  /* Flash key for write */
#define FXKEY               (0x3300)  /* for use with XOR instruction */

#define ERASE               (0x0002)  /* Enable bit for Flash segment erase *///0:不擦除;1:允许擦除1段,段号由空写入指令的地址确定。擦除完成时,ERASE自动复位
#define MERAS               (0x0004)  /* Enable bit for Flash mass erase *///0:不擦除;1:允许擦除所有段,由主存空写入指令启动。擦除完成时MERAS自动复位。
#define WRT                 (0x0040)  /* Enable bit for Flash write *///编程的时候必须将它置位
#define BLKWRT              (0x0080)  /* Enable bit for Flash segment write *///段编程,0:未选择段编程方式;1:采用段编程,在两段的操作之间,需要作一次复位和置位
#define SEGWRT              (0x0080)  /* old definition */ /* Enable bit for Flash segment write *///段编程,0:未选择段编程方式;1:采用段编程,在两段的操作之间,需要作一次复位和置位
//FCTL2寄存器
#define FN0                 (0x0001)  /* Devide Flash clock by: 2^0 *///
#define FN1                 (0x0002)  /* Devide Flash clock by: 2^1 */
#define FN2                 (0x0004)  /* Devide Flash clock by: 2^2 */
#define FN3                 (0x0008)  /* Devide Flash clock by: 2^3 */
#define FN4                 (0x0010)  /* Devide Flash clock by: 2^4 */
#define FN5                 (0x0020)  /* Devide Flash clock by: 2^5 */   //FN0~~~FN5定义时钟源信号的分频因子,为1~64,FN值加1
#define FSSEL0              (0x0040)  /* Flash clock select 0 */        /* to distinguish from UART SSELx */
#define FSSEL1              (0x0080)  /* Flash clock select 1 */         //选择时钟源  0:ACLK;1:MCLK;2,3:SMCLK

#define FSSEL_0             (0x0000)  /* Flash clock select: 0 - ACLK */
#define FSSEL_1             (0x0040)  /* Flash clock select: 1 - MCLK */
#define FSSEL_2             (0x0080)  /* Flash clock select: 2 - SMCLK */
#define FSSEL_3             (0x00C0)  /* Flash clock select: 3 - SMCLK */
//FCTL3寄存器
#define BUSY                (0x0001)  /* Flash busy: 1 *///0:FLASH存储器不忙,由POR或时序发生器复位:1:FLASH存储器忙
#define KEYV                (0x0002)  /* Flash Key violation flag *///0:安全键值是0A5H;1:对寄存器1,2,3写入时安全键值不是0A5H,使得KEYV置位并引起PUC,KEYV不会自动复位,许软件复位
#define ACCVIFG             (0x0004)  /* Flash Access violation flag *///非法访问中断标志
#define WAIT                (0x0008)  /* Wait flag for segment write *///0:段编程已经开始,编程在进行中;1:段编程有效,当前数据编程完成,等待后续的编程数据
#define LOCK                (0x0010)  /* Lock bit: 1 - Flash is locked (read only) *///0:FLASH可以做读,编程,擦除及主存擦除等操作
#define EMEX                (0x0020)  /* Flash Emergency Exit *///用于FLASH擦除或者编程失控的情况。0:无作用;1:立即停止对FLASH的操作

/************************************************************
* Comparator A   比较器A
************************************************************/

#define CACTL1_             (0x0059)  /* Comparator A Control 1 */
sfrb    CACTL1            = CACTL1_;
#define CACTL2_             (0x005A)  /* Comparator A Control 2 */
sfrb    CACTL2            = CACTL2_;
#define CAPD_               (0x005B)  /* Comparator A Port Disable */
sfrb    CAPD              = CAPD_;

#define CAIFG               (0x01)    /* Comp. A Interrupt Flag */
#define CAIE                (0x02)    /* Comp. A Interrupt Enable */
#define CAIES               (0x04)    /* Comp. A Int. Edge Select: 0:rising / 1:falling */
#define CAON                (0x08)    /* Comp. A enable */
#define CAREF0              (0x10)    /* Comp. A Internal Reference Select 0 */
#define CAREF1              (0x20)    /* Comp. A Internal Reference Select 1 */
#define CARSEL              (0x40)    /* Comp. A Internal Reference Enable */
#define CAEX                (0x80)    /* Comp. A Exchange Inputs */

#define CAREF_0             (0x00)    /* Comp. A Int. Ref. Select 0 : Off */
#define CAREF_1             (0x10)    /* Comp. A Int. Ref. Select 1 : 0.25*Vcc */
#define CAREF_2             (0x20)    /* Comp. A Int. Ref. Select 2 : 0.5*Vcc */
#define CAREF_3             (0x30)    /* Comp. A Int. Ref. Select 3 : Vt*/

#define CAOUT               (0x01)    /* Comp. A Output */
#define CAF                 (0x02)    /* Comp. A Enable Output Filter */
#define P2CA0               (0x04)    /* Comp. A Connect External Signal to CA0 : 1 */
#define P2CA1               (0x08)    /* Comp. A Connect External Signal to CA1 : 1 */
#define CACTL24             (0x10)
#define CACTL25             (0x20)
#define CACTL26             (0x40)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -