本帖最后由 [鑫森淼焱垚] 于 2024-5-30 10:48 编辑
代码
代码勘误1--apm32f4xx_adc.c 多处注释错误
文档
GPIO 寄存器和文档不匹配
工具
SVD 文件中DMA2描述错误,M0ADDR 插入到了 M1ADDR5 下面,错误。
|
代码
当前代码基于 APM32F4xx_SDK_V1.4 版本。
代码勘误1--apm32f4xx_adc.c 多处注释错误
函数 ADC_EnableDMARequest() 返回值类型为 void。但是代码注释却写了函数返回值为 The Data conversion value.
此源文件中出现了多次这样的注释,但只有前两次和最后一次符合函数意图,其他都是复制粘贴的。
文档
GPIO 寄存器和文档不匹配
参考 《APM32F411xCxE 用户手册 V1.4.pdf》,12.6.7 GPIO 端口置位/复位寄存器 GPIOx_BSC ,文档如下:
低16位 Bsy 表示管脚输出高电平,高16位 Bcy 表示管脚输出低电平。但是代码中引用的是 BSCH 寄存器,这是文档和代码不匹配的疏漏。
工具
SVD 文件中DMA2描述错误,M0ADDR 插入到了 M1ADDR5 下面,错误。
按道理 DMA2_STREAM5 和 DMA2_STREAM6 描述相同,分别有 M0ADDR5/M1ADDR5,也有 M0ADDR6/M1ADDR6。实际上 DMA2_STREAM5 的描述错误。
我在这里传入内存地址 memoryBaseAddr 0x2000C5E4,外设数据地址 SPI1->DATA 地址 0x4001300C到 peripheralBaseAddr,其中外设数据寄存器地址成功设置到 PADDR5,但是内存地址 0x2000C5E4 设置出错。
|