#include
void delay(long int n)
{
long int i,j;
for(i=n;i>0;i--)
for(j=11000;j>0;j--);
}
void main(void)
{
WDTCTL=WDTPW+WDTHOLD;
P1DIR |= (1<<0)+(1<<6);
P1REN |= (1<<0)+(1<<6);
while(1)
{
P1OUT&=0xbe;
delay(2000);
P1OUT|=0xff;
delay(2000);
}
}
目的是想让 LaunchPad 上的两个LED交替闪烁,可实际上却是两个灯一直亮着。这是什么原因。而且我在用CCS调试的时候,所有的寄存器都显示 can't be read ?谢谢各位了、
#include
void main(void)
{
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0;
P1DIR |= BIT6;
for(;;)
{
unsigned int i;
i=50000;
P1OUT = BIT0;
while(i--);
P1OUT = BIT6;
while(i--);
}
}
试试我这个吧
回复 沙发 hj-yk 的帖子
表示你这个只有一个灯亮(跟P1.6连着的那个灯)
回复 板凳 阿亮tml 的帖子
不是吧,我这就是交替显示,G2553的芯片
回复 4楼 hj-yk 的帖子
程序我明白,可是实际的效果就是只有一个灯亮,我也不知道怎么回事。会不会是我没有焊上那个32768HZ的晶振?
二楼那个程序第二个while前是不是要再次给i付值啊
回复 7楼 cs123cs123 的帖子
的确额 这个程序有问题的
这个可以闪烁??
#include "msp430g2553.h"
void main(void)
{
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0;
P1DIR |= BIT6;
for(;;)
{
unsigned int i;
i=50000;
P1OUT = BIT0;
while(i--);
i=50000;
P1OUT = BIT6;
while(i--);
}
}
做了一下改动,这个可以交替闪
回复 10楼 cs123cs123 的帖子
这样啊。。可能是我的板子有点问题吧、。、、