欢迎来到天天文库
浏览记录
ID:40874513
大小:20.70 KB
页数:8页
时间:2019-08-09
《程序应用笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MSP430单片机的框架程序下面给出MSP430的程序框架,我们可以在此基础上修改以及添加自己所需的程序。文件名:main.c描述:MSP430框架程序。适用于MSP430F149,其他型号需要适当改变。不使用的中断函数保留或者删除都可以,但保留时应确保不要打开不需要的中断.保留中断函数,编译器将会为BSL密码填充所有的字节。*****************************************************************************/#include//头文件voidInitSys();//函数声明intmain(void)
2、{WDTCTL=WDTPW+WDTHOLD;//关闭看门狗InitSys();//初始化start://以下填充用户代码………LPM3;//进入低功耗模式n,n:0~4。若不希望进入低功耗模式,屏蔽本句gotostart;}/***************************************************************************/voidInitSys()//系统初始化{unsignedintiq0;//使用XT2振荡器BCSCTL1&=~XT2OFF;//打开XT2振荡器do{IFG1&=~OFIFG;//清除振荡器失效标志
3、for(iq0=0xFF;iq0>0;iq0--);//延时,等待XT2起振}while((IFG1&OFIFG)!=0);//判断XT2是否起振BCSCTL2=SELM_2+SELS;//选择MCLK、SMCLK为XT2//以下填充用户代码,对各种模块、中断、外围设备等进行初始化_EINT();//打开全局中断控制,若不需要打开,可以屏蔽本句}/*********************************************************************/端口2中断函数#pragmavector=PORT2_VECTOR__interrupt
4、voidPort2(){//以下为参考处理程序,不使用的端口应当删除其对于中断源的判断if((P2IFG&BIT0)==BIT0)//处理P2IN.0中断{P2IFG&=~BIT0;//清除中断标志//以下填充用户代码}elseif((P2IFG&BITi)==BITi){//处理P2IN.i中断(1
5、*****************************************************************/USART1发送中断函数#pragmavector=USART1TX_VECTOR__interruptvoidUsart1Tx(){//以下填充用户代码LPM3_EXIT;//退出中断后退出低功耗模式。若退出中断后要保留低功耗模式,将本句屏蔽}/**********************************************************************/USART1接收中断函数#pragmavector=US
6、ART1RX_VECTOR__interruptvoidUstra1Rx(){//以下填充用户代码LPM3_EXIT;//退出中断后退出低功耗模式。若退出中断后要保留低功耗模式,将本句屏蔽}/*************************************************************************端口1中断函数多中断中断源:P1IFG.0~P1IFG7进入中断后应首先判断中断源,退出中断前应清除中断标志,否则将再次引发中断********************************************************
7、******************#pragmavector=PORT1_VECTOR__interruptvoidPort1(){//以下为参考处理程序,不使用的端口应当删除其对于中断源的判断。if((P1IFG&BIT0)==BIT0){//处理P1IN.0中断P1IFG&=~BIT0;//清除中断标志//以下填充用户代码}elseif((P1IFG&BITi)==BITi){//处理P1IN.1中断P1IFG&=~BITi;//清除中断标志//以下填充用户代码}else{//处理P1IN.7中断P1IFG&=~BIT7
此文档下载收益归作者所有