程序内容是从串口接收一串数据,然后存储到一个字符数组里,之后把这个数组发送显示到串口助手上,我的问题是:整个数组在串口助手上显示没有问题,但是我单取数组中的某个元素显示到串口助手上就不对了,我找不到是哪里的问题
- if(revdata[0]=='@')
- {for(i=0;i<12;i++)
- {str=revdata}
- }
- for(i=0;i<revdata;i++)
- {revdata=0;}
- revdata=0;
- usart_puts(str); //串口助手显示@21*2*20*20#
- for(i=0;i<2;i++)
- {a=str[i+1];}
- usart_puts(a); //串口助手显示21
- usart_puts(a[0]);//串口助手十六进制显示28 06,但我以为十六进制下会显示的是32
[color=rgb(51, 102, 153) !important]复制代码
|