- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
MSP430单片机的框架程序
MSP430单片机的框架程序(转)下面给出MSP430的程序框架,我们可以在此基础上修改以及添加自己所需的程序。
/*****************************************************************************
文件名:main.c
描述:MSP430框架程序。适用于MSP430F149,其他型号需要适当改变。
不使用的中断函数保留或者删除都可以,但保留时应确保不要打开不需要的中断。保留中断函数,编译器将会为BSL密码填充所有的字节。
版本:1.02005-1-13
*****************************************************************************/
//头文件
#includeMSP430x14x.h
//函数声明voidInitSys();
intmain(void)
{
WDTCTL=WDTPW+WDTHOLD; //关闭看门狗
InitSys(); //初始化start:
//以下填充用户代码
LPM3; //进入低功耗模式n,n:0~4。若不希望进入低功耗模式,屏蔽本句gotostart;
}
/*****************************************************************************
系统初始化
******************************************************************************/voidInitSys()
{
unsignedintiq0;
//使用XT2振荡器
BCSCTL1=~XT2OFF; //打开XT2振荡器do
{
IFG1=~OFIFG; //清除振荡器失效标志
for(iq0=0xFF;iq00;iq0--); //延时,等待XT2起振
}
while((IFG1OFIFG)!=0); //判断XT2是否起振BCSCTL2=SELM_2+SELS; //选择MCLK、SMCLK为XT2
//以下填充用户代码,对各种模块、中断、外围设备等进行初始化
_EINT();//打开全局中断控制,若不需要打开,可以屏蔽本句
}
/*****************************************************************************
端口2中断函数
******************************************************************************/#pragmavector=PORT2_VECTOR
interruptvoidPort2()
{
//以下为参考处理程序,不使用的端口应当删除其对于中断源的判断。if((P2IFGBIT0)==BIT0)
{
//处理P2IN.0中断
P2IFG=~BIT0;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT1)==BIT1)
{
//处理P2IN.1中断
P2IFG=~BIT1;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT2)==BIT2)
{
//处理P2IN.2中断
P2IFG=~BIT2;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT3)==BIT3)
{
//处理P2IN.3中断
P2IFG=~BIT3;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT4)==BIT4)
{
//处理P2IN.4中断
P2IFG=~BIT4;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT5)==BIT5)
{
//处理P2IN.5中断
P2IFG=~BIT5;//清除中断标志
//以下填充用户代码
}
elseif((P2IFGBIT6)==BIT6)
{
//处理P2IN.6中断
P2IFG=~BIT6;//清除中断标志
//以下填充用户代码
}
else
{
//处理P2IN.7中断
P2IFG=~BIT7;//清除中断标志
//以下填充用户代码
}
LPM3_EXIT;//退出中断后退出低功耗模式。若退出中断后要保留低功耗模式,将本句屏蔽
}
/**********
您可能关注的文档
- mcgsTpc U盘综合功能包使用说明.docx
- ME113《C程序设计与实践》课程教学大纲V3.docx
- MediaCoder通用转码实用教程.docx
- Medicom医用手套简介及性能.docx
- Meetmyfamily公开课教案分析和总结.docx
- Meetmyfamily教学设计分析和总结.docx
- memorise s method分析和总结分析和总结.docx
- MEMS热电堆红外探测器的结构设计及制造研究.docx
- MES实施注意事项.docx
- Metallica的艺人档案分析和总结.docx
- 新的一年工作展望.docx
- 医生年终个人工作的述职报告(3篇).docx
- 2023年消防设施操作员之消防设备中级技能考前冲刺练习题附答案详解.docx
- 2022-2023年环境影响评价工程师之环评技术导则与标准通关练习题包括详细解答.docx
- 2023年中级注册安全工程师之安全生产管理考前冲刺检测卷和答案.docx
- 2023年中级银行从业资格之中级银行管理考前冲刺测试卷提供答案解析.docx
- 2023年公共营养师之二级营养师通关模拟考试试卷附带答案.docx
- 证券分析师之发布证券研究报告业务考前冲刺模拟题库.docx
- 2022-2023年二级建造师之二建建设工程法规及相关知识综合提升测试卷附答案.docx
- 2023年二级建造师之二建机电工程实务通关模拟考试试卷提供答案解析.docx
文档评论(0)