📄 msp430f149-
字号:
#include "msp430x14x.h"
void sys_init()
{
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
BCSCTL2 &=0xc0; //XT2CLK+2分频
}
void io_init()
{
P4DIR=0xff;
P5DIR=0xf0;
P6DIR=0xfc;
P4OUT=0xff;
}
int key(int c)
{
if (!(P1IN&BIT0))
c+=1;
else if (!(P1IN&BIT1))
c+=2;
else if (!(P1IN&BIT2))
c+=3;
else if (!(P1IN&BIT3))
c+=4;
else c=0;
return c;
}
void main()
{
int a;
unsigned char b[17]={0xff,0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
0x88,0x83,0xc6,0xa1,0x86,0x8e};//0-f段选信号,共阳
sys_init();
io_init();
while (1)
{
a=0;
P5OUT=~BIT4;
a+=key(0);
P5OUT=~BIT5;//拉低P2.1
a+=key(4); //读取当时键值
P5OUT=~BIT6;//拉低P2.2
a+=key(8); //读取当时键值
P5OUT=~BIT7;//拉低P2.2
a+=key(12); //读取当时键值
P6OUT=0x04;
P4OUT=b[a];
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -