MSP430X41X头文件定义.docx

上传人:b****7 文档编号:10271919 上传时间:2023-02-09 格式:DOCX 页数:30 大小:21.75KB
下载 相关 举报
MSP430X41X头文件定义.docx_第1页
第1页 / 共30页
MSP430X41X头文件定义.docx_第2页
第2页 / 共30页
MSP430X41X头文件定义.docx_第3页
第3页 / 共30页
MSP430X41X头文件定义.docx_第4页
第4页 / 共30页
MSP430X41X头文件定义.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

MSP430X41X头文件定义.docx

《MSP430X41X头文件定义.docx》由会员分享,可在线阅读,更多相关《MSP430X41X头文件定义.docx(30页珍藏版)》请在冰豆网上搜索。

MSP430X41X头文件定义.docx

MSP430X41X头文件定义

MSP430X41X头文件(定义)

/********************************************************************

*

*StandardregisterandbitdefinitionsfortheTexasInstruments

*MSP430microcontroller.

*

*ThisfilesupportsassemblerandCdevelopmentfor

*MSP430x41xdevices.

*

*TexasInstruments,Version2.4

*

*Rev.1.1,Removedleading0toaviodinterpretationasoctal

*valuesunderC

*Includedratherthan"In430.h"

*Rev.1.2,CorrectedLPMx_EXITtoreferencenewintrinsic_BIC_SR_IRQ

*ChangedTAIVtoberead-only

*Rev.1.3,Encloseall#definestatementswithparentheses

*Rev.1.4,Removedincorrectlabel'BTRESET'

*AddedmissinglabelsforFLL

*Rev.2.1,FixeddefinitionofFLL_DIV0andFLL_DIV1

*AlignmentofdefintionsinUsersGuideandofversionnumbers

*Rev.2.11,RemoveddefinitionofLCDLOWR(notavailableat4xxdevices)

*Rev.2.2,RemovedunuseddefofTASSEL2

*Rev.2.3,RemoveddefinitionsforBTRESET

*Rev.2.4,addeddefinitionsforInterruptVectorsxxIV

*

********************************************************************/

#ifndef__msp430x41x

#define__msp430x41x

#ifdef__IAR_SYSTEMS_ICC__

#ifndef_SYSTEM_BUILD

#pragmasystem_include

#endif

#endif

#if(((__TID__>>8)&0x7F)!

=0x2b)/*0x2b=43dec*/

#errormsp430x41x.hfileforusewithICC430/A430only

#endif

 

#ifdef__IAR_SYSTEMS_ICC__

#include

#pragmalanguage=extended

#defineDEFC(name,address)__no_initvolatileunsignedcharname@address;

#defineDEFW(name,address)__no_initvolatileunsignedshortname@address;

#defineDEFXCvolatileunsignedchar

#defineDEFXWvolatileunsignedshort

#endif/*__IAR_SYSTEMS_ICC__*/

#ifdef__IAR_SYSTEMS_ASM__

#defineDEFC(name,address)sfrbname=address;

#defineDEFW(name,address)sfrwname=address;

#endif/*__IAR_SYSTEMS_ASM__*/

#ifdef__cplusplus

#defineREAD_ONLY

#else

#defineREAD_ONLYconst

#endif

/************************************************************

*STANDARDBITS

************************************************************/

#defineBIT0(0x0001)

#defineBIT1(0x0002)

#defineBIT2(0x0004)

#defineBIT3(0x0008)

#defineBIT4(0x0010)

#defineBIT5(0x0020)

#defineBIT6(0x0040)

#defineBIT7(0x0080)

#defineBIT8(0x0100)

#defineBIT9(0x0200)

#defineBITA(0x0400)

#defineBITB(0x0800)

#defineBITC(0x1000)

#defineBITD(0x2000)

#defineBITE(0x4000)

#defineBITF(0x8000)

/************************************************************

*STATUSREGISTERBITS

************************************************************/

#defineC(0x0001)

#defineZ(0x0002)

#defineN(0x0004)

#defineV(0x0100)

#defineGIE(0x0008)

#defineCPUOFF(0x0010)

#defineOSCOFF(0x0020)

#defineSCG0(0x0040)

#defineSCG1(0x0080)

/*LowPowerModescodedwithBits4-7inSR*/

#ifndef__IAR_SYSTEMS_ICC/*Begin#definesforassembler*/

#defineLPM0(CPUOFF)

#defineLPM1(SCG0+CPUOFF)

#defineLPM2(SCG1+CPUOFF)

#defineLPM3(SCG1+SCG0+CPUOFF)

#defineLPM4(SCG1+SCG0+OSCOFF+CPUOFF)

/*End#definesforassembler*/

#else/*Begin#definesforC*/

#defineLPM0_bits(CPUOFF)

#defineLPM1_bits(SCG0+CPUOFF)

#defineLPM2_bits(SCG1+CPUOFF)

#defineLPM3_bits(SCG1+SCG0+CPUOFF)

#defineLPM4_bits(SCG1+SCG0+OSCOFF+CPUOFF)

#include

#defineLPM0_BIS_SR(LPM0_bits)/*EnterLowPowerMode0*/

#defineLPM0_EXIT_BIC_SR_IRQ(LPM0_bits)/*ExitLowPowerMode0*/

#defineLPM1_BIS_SR(LPM1_bits)/*EnterLowPowerMode1*/

#defineLPM1_EXIT_BIC_SR_IRQ(LPM1_bits)/*ExitLowPowerMode1*/

#defineLPM2_BIS_SR(LPM2_bits)/*EnterLowPowerMode2*/

#defineLPM2_EXIT_BIC_SR_IRQ(LPM2_bits)/*ExitLowPowerMode2*/

#defineLPM3_BIS_SR(LPM3_bits)/*EnterLowPowerMode3*/

#defineLPM3_EXIT_BIC_SR_IRQ(LPM3_bits)/*ExitLowPowerMode3*/

#defineLPM4_BIS_SR(LPM4_bits)/*EnterLowPowerMode4*/

#defineLPM4_EXIT_BIC_SR_IRQ(LPM4_bits)/*ExitLowPowerMode4*/

#endif/*End#definesforC*/

/************************************************************

*PERIPHERALFILEMAP

************************************************************/

/************************************************************

*SPECIALFUNCTIONREGISTERADDRESSES+CONTROLBITS

************************************************************/

#defineIE1_(0x0000)/*InterruptEnable1*/

DEFC(IE1,IE1_)

#defineWDTIE(0x01)

#defineOFIE(0x02)

#defineNMIIE(0x10)

#defineACCVIE(0x20)

#defineIFG1_(0x0002)/*InterruptFlag1*/

DEFC(IFG1,IFG1_)

#defineWDTIFG(0x01)

#defineOFIFG(0x02)

#defineNMIIFG(0x10)

#defineIE2_(0x0001)/*InterruptEnable2*/

DEFC(IE2,IE2_)

#defineBTIE(0x80)

#defineIFG2_(0x0003)/*InterruptFlag2*/

DEFC(IFG2,IFG2_)

#defineBTIFG(0x80)

/************************************************************

*WATCHDOGTIMER

************************************************************/

#define__MSP430_HAS_WDT__/*DefinitiontoshowthatModuleisavailable*/

#defineWDTCTL_(0x0120)/*WatchdogTimerControl*/

DEFW(WDTCTL,WDTCTL_)

/*Thebitnameshavebeenprefixedwith"WDT"*/

#defineWDTIS0(0x0001)

#defineWDTIS1(0x0002)

#defineWDTSSEL(0x0004)

#defineWDTCNTCL(0x0008)

#defineWDTTMSEL(0x0010)

#defineWDTNMI(0x0020)

#defineWDTNMIES(0x0040)

#defineWDTHOLD(0x0080)

#defineWDTPW(0x5A00)

/*WDT-intervaltimes[1ms]codedwithBits0-2*/

/*WDTisclockedbyfSMCLK(assumed1MHz)*/

#defineWDT_MDLY_32(WDTPW+WDTTMSEL+WDTCNTCL)/*32msinterval(default)*/

#defineWDT_MDLY_8(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0)/*8ms"*/

#defineWDT_MDLY_0_5(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1)/*0.5ms"*/

#defineWDT_MDLY_0_064(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1+WDTIS0)/*0.064ms"*/

/*WDTisclockedbyfACLK(assumed32KHz)*/

#defineWDT_ADLY_1000(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL)/*1000ms"*/

#defineWDT_ADLY_250(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS0)/*250ms"*/

#defineWDT_ADLY_16(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1)/*16ms"*/

#defineWDT_ADLY_1_9(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)/*1.9ms"*/

/*Watchdogmode->resetafterexpiredtime*/

/*WDTisclockedbyfSMCLK(assumed1MHz)*/

#defineWDT_MRST_32(WDTPW+WDTCNTCL)/*32msinterval(default)*/

#defineWDT_MRST_8(WDTPW+WDTCNTCL+WDTIS0)/*8ms"*/

#defineWDT_MRST_0_5(WDTPW+WDTCNTCL+WDTIS1)/*0.5ms"*/

#defineWDT_MRST_0_064(WDTPW+WDTCNTCL+WDTIS1+WDTIS0)/*0.064ms"*/

/*WDTisclockedbyfACLK(assumed32KHz)*/

#defineWDT_ARST_1000(WDTPW+WDTCNTCL+WDTSSEL)/*1000ms"*/

#defineWDT_ARST_250(WDTPW+WDTCNTCL+WDTSSEL+WDTIS0)/*250ms"*/

#defineWDT_ARST_16(WDTPW+WDTCNTCL+WDTSSEL+WDTIS1)/*16ms"*/

#defineWDT_ARST_1_9(WDTPW+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)/*1.9ms"*/

/*INTERRUPTCONTROL*/

/*ThesetwobitsaredefinedintheSpecialFunctionRegisters*/

/*#defineWDTIE0x01*/

/*#defineWDTIFG0x01*/

/************************************************************

*DIGITALI/OPort1/2

************************************************************/

#define__MSP430_HAS_PORT1__/*DefinitiontoshowthatModuleisavailable*/

#define__MSP430_HAS_PORT2__/*DefinitiontoshowthatModuleisavailable*/

#defineP1IN_(0x0020)/*Port1Input*/

READ_ONLYDEFC(P1IN,P1IN_)

#defineP1OUT_(0x0021)/*Port1Output*/

DEFC(P1OUT,P1OUT_)

#defineP1DIR_(0x0022)/*Port1Direction*/

DEFC(P1DIR,P1DIR_)

#defineP1IFG_(0x0023)/*Port1InterruptFlag*/

DEFC(P1IFG,P1IFG_)

#defineP1IES_(0x0024)/*Port1InterruptEdgeSelect*/

DEFC(P1IES,P1IES_)

#defineP1IE_(0x0025)/*Port1InterruptEnable*/

DEFC(P1IE,P1IE_)

#defineP1SEL_(0x0026)/*Port1Selection*/

DEFC(P1SEL,P1SEL_)

#defineP2IN_(0x0028)/*Port2Input*/

READ_ONLYDEFC(P2IN,P2IN_)

#defineP2OUT_(0x0029)/*Port2Output*/

DEFC(P2OUT,P2OUT_)

#defineP2DIR_(0x002A)/*Port2Direction*/

DEFC(P2DIR,P2DIR_)

#defineP2IFG_(0x002B)/*Port2InterruptFlag*/

DEFC(P2IFG,P2IFG_)

#defineP2IES_(0x002C)/*Port2InterruptEdgeSelect*/

DEFC(P2IES,P2IES_)

#defineP2IE_(0x002D)/*Port2InterruptEnable*/

DEFC(P2IE,P2IE_)

#defineP2SEL_(0x002E)/*Port2Selection*/

DEFC(P2SEL,P2SEL_)

/************************************************************

*DIGITALI/OPort3/4

************************************************************/

#define__MSP430_HAS_PORT3__/*DefinitiontoshowthatModuleisavailable*/

#define__MSP430_HAS_PORT4__/*DefinitiontoshowthatModuleisavailable*/

#defineP3IN_(0x0018)/*Port3Input*/

READ_ONLYDEFC(P3IN,P3IN_)

#defineP3OUT_(0x0019)/*Port3Output*/

DEFC(P3OUT,P3OUT_)

#defineP3DIR_(0x001A)/*Port3Direction*/

DEFC(P3DIR,P3DIR_)

#defineP3SEL_(0x001B)/*Port3Selection*/

DEFC(P3SEL,P3SEL_)

#defineP4IN_(0x001C)/*Port4Input*/

READ_ONLYDEFC(P4IN,P4IN_)

#defineP4OUT_(0x001D)/*Port4Output*/

DEFC(P4OUT,P4OUT_)

#defineP4DIR_(0x001E)/*Port4Direction*/

DEFC(P4DIR,P4DIR_)

#defineP4SEL_(0x001F)/*Port4Selection*/

DEFC(P4SEL,P4SEL_)

/************************************************************

*DIGITALI/OPort5/6

************************************************************/

#define__MSP430_HAS_PORT5__/*DefinitiontoshowthatModuleisavailable*/

#define__MSP430_HAS_PORT6__/*DefinitiontoshowthatModuleisavailable*/

#defineP5IN_(0x0030)/*Port5Input*/

READ_ONLYDEFC(P5IN,P5IN_)

#defineP5OUT_(0x0031)/*Port5Output*/

DEFC(P5OUT,P5OUT_)

#defineP5DIR_(0x0032)/*Port5Direction*/

DEFC(P5DIR,P5DIR_)

#defineP5SEL_(0x0033)/*Port5Selection*/

DEFC(P5SEL,P5SEL_)

#defineP6IN_(0x0034)/*Port6Input*/

READ_ONLYDEFC(P6IN,P6IN_)

#defineP6OUT_(0x0035)/*Port6Output*/

DEFC(P6OUT,P6OUT_)

#defineP6DIR_(0x0036)/*Port6Direction*/

DEFC(P6DIR,P6DIR

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1