【MCU实战经验】基于STM32F103C8T6的hart总线调试器设计
求教STM32F103进入STOP模式后用外部中断唤醒的问题
基于STM32F103RCT6的无源蜂鸣器音乐播放(生日快乐歌)
STM32F103c8t6有没有DAC 功能?
STM32F103x中文数据手册
新手求教,为何在我电脑上找不到STM32F1Xx.h文件
金龙107例程汇总(STM32F107)
万利STM32F107VC 原理图
STM32F103 ADC多通道检测必须要DMA吗?
【官方例程】STM32F107以太网官方例程
RE:【急】STM32F130ZE在UC/OS环境下读写SD卡失败!
1、中断中未处理UCOS系统进入和退出中断
2、SD卡驱动中有数组操作超出数组大小。
回复:【急】STM32F130ZE在UC/OS环境下读写SD卡失败!
不看程序不知道错误问题在什么地方,只能估计:
1、中断中未处理UCOS系统进入和退出中断
2、SD卡驱动中有数组操作超出数组大小。
首先感谢斑竹的即时回复!主要是程序有10M左右没法上传!
单个运行UCOS和SD卡程序均能正常运行,把两个合到一个工程中运行到红色的那一句就出现上面的错误了!
下面是我写SD卡的子程序和中断子程序
SD_Error SD_WriteBlock(u32 addr, u32 *writebuff, u16 BlockSize)
{
SD_Error errorstatus = SD_OK;
u8 power = 0, cardstate = 0;
u32 timeout = 0, bytestransferred = 0;
u32 cardstatus = 0, count = 0, restwords = 0;
u32 *tempbuff = writebuff;
if (writebuff == NULL)
{
errorstatus = SD_INVALID_PARAMETER;
return(errorstatus);
}
TransferError = SD_OK;
TransferEnd = 0;
TotalNumberOfBytes = 0;
SDIO_DataInitStructure.SDIO_DataTimeOut = SD_DATATIMEOUT;
SDIO_DataInitStructure.SDIO_DataLength = 0;
SDIO_DataInitStructure.SDIO_DataBlockSize = SDIO_DataBlockSize_1b;
SDIO_DataInitStructure.SDIO_TransferDir = SDIO_TransferDir_ToCard;
SDIO_DataInitStructure.SDIO_TransferMode = SDIO_TransferMode_Block;
SDIO_DataInitStructure.SDIO_DPSM = SDIO_DPSM_Disable;
SDIO_DataConfig(&SDIO_DataInitStructure);
SDIO_DMACmd(DISABLE);
if (SDIO_GetResponse(SDIO_RESP1) & SD_CARD_LOCKED)
{
errorstatus = SD_LOCK_UNLOCK_FAILED;
return(errorstatus);
}
/* Set the block size, both on controller and card */
if ((BlockSize > 0) && (BlockSize
RE:【急】STM32F130ZE在UC/OS环境下读写SD卡失败!
回复:【急】STM32F130ZE在UC/OS环境下读写SD卡失败!
很可能不是这里的问题,你看看你写数据的时候,写入数据的个数和数组大小比较一下。
大小是一样的。UCOS下跟裸机写入的是同一个数据,裸机可以成功但是UCOS就不行了!实在是不解