本帖最后由 星夜的雨 于 2019-8-24 20:12 编辑
第一张图是给fifo->buf 和 fifo->size 赋值,fifo->buf目前指的是空,先不管这个,因为他和fifo->size出现的问题一样。给fifo->size赋值后,在仿真模式下,看到这个值是1000(0x3e8,RAM地址0x0003)
单步调试(再看第二张图),给fifo->free赋值,赋值后发现 fifo->size的值发生了改变。
这个是我定义的结构体
typedef struct
{
char *buf; //
uint16_t size; //
uint16_t free; //fifo空余
uint16_t write_next_add;
uint16_t read_next_add;
}FIFO;
哪位大佬可以解释一下为什么会这样,谢谢
|