- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MSP430框架程序
《 MSP430框架程序 》
2012.7.19 XXX 整理
教训:
1.程序的模块化设计很重要。每次写程序,最好遵循如下规矩:
关看门狗;WDTCTL=WDTPW+WDTHOLD;
开晶振:都把ACLK= XT1(32k),MCLK=SMCLK=XT2(8M);并且能用8M最好用8M,这样比较准确。
晶振的检测方法:XT2可以通过程序中的扫描标志位实现。或者设置P1.4(SMCLK),P2.0(ACLK),然后用示波器检查
主程序:使用自己写的模板。
2.如果在一个问题上卡住了,就不断细化深入下去,直到触到其本质,就看你能把这个问题细化到什么程度!
3.任何数字或信息都有他隐含的本质信息,都能直接或间接反映其本质。就看你能否抓住这个数字,想到他对本质的反映。
/*********************************************************************
程序名:MSP430框架程序
描 述:适用于MSP430F149,其他型号需要适当修改
规 范:变量小写,常量大写,函数名第一个字母大写
*********************************************************************/
//header file
#include msp430x14x.h
//函数声明
void Init_Sys();
int main(void){
WDTCTL = WDTPW +WDTHOLD; //Stop WDT
Init_Sys(); //初始化
start:
//用户程序
LPMn;
//_BIS_SR(LPM3_bits + GIE); //进入低功耗模式n(n:0~4),不需要可以屏蔽
goto start;
}
/*******************************************************************
程序功能:系统初始化
********************************************************************/
void Init_Sys(){
//将MCLK时钟从DCO切换到高频晶体振荡器
BCSCTL1 = ~XT2OFF; //XT2=HF XTAL
do{
unsigned char i;
IFG1 |= ~OFIFG; //Clear OSCFault flag
for(i=0xff;i0;i--); //Time for flag to set
}
while((IFG1 OFIFG)); //OSCFault flag still set?
BCSCTL2 |= SELM_2 + SELS; //MCLK=SMCLK=XT2(safe)
//一下初始化各种模块、中断、外围设备
__EINT(); //OPEN GIE 不需要可以屏蔽
}
/*******************************************************************
函数名称:端口Px(x:1 or 2)中断函数
*******************************************************************/
#pragma vector=PORT2_VECTOR
__interrupt void Port2(){
//参考处理程序,不用的端口应当删除其对于中断源的判断
if((PxIFG BIT0) == BIT0){
//处理Px.0中断
P2IFG = ~BIT0; //清除中断标志
//Users program
}
else if((PxIFG BIT1) == BIT1){
//处理Px.1中断
P2IFG = ~BIT1; //清除中断标志
//Users program
}
else if((PxIFG BIT3) == BIT3){
//处理Px.3中断
P2IFG = ~BIT3; //清除中断标志
//Users program
}
else if((PxIFG BIT4) == BIT4){
//处理Px.4中断
P2IFG = ~BIT4; //清除中断标志
您可能关注的文档
- 自考心理学重点笔记第6节.doc
- highcharts属性介绍.doc
- g单元评价检测.docx
- homework2_2015fall副本.docx
- IADC100句.doc
- 三年级数学智力开发题2.doc
- FPGA报告3.doc
- ISOTS16949五大工具培训练习题.doc
- FDM频分复用实验报告.docx
- java十题.doc
- 精品解析:四川省成都石室蜀都中学2022-2023学年高一下学期培优考试化学试题(原卷版).docx
- 2025年宠物医院线上手术远程指导平台运营成本控制策略.docx
- 二年级劳动与技术课件.pptx
- 2025年冷链物流新能源电动冷藏车技术发展趋势报告.docx
- 2025年新能源汽车充电网络互联互通与标准制定策略规划报告.docx
- 基于物理仿真的虚拟试衣系统:技术、应用与展望.docx
- 2025年新能源换电站区域化布局对区域环境保护报告.docx
- 反义词课件(幼儿园).pptx
- 2025年基因编辑技术在罕见病治疗中的应用创新案例研究.docx
- 精品解析:四川省成都石室蜀都中学2022-2023学年高一下学期期末考试化学试题(解析版).docx
文档评论(0)