原创 (ZT)MSP430x149头文件详解※四

2008-5-14 20:49 1469 0 分类: MCU/ 嵌入式

/************************************************************
* ADC12 A/D采样寄存器定义
************************************************************/
/*ADC12转换控制类寄存器*/
#define ADC12CTL0_          0x0;' /* ADC12 Control 0 */
sfrw    ADC12CTL0        = ADC12CTL0_;
#define ADC12CTL1_          0x01A2 /* ADC12 Control 1 */
sfrw    ADC12CTL1        = ADC12CTL1_;


/*ADC12中断控制类寄存器*/
#define ADC12IFG_          0x01A4 /* ADC12 Interrupt Flag */
sfrw    ADC12IFG          = ADC12IFG_;
#define ADC12IE_            0x01A6 /* ADC12 Interrupt Enable */
sfrw    ADC12IE          = ADC12IE_;
#define ADC12IV_            0x01A8 /* ADC12 Interrupt Vector Word */
sfrw    ADC12IV          = ADC12IV_;


/*ADC12存贮器类寄存器*/
#define ADC12MEM_          0x0140 /* ADC12 Conversion Memory */
#ifndef __IAR_SYSTEMS_ICC
#define ADC12MEM            ADC12MEM_ /* ADC12 Conversion Memory (for assembler) */
#else
#define ADC12MEM            ((int*) ADC12MEM_) /* ADC12 Conversion Memory (for C) */
#endif
#define ADC12MEM0_          ADC12MEM_ /* ADC12 Conversion Memory 0 */
sfrw    ADC12MEM0        = ADC12MEM0_;
#define ADC12MEM1_          0x0142 /* ADC12 Conversion Memory 1 */
sfrw    ADC12MEM1        = ADC12MEM1_;
#define ADC12MEM2_          0x0144 /* ADC12 Conversion Memory 2 */
sfrw    ADC12MEM2        = ADC12MEM2_;
#define ADC12MEM3_          0x0146 /* ADC12 Conversion Memory 3 */
sfrw    ADC12MEM3        = ADC12MEM3_;
#define ADC12MEM4_          0x0148 /* ADC12 Conversion Memory 4 */
sfrw    ADC12MEM4        = ADC12MEM4_;
#define ADC12MEM5_          0x014A /* ADC12 Conversion Memory 5 */
sfrw    ADC12MEM5        = ADC12MEM5_;
#define ADC12MEM6_          0x014C /* ADC12 Conversion Memory 6 */
sfrw    ADC12MEM6        = ADC12MEM6_;
#define ADC12MEM7_          0x014E /* ADC12 Conversion Memory 7 */
sfrw    ADC12MEM7        = ADC12MEM7_;
#define ADC12MEM8_          0x0150 /* ADC12 Conversion Memory 8 */
sfrw    ADC12MEM8        = ADC12MEM8_;
#define ADC12MEM9_          0x0152 /* ADC12 Conversion Memory 9 */
sfrw    ADC12MEM9        = ADC12MEM9_;
#define ADC12MEM10_        0x0154 /* ADC12 Conversion Memory 10 */
sfrw    ADC12MEM10        = ADC12MEM10_;
#define ADC12MEM11_        0x0156 /* ADC12 Conversion Memory 11 */
sfrw    ADC12MEM11        = ADC12MEM11_;
#define ADC12MEM12_        0x0158 /* ADC12 Conversion Memory 12 */
sfrw    ADC12MEM12        = ADC12MEM12_;
#define ADC12MEM13_        0x015A /* ADC12 Conversion Memory 13 */
sfrw    ADC12MEM13        = ADC12MEM13_;
#define ADC12MEM14_        0x015C /* ADC12 Conversion Memory 14 */
sfrw    ADC12MEM14        = ADC12MEM14_;
#define ADC12MEM15_        0x015E /* ADC12 Conversion Memory 15 */
sfrw    ADC12MEM15        = ADC12MEM15_;


/*ADC12存贮控制类寄存器*/
#define ADC12MCTL_          0x0080 /* ADC12 Memory Control */
#ifndef __IAR_SYSTEMS_ICC
#define ADC12MCTL          ADC12MCTL_ /* ADC12 Memory Control (for assembler) */
#else
#define ADC12MCTL          ((char*) ADC12MCTL_) /* ADC12 Memory Control (for C) */
#endif
#define ADC12MCTL0_        ADC12MCTL_ /* ADC12 Memory Control 0 */
sfrb    ADC12MCTL0        = ADC12MCTL0_;
#define ADC12MCTL1_        0x0081 /* ADC12 Memory Control 1 */
sfrb    ADC12MCTL1        = ADC12MCTL1_;
#define ADC12MCTL2_        0x0082 /* ADC12 Memory Control 2 */
sfrb    ADC12MCTL2        = ADC12MCTL2_;
#define ADC12MCTL3_        0x0083 /* ADC12 Memory Control 3 */
sfrb    ADC12MCTL3        = ADC12MCTL3_;
#define ADC12MCTL4_        0x0084 /* ADC12 Memory Control 4 */
sfrb    ADC12MCTL4        = ADC12MCTL4_;
#define ADC12MCTL5_        0x0085 /* ADC12 Memory Control 5 */
sfrb    ADC12MCTL5        = ADC12MCTL5_;
#define ADC12MCTL6_        0x0086 /* ADC12 Memory Control 6 */
sfrb    ADC12MCTL6        = ADC12MCTL6_;
#define ADC12MCTL7_        0x0087 /* ADC12 Memory Control 7 */
sfrb    ADC12MCTL7        = ADC12MCTL7_;
#define ADC12MCTL8_        0x0088 /* ADC12 Memory Control 8 */
sfrb    ADC12MCTL8        = ADC12MCTL8_;
#define ADC12MCTL9_        0x0089 /* ADC12 Memory Control 9 */
sfrb    ADC12MCTL9        = ADC12MCTL9_;
#define ADC12MCTL10_        0x008A /* ADC12 Memory Control 10 */
sfrb    ADC12MCTL10      = ADC12MCTL10_;
#define ADC12MCTL11_        0x008B /* ADC12 Memory Control 11 */
sfrb    ADC12MCTL11      = ADC12MCTL11_;
#define ADC12MCTL12_        0x008C /* ADC12 Memory Control 12 */
sfrb    ADC12MCTL12      = ADC12MCTL12_;
#define ADC12MCTL13_        0x008D /* ADC12 Memory Control 13 */
sfrb    ADC12MCTL13      = ADC12MCTL13_;
#define ADC12MCTL14_        0x008E /* ADC12 Memory Control 14 */
sfrb    ADC12MCTL14      = ADC12MCTL14_;
#define ADC12MCTL15_        0x008F /* ADC12 Memory Control 15 */
sfrb    ADC12MCTL15      = ADC12MCTL15_;


/* ADC12CTL0 内16位控制寄存器位*/
#define ADC12SC            0x001        /*采样/转换控制位*/
#define ENC                0x002        /* 转换允许位*/
#define ADC12TOVIE          0x004        /*转换时间溢出中断允许位*/
#define ADC12OVIE          0x008        /*溢出中断允许位*/
#define ADC12ON            0x010        /*ADC12内核控制位*/
#define REFON              0x020        /*参考电压控制位*/
#define REF2_5V            0x040        /*内部参考电压的电压值选择位 '0'为1.5V; '1'为2.5V*/
#define MSH                0x080        /*多次采样/转换位*/
#define MSC                0x080        /*多次采样/转换位*/
/*SHT0 采样保持定时器0 控制ADC12的结果存贮器MEM0~MEM7的采样周期*/
#define SHT0_0              0*0x100      /*采样周期=TADC12CLK*4 */
#define SHT0_1              1*0x100      /*采样周期=TADC12CLK*8 */
#define SHT0_2              2*0x100      /*采样周期=TADC12CLK*16 */
#define SHT0_3              3*0x100      /*采样周期=TADC12CLK*32 */
#define SHT0_4              4*0x100      /*采样周期=TADC12CLK*64 */
#define SHT0_5              5*0x100      /*采样周期=TADC12CLK*96 */
#define SHT0_6              6*0x100      /*采样周期=TADC12CLK*128 */
#define SHT0_7              7*0x100      /*采样周期=TADC12CLK*192 */
#define SHT0_8              8*0x100      /*采样周期=TADC12CLK*256 */
#define SHT0_9              9*0x100      /*采样周期=TADC12CLK*384 */
#define SHT0_10            10*0x100      /*采样周期=TADC12CLK*512 */
#define SHT0_11            11*0x100      /*采样周期=TADC12CLK*768 */
#define SHT0_12            12*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT0_13            13*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT0_14            14*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT0_15            15*0x100      /*采样周期=TADC12CLK*1024 */
/*SHT1 采样保持定时器1 控制ADC12的结果存贮器MEM8~MEM15的采样周期*/
#define SHT1_0              0*0x100      /*采样周期=TADC12CLK*4 */
#define SHT1_1              1*0x100      /*采样周期=TADC12CLK*8 */
#define SHT1_2              2*0x100      /*采样周期=TADC12CLK*16 */
#define SHT1_3              3*0x100      /*采样周期=TADC12CLK*32 */
#define SHT1_4              4*0x100      /*采样周期=TADC12CLK*64 */
#define SHT1_5              5*0x100      /*采样周期=TADC12CLK*96 */
#define SHT1_6              6*0x100      /*采样周期=TADC12CLK*128 */
#define SHT1_7              7*0x100      /*采样周期=TADC12CLK*192 */
#define SHT1_8              8*0x100      /*采样周期=TADC12CLK*256 */
#define SHT1_9              9*0x100      /*采样周期=TADC12CLK*384 */
#define SHT1_10            10*0x100      /*采样周期=TADC12CLK*512 */
#define SHT1_11            11*0x100      /*采样周期=TADC12CLK*768 */
#define SHT1_12            12*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT1_13            13*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT1_14            14*0x100      /*采样周期=TADC12CLK*1024 */
#define SHT1_15            15*0x100      /*采样周期=TADC12CLK*1024 */



/* ADC12CTL1 内16位控制寄存器位*/
#define ADC12BUSY          0x0001        /*ADC12忙标志位*/
#define CONSEQ_0            0*2          /*单通道单次转换*/
#define CONSEQ_1            1*2          /*序列通道单次转换*/
#define CONSEQ_2            2*2          /*单通道多次转换*/
#define CONSEQ_3            3*2          /*序列通道多次转换*/
#define ADC12SSEL_0          0*8          /*ADC12内部时钟源*/
#define ADC12SSEL_1          1*8          /*ACLK*/
#define ADC12SSEL_2          2*8          /*MCLK*/
#define ADC12SSEL_3          3*8          /*SCLK*/
#define ADC12DIV_0          0*0x20        /*1分频*/
#define ADC12DIV_1          1*0x20        /*2分频*/
#define ADC12DIV_2          2*0x20        /*3分频*/
#define ADC12DIV_3          3*0x20        /*4分频*/
#define ADC12DIV_4          4*0x20        /*5分频*/
#define ADC12DIV_5          5*0x20        /*6分频*/
#define ADC12DIV_6          6*0x20        /*7分频*/
#define ADC12DIV_7          7*0x20        /*8分频*/
#define ISSH                0x0100        /*采样输入信号反向与否控制位*/
#define SHP                  0x0200        /*采样信号(SAMPCON)选择控制位*/
#define SHS_0                0*0x400      /*采样信号输入源选择控制位 ADC12SC*/
#define SHS_1                1*0x400      /*采样信号输入源选择控制位 TIMER_A.OUT1*/
#define SHS_2                2*0x400      /*采样信号输入源选择控制位 TIMER_B.OUT0*/
#define SHS_3                3*0x400      /*采样信号输入源选择控制位 TIMER_B.OUT1*/
/*转换存贮器地址定义位*/
#define CSTARTADD_0          0*0x1000      /*选择MEM0首地址*/
#define CSTARTADD_1          1*0x1000      /*选择MEM1首地址*/
#define CSTARTADD_2          2*0x1000      /*选择MEM2首地址*/
#define CSTARTADD_3          3*0x1000      /*选择MEM3首地址*/
#define CSTARTADD_4          4*0x1000      /*选择MEM4首地址*/
#define CSTARTADD_5          5*0x1000      /*选择MEM5首地址*/
#define CSTARTADD_6          6*0x1000      /*选择MEM6首地址*/
#define CSTARTADD_7          7*0x1000      /*选择MEM7首地址*/
#define CSTARTADD_8          8*0x1000      /*选择MEM8首地址*/
#define CSTARTADD_9          9*0x1000      /*选择MEM9首地址*/
#define CSTARTADD_10        10*0x1000      /*选择MEM10首地址*/
#define CSTARTADD_11        11*0x1000      /*选择MEM11首地址*/
#define CSTARTADD_12        12*0x1000      /*选择MEM12首地址*/
#define CSTARTADD_13        13*0x1000      /*选择MEM13首地址*/     
#define CSTARTADD_14        14*0x1000      /*选择MEM14首地址*/   
#define CSTARTADD_15        15*0x1000      /*选择MEM15首地址*/

/* ADC12MCTLx */
#define INCH_0              0                /*选择模拟量通道0 A0 */
#define INCH_1              1                /*选择模拟量通道0 A1*/
#define INCH_2              2                /*选择模拟量通道0 A2*/
#define INCH_3              3                /*选择模拟量通道0 A3*/
#define INCH_4              4                /*选择模拟量通道0 A4*/
#define INCH_5              5                /*选择模拟量通道0 A5*/
#define INCH_6              6                /*选择模拟量通道0 A6*/
#define INCH_7              7                /*选择模拟量通道0 A7*/
#define INCH_8              8                /*VEREF+*/
#define INCH_9              9                /*VEREF-*/
#define INCH_10            10                /*片内温度传感器的输出*/
#define INCH_11            11                /*(AVCC-AVSS)/2*/
#define INCH_12            12                /*(AVCC-AVSS)/2*/
#define INCH_13            13                /*(AVCC-AVSS)/2*/
#define INCH_14            14                /*(AVCC-AVSS)/2*/
#define INCH_15            15                /*(AVCC-AVSS)/2*/
/*参考电压源选择位*/
#define SREF_0              0*0x10            /*VR+ = AVCC; VR- = AVSS*/
#define SREF_1              1*0x10            /*VR+ = VREF+; VR- = AVSS*/
#define SREF_2              2*0x10            /*VR+ = VEREF+; VR- = AVSS*/
#define SREF_3              3*0x10            /*VR+ = VEREF+; VR- = AVSS*/
#define SREF_4              4*0x10            /*VR+ = AVCC; VR- = VREF-*/
#define SREF_5              5*0x10            /*VR+ = VREF+; VR- = VREF-*/
#define SREF_6              6*0x10            /*VR+ = VEREF+; VR- = VREF-*/
#define SREF_7              7*0x10            /*VR+ = VEREF+; VR- = VREF-*/
#define EOS                0x80              /*序列结束选择位*/


/************************************************************
* Interrupt Vectors (offset from 0xFFE0) 16个中断矢量定义
************************************************************/


//#define BASICTIMER_VECTOR 0 * 2 /* 0xFFE0 Basic Timer MSP430F149 没有*/
#define PORT2_VECTOR        1 * 2 /* 0xFFE2 Port 2 */
#define UART1TX_VECTOR      2 * 2 /* 0xFFE4 UART 1 Transmit */
#define UART1RX_VECTOR      3 * 2 /* 0xFFE6 UART 1 Receive */
#define PORT1_VECTOR        4 * 2 /* 0xFFE8 Port 1 */
#define TIMERA1_VECTOR      5 * 2 /* 0xFFEA Timer A CC1-2, TA */
#define TIMERA0_VECTOR      6 * 2 /* 0xFFEC Timer A CC0 */
#define ADC_VECTOR          7 * 2 /* 0xFFEE ADC */
#define UART0TX_VECTOR      8 * 2 /* 0xFFF0 UART 0 Transmit */
#define UART0RX_VECTOR      9 * 2 /* 0xFFF2 UART 0 Receive */
#define WDT_VECTOR          10 * 2 /* 0xFFF4 Watchdog Timer */
#define COMPARATORA_VECTOR 11 * 2 /* 0xFFF6 Comparator A */
#define TIMERB1_VECTOR      12 * 2 /* 0xFFF8 Timer B 1-6 */
#define TIMERB0_VECTOR      13 * 2 /* 0xFFFA Timer B 0 */
#define NMI_VECTOR          14 * 2 /* 0xFFFC Non-maskable */
#define RESET_VECTOR        15 * 2 /* 0xFFFE Reset [Highest Priority] */


/************************************************************
* End of Modules
************************************************************/

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
0
关闭 站长推荐上一条 /2 下一条