我在数组中放从0到14,想在串口调试软件中显示出来。现在的现象是,如果设置串口调试软件为16进制显示,则没有问题。但如果是用字符显示就不行,出来一堆小方块,乱码。 这部分的程序我是这样写的: uint8 data[15] ; uint8 j;
for(j=0;j<15;j++) data[j]=j;
for(j=0;j<15;j++) U0RBR=data[j];
把数据放到U0RBR到FIFO触发中断发出在串口调试软件中显示。 程序别的地方没问题。 请大家帮我看看。是不是数据类型方面有问题?我对这个uint8不大理解,看config.h文件说typedef unsigned char uint8; //无符号8位整型变量 把无符号字符型定义为uint8。字符型没有有没有符号这一说吧?那我该如何定义字符型变量啊?标准C中的char在ADS下应该用什么代替呢? 想再问问大家,就是在AXD调试时该怎样看数组的值呢? 寄存器的值又该怎么看呢?比如我想看U0RBR,我就是在memory start address处填上0xe000c000,但在程序无错的情况下还是总和程序中的值对应不上,为什么?难道不是那么看么?请大家指点,感激不尽!
|