编译的时候总是在主函数说 expected a {
可明明没有出错啊
还有之前编译好像成功了 但是从pc向430发送‘9’,小灯不亮(对应0x01)但是pc能收到单片机发送的数据
#include "msp430G2553.h"
#include "stdio.h"
int a[8],i;
void Init_uart0()
{
UCA0CTL1|=UCSWRST;
UCA0CTL0&=~UC7BIT;//字符长度为8
UCA0CTL1|=UCSSEL_2;//选择系统时钟
UCA0BR0=0x6D; //波特率为9600
UCA0BR1=0;
UCA0MCTL=0;//UCA0MCTL=UCBRS0;
IE2=UCA0RXIE+UCA0TXIE;//开接收使能
UCA0CTL1&=~UCSWRST;
P1SEL|=BIT1+BIT2; //将P1.1 P1.2设为第二功能
P1SEL2|=BIT1+BIT2;
}
void Uart0Sends(char *s)
{
while(*s!=' ')
{
UCA0TXBUF=*s;
while((IFG2&UCA0TXIFG)==0); //查询发送是否结束
IFG2&=~UCA0TXIFG; //清除发送一标志位
s++;
}
}
void Uart0Gets()
{
unsigned char temp=0;
temp=UCA0RXBUF;
if(temp=='9')
{
P1DIR=0x01;
P1OUT=0x01;
}
#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void)
{
IFG2&=~UCA0RXIFG; //手动清除标志位
Uart0Gets();
}
void main( )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
//Init_uart0();
Init_uart0();
_enable_interrupt();
P1DIR|=0x40;
P1OUT=0x40;
while(1)
{
Uart0Sends("A");
__delay_cycles (1048576);
}
}
此帖出自
小平头技术问答
截图
一周热门 更多>