DMA使用中的 uint32_t DMA_BufferSize; BufferSize解释是Specifies the buffer size, in data unit, of the specified Stream. The data unit is equal to the configuration set in DMA_PeripheralDataSize
or DMA_MemoryDataSize members depending in the transfer direction. */
这里面的DMA_MemoryDataSize 和DMA_PeripheralDataSize 只有DMA_PeripheralDataSize_Byte ((uint32_t)0x00000000)
#define DMA_PeripheralDataSize_HalfWord ((uint32_t)0x00000800)
#define DMA_PeripheralDataSize_Word 这三种大小。
但是常看到有这样的语句DMA_BufferSize = (uint32_t)0xFFFE; 这个数正好是65535,和(DMA—SxNDTR)传输数据量寄存器的最大值一样。
那么问题来了,这个BufferSize指的是什么,缓存区的大小?起始地址是DMA设置源地址或者目的地址,如果是缓冲区的话,那不就是FIFO了吗?
请清楚地高手回答一下,刚刚开始使用,在改别人得程序时遇到的疑问。