-
if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
{
RxChar = USART_ReceiveData(USART3);
if(RxChar == 'E')
{
RxBuffer[RxCounter++] = RxChar ;
USART_ITConfig(USART3,USART_IT_RXNE,DISABLE);
flag = 1;
RS232_SendData(RxChar);
for(i=0;i
-
有用到。只是在接收中断里设置断点后再单步运行发现除了第一个字符 后面的字符是收不到的,这样好像没多大意思,所以直接用了printf在调试助手上显示。不知道是不是我不太熟练仿真器的使用。
-
就是用串口调试助手。。
-
哈哈,不知道是不是跟你说的情况一样。我定义的缓冲区数组是RxBuffer[RxCounter],RxCounter是自增的,正常接收的话RxCounter在收完一个数据帧后数值为9,实际上却变为了47,调试助手显示字符串中间出现很多来历无从考究的空格。但我在每次的接收中断里把刚接收到的字符用串口在调试助手上显示出来发现跟发送的又竟然一致。 所以不知道RxCounter=47和那些空格是怎么来的。
-
都是9600,之前是在两块107的板上试过的程序,直接移植过来的
-
不知道现在还能不能收到你的邮件呢?非常渴望得到你的参考工程。谢谢:125479080@qq.com