函数与返回值类型不匹配

#include
#include
void Uart_Send_Arrry( unsigned char *Data_Array,unsigned char Array_length);
void Delay_UART(int nUs);
void Uart0_Init(void);//必须的有这个声明,因为在个函数在主函数后面,若在主前面则不需要声明,直接定义就行

void Delay_UART(int nUs)
{
int i,j;
for(i=0;i{
for(j=0;j<100;j++);
}
}
void Uart_Send_Arrry(unsigned char *Data_Array,unsigned char Array_length)
{
int i;
for(i=0;i{
while (!(IFG1 & UTXIFG0)) ; // USART0 TX buffer empty
TXBUF0 = *(Data_Array+1);
}
}


//unsigned char swap()

int swap()
{ //unsigned charS[5];
int S[5];
int a,b,c,d;
a=1234/1000+48;
b=1234%1000/100+48;
c=1234%1000%100/10+48;
d=1234%1000%100%10+48 ;

//for(i=0;i<4;i++)
S[1]=a;
S[2]=b;
S[3]=c;
S[4]=d;
//for(i=0;i<4;i++)
return(S);
}


void main(void)
{
WDTCTL = WDTHOLD+WDTPW;
//选择XT1,32.768khz晶振作为LFXT1CLK
//此时MCLK和SMCLK稳定在1.048576mhz上
FLL_CTL0 |= XCAP14PF; //选择LFXT1CLK的谐振电容
_DINT(); //关闭全局中断
Uart0_Init();
_EINT(); // Enable interrupts
//void swap() ;

/*unsigned char S[5];
int a,b,c,d,i;
a=1234/1000+48;
b=1234%1000/100+48;
c=1234%1000%100/10+48;
d=1234%1000%100%10+48 ;
a+=48;
b+=48;
c+=48;
d+=48;
for(i=0;i<5;i++)
{
S[0]=a;
S[1]=b;
S[2]=c;
S[3]=d;
S[4]=32;
}
//for(i=0;i<4;i++)
//return(S[i]);*/


unsigned char P[5];

int i;
while(1)
{
for(i=0;i<4;i++)
{
P[i]=swap();
}

Uart_Send_Arrry(P,5);
Delay_UART(1000);
}
}

void Uart0_Init(void)
{
UTCTL0 = SSEL1; // UCLK = SMCLK
UCTL0 |=SWRST; // 复位串口0
UCTL0 |= CHAR; // 8-bit character *SWRST*
UBR00 = 0x1B; // 1MHz 38400
UBR10 = 0x00; // 1MHz 38400
UMCTL0 = 0x0A; // modulation,微调波特率+0.25
ME1 |= UTXE0 + URXE0; // Enable USART0 TXD/RXD
UCTL0&=~SWRST; // 初始化串口0
IE1 |= URXIE0; // Enable USART0 RX interrupt
P2SEL |= 0x30; // P2.4,5 = USART0 TXD/RXD
P2DIR |= 0x10; // P2.4 output direction
//P1DIR |=0x32;
//P1SEL |=0x32;

}

相关文档
最新文档