在proteus中使用MSP430时出现简单LED闪烁问题
当我连接LED时,蓝色方块变为灰色,而不是红色,但在未连接任何东西时,它工作。电压表显示为5V,但应为3.6V,msp输出的电压始终小于LED上的电压降,即当电压为2.2V时,msp输出的电压为2.1,然后我变为0.8,所以显示了0.7的电压。我做错了什么在proteus中使用MSP430时出现简单LED闪烁问题,msp430,proteus,Msp430,Proteus,当我连接LED时,蓝色方块变为灰色,而不是红色,但在未连接任何东西时,它工作。电压表显示为5V,但应为3.6V,msp输出的电压始终小于LED上的电压降,即当电压为2.2V时,msp输出的电压为2.1,然后我变为0.8,所以显示了0.7的电压。我做错了什么 #include <msp430.h> /** * blink.c */ void main(void) { WDTCTL = WDTPW | WDTHOLD; // stop
#include <msp430.h>
/**
* blink.c
*/
void main(void)
{
WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
P1DIR |= 0x01; // configure P1.0 as output
volatile unsigned int i; // volatile to prevent optimization
while(1)
{
P1OUT ^= 0x01; // toggle P1.0
for(i=10000; i>0; i--); // delay
}
}
#包括
/**
*眨眼
*/
真空总管(真空)
{
WDTCTL=WDTPW | WDTHOLD;//停止看门狗定时器
P1DIR |=0x01;//将P1.0配置为输出
volatile unsigned int i;//volatile防止优化
而(1)
{
P1OUT^=0x01;//切换P1.0
对于(i=10000;i>0;i--);//延迟
}
}
代码是正确的。显然,模拟是不正确的。