TI中文支持网
TI专业的中文技术问题搜集分享网站

如何把串口发送过来的数据存储起来呢?

各位好。我做串口实验收发一切可以。现在我想将串口发过来的数据进行接收起来。(长度以知)。

while(1)
  {
  while (!(IFG2&UCA0RXIFG));                 // USCI_A0 TX buffer ready?
   data=UCA0RXBUF;                     // TX -> RXed character
   rx[i]=data;
   i++;
   if(i==3)
   {i=0;}
   UCA0TXBUF=data;
  }

通过在线仿真,可以看到,rx数组一直没被赋值,但data有数值,我就不清楚这是怎么回事?

我要是想把数据存储到数组里,是要怎么实现呢?

LEE LEE:

回复 Triton Zhang:

HI,Trition.谢谢你的热心回答。

嗯。我昨天实验实现了。还有一个问题是,如果我在中断里做串口数据存储的话,我在main()里定义了个全局变量 rx[8],在中断里调用rx[8],为啥编译的时候会显示rx[8]是未定义的不能使用呢?我想用的话,应该怎么做?

LEE LEE:

回复 LEE LEE:

额、我晕晕的,给忘记不能这么定义;了。已经都解决好了、~谢谢啦

Triton Zhang:

回复 LEE LEE:

全局变量不能定义在函数中。

如果全局变量定义别的文件,需要在调用前声明, extern XXX

赞(0)
未经允许不得转载:TI中文支持网 » 如何把串口发送过来的数据存储起来呢?
分享到: 更多 (0)