因仑“3+1”工程特种兵精英论坛

标题: MSP430常用程序架构 [打印本页]

作者: leixiaofeng    时间: 2015-5-31 16:51
标题: MSP430常用程序架构
一、低功耗+中断

主函数

{

关闭看门狗

设置系统时钟

显示等外围设备初始化

定时器等内部资源初始化设置

开全局中断

进入低功耗

}

中断函数1

{};

中断函数2

{}

文件组织形式
main.c

/***************************头文件引用*******************************/

#include "msp430f149.h"

设备文件1头文件(例如#include "ILI9325_Driver.h"

设备文件2头文件(例如#include "Disp_Lib.h"

/*********************宏定义与数据定义*************************************/

#define YEAR   TimeBuff[0]

unsigned char  TimeBuff[7]={11,6,27,8,35,0,7};

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

函数名称:Sys_Init

功    能:设置系统时钟,内部资源和外设初始化。(例如完成TFT初始化

显示,定时器A初始化)

参    数:无

返 回 值:无

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

int main(void)

{

  Sys_Init();

  _EINT();                        //使能全局中断

  LPM3;//进入睡眠模式,等待被唤醒

}

#pragma vector = TIMERA0_VECTOR       //CCR0中断服务

__interrupt void ta0_isr(void)

{};


设备文件1(例如ILI9325_Drive.c)

/*********************头文件引用************************************/

#include "msp430f149.h"

#include "ILI9325_Driver.h"

#include "Disp_Lib.h"

/*********************定义接口信息************************************/

#define ILI9325_CTRL_DIR               P4DIR

#define ILI9325_CTRL_SEL               P4SEL

函数1()

{};

函数2()

{};


设备文件1头文件(例如ILI9325_Drive.h)

#ifndef _ILI9325_DRIVER_H_防止重复调用

#define _ILI9325_DRIVER_H_

/*********************宏定义************************************/

#define CYAN           0x7FFF//青色

#define YELLOW         0xFFE0

#define TEST           0xFF55

/*********************函数申明************************************/

extern void LCD_DispOnePixel(unsigned int xAddr,unsigned int yAddr,unsigned long color);

extern void LCD_ClearScreen(unsigned long bColor);

#endif


二、循环+低功耗+中断中唤醒

主函数

{

关闭看门狗

设置系统时钟

显示等外围设备初始化

定时器等内部资源初始化设置

开全局中断

While(1)

{

       进入低功耗

       函数;

}

}

中断函数1

{

       中断服务函数;

       退出低功耗模式;

};


三、菜单按键交互模式

while1

{

扫描按键;

键值处理函数;

}

键值处理函数

{

    swich(键值)

case ……

显示刷新

}





欢迎光临 因仑“3+1”工程特种兵精英论坛 (http://bbs.enlern.com/) Powered by Discuz! X3.4