昨日下了一下的IAR今天才完全装好。
早上写了流水灯的比如,算是入门msp430的榜首程序。
下午写了按键操控led灯,一向不成功,参照了例程仍是不可,例程是用中止的,不理解,仍是今后在看啊。后来google了一下,才知道,按键在作为IN的时分,需要使能上接电阻,就因为这纠结了良久,期望其他的朋友不要犯这过错啊~~~
datasheet上的话:Ifthepinspullup/pulldownresistorisenabled,thecorrespondingbitinthePxOUTregisterselectspulluporpulldown
Bit0pulleddown
Bit1ppulledup
附程序
#include
#defineuintunsignedint
#defineucharunsignedchar
voidmain(void)
{
volatileuinti;
WDTCTL=WDTPW+WDTHOLD;//Stopwatchdogtimer
if(CALBC1_1MHZ==0xFF||CALDCO_1MHZ==0xFF)
{
while(1);//Ifcalibrationconstantserased,trapCPU!!
}
//ConfigureBasicClock
BCSCTL1=CALBC1_1MHZ;//Setrange
DCOCTL=CALDCO_1MHZ;//SetDCOstep+modulation
BCSCTL3|=LFXT1S_2;//SetLFXT1
//P1DIR=BIT6;//P1.6output(greenLED)
//P1DIR=0xFF;//P1.6output(greenLED)
P1DIR=0xF7;//11110111
P1REN|=0x08;//pullup
P1OUT|=0x00;//pullup
P1IES|=0x08;//hitoloedge
P1IE|=0x08;//Enableinterrupt
P1IFG&=~0x08;//Clearflag
IFG1&=~OFIFG;//ClearOSCFaultflag
BCSCTL2|=SELM_1+DIVM_0;//SetMCLK
for(;;)
{
if((P1IN&BIT3)==BIT3)
P1OUT^=BIT0;//P1.0on(redLED)
else
P1OUT^=BIT6;//P1.6on(greenLED)
}
}
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/guandian/258725.html