先上代码
#pragma vector=UART1RX_VECTOR
__interrupt void UART1_RX_ISR(void)
{
uint i; uint j=0;
data[ j++]=U1RXBUF;
//delay_ms(1000);
data[5]=0x1a;
data[6]='
';
for(i=0;i<7;i++)
{
while(!(IFG1&UTXIFG0));
U0TXBUF=data
;
IFG2=0;
}
}
这是中断处理部分,我想把串口1收到的值存入数组,然后加上个后面两个字节,之后再从串口0发送出去,data[]是全局变量,别的地方没有任何引用
然后我用串口助手发十六进制的1234567890,收到的却是十六进制的12 00 00 00 00 1a 0a,说明存入数组的只有第一个字节,
为什么会这样呢,请各位指点迷津,先谢谢各位了。
此帖出自小平头技术问答
一周热门 更多>