📄 main.c
字号:
/*****************************************************************************\
文件名:main.c
编写者:czhang
描述:MSP430非行列式键盘。适用于MSP430F149,其他型号的需要适当改变。
使用P1.5、P1.6、P1.7三个I/O口接按键。
版本:1.0 2004-5-10
\*****************************************************************************/
#include <MSP430x14x.h>
#include "key.h"
#include "df_timera.h"
#include "df_uart.h"
void InitSys();
int main( void )
{
unsigned char key[2];
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
InitSys(); //初始化
start:
key[0]=GetKeyZhi(&key[1]); //读键值和按键次数
if(key[0]!=KEY_NONE)
{
//按键处理,本例中为通过USART0发送键值和按键次数
SendUart(key,2); //若有键按下,发送键值和按键次数
}
LPM3;
goto start;
}
/*****************************************************************************
系统初始化
******************************************************************************/
void InitSys()
{
unsigned int iq0;
//使用XT2振荡器
BCSCTL1&=~XT2OFF; //打开XT2振荡器
do
{
IFG1 &= ~OFIFG; // 清除振荡器失效标志
for (iq0 = 0xFF; iq0 > 0; iq0--); // 延时,等待XT2起振
}
while ((IFG1 & OFIFG) != 0); // 判断XT2是否起振
BCSCTL2 =SELM_2+SELS; //选择MCLK、SMCLK为XT2
InitKey(); //初始化按键端口
TimerAInit(); //初始化定时器A
UartInit(); //初始化串行口
_EINT(); //打开全局中断控制,若不需要打开,可以屏蔽本句
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -