include "eMMC_BGA169.h"//**/ // 函 数 名 : // 功 能 : 写数据 // 输入参数 : 数据指针 地址 写块数 // 返回参数 : // 说 明 : // // //**/ void Save_MMC_DATA(uint8_t pData, uint32_t BlockAdd, uint32_t NumberOfBlocks) { while(HAL_MMC_WriteBlocks_DMA(&hmmc1, (uint8_t )pData, BlockAdd, NumberOfBlocks) != HAL_OK); } //**/ // 函 数 名 : // 功 能 : 读数据 // 输入参数 : 数据指针 地址 写块数 // 返回参数 : // 说 明 : // // //**/ void Read_MMC_DATA(uint8_t pData, uint32_t BlockAdd, uint32_t NumberOfBlocks) { while(HAL_MMC_ReadBlocks(&hmmc1, (uint8_t )pData, BlockAdd, NumberOfBlocks,0XFFF) != HAL_OK); } //**/ // 函 数 名 : // 功 能 : 擦除1块 512B // 输入参数 : // 返回参数 : // 说 明 : // // //**/ void Erase_MMC_DATA(uint32_t BlockStartAdd, uint32_t BlockEndAdd) { HAL_MMC_Erase(&hmmc1, BlockStartAdd, BlockEndAdd); } 这是我的驱动代码,cubemx配置SDMMC选择的是 MMC 4bit Wide bus .现在问题是我的这套代码及配置在之前项目使用的是SD卡,代码格式就是HAL库的SD和配置都是4线所以差别不大。并且能用。现在项目把存储芯片更改为eMMC卡。我按照网上驱动更改配置和代码。现在代码已粘贴,测试时发现是没有数据的,考虑数据没有被写进去。有没有人使用过这个,看看我的代码是否是有其他问题。感谢了,这个问题很急很急。 |
|
在HAL库中,读写eMMC通常使用HAL_MMC_ReadBlocks_DMA和HAL_MMC_WriteBlocks_DMA函数。确保在调用这些函数时,参数传递正确,包括缓冲区地址、块地址和块数量 |
使用CUB进行调试或者下载固件时候均出现下面的报错,使用的工具是J-LINK,尝试重新给工具上电,重启IDE,重启电脑,更新配置均是一样问题点,请问这个是为什么呢
STM32H743使用Keil V6(AC6)编译FreeRTOS报错__forceinline未定义及CMSIS-RTOS2配置错误,如何解决?
NUCLEOh753zi
在STM32CubeIDE 中用sprintf,printf总感觉差点什么
STM32U385的PB1引脚设置推挽输出,外部接电阻上拉时,断掉MCU的电源,MCU仍然运行的问题
CubeMX lwip支持的phy芯片型号只支持一个吗?
stm32 usb hid设备能发数据给PC,但不能接收PC的数据!!!
stm32H745 M4核不能调试和下载
关于H750VB的SDMMC开启DMA读写SD卡
FDCAN如何处理大于64帧字节的数据
微信公众号
手机版