OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3255|回复: 1

stm32l4系列 sd卡初始化失败无返回

[复制链接]

2

主题

3

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2019-5-22
在线时间
2 小时
发表于 2019-5-23 14:04:22 | 显示全部楼层 |阅读模式
1金钱
用的是示例代码
一个是六轴传感器的示例代码还有一个是FATFS文件系统
我将这两个工程合并之后 运行之前的代码 发现一直卡在了sd_int 函数中
该添加的文件也都添加了
编译也通过了 但是就是卡住 在原来的程序里是可以运行的
请问是时钟的问题吗 delay文件我看了也是一样的
#include "sys.h"
#include "usart.h"
#include "usmart.h"
#include "delay.h"
#include "led.h"
#include "key.h"
#include "lcd.h"
#include "malloc.h"
#include "w25qxx.h"
#include "sd_card.h"
#include "ff.h"
#include "exfuns.h"




int main(void)
{
    u32 total, free;
    u8 t = 0;
    u8 res = 0;
    HAL_Init();
    SystemClock_Config();
    delay_init(80);  
    uart_init(115200);   
    usmart_dev.init(80);  
    LED_Init();     
    KEY_Init();     
    LCD_Init();   
    W25QXX_Init();   
    my_mem_init(SRAM1);   
    my_mem_init(SRAM2);   
    POINT_COLOR = RED;
    Display_ALIENTEK_LOGO(0, 0);
    LCD_ShowString(30, 80, 200, 16, 16, "Pandora STM32L4 IOT");
    LCD_ShowString(30, 100, 200, 16, 16, "FATFS TEST");
    LCD_ShowString(30, 120, 200, 16, 16, "ATOM@ALIENTEK");
    LCD_ShowString(30, 140, 200, 16, 16, "2018/10/27");
    LCD_ShowString(30, 160, 200, 16, 16, "Use USMART For Test");
    while(SD_Init())//¼ì²â²»µ½SD¿¨
    {
        LCD_ShowString(30, 180, 200, 16, 16, "SD Card Error!");
        delay_ms(500);
        LCD_ShowString(30, 180, 200, 16, 16, "Please Check! ");
        delay_ms(500);
        LED_B_TogglePin;
    }
    exfuns_init();      
    f_mount(fs[0], "0:", 1);   
    res = f_mount(fs[1], "1:", 1);     
    if(res == 0X0D)
    {
        LCD_ShowString(30, 180, 200, 16, 16, "Flash Disk Formatting...");
        res = f_mkfs("1:", 1, 4096);
        if(res == 0)
        {
            f_setlabel((const TCHAR *)"1:ALIENTEK");
            LCD_ShowString(30, 180, 200, 16, 16, "Flash Disk Format Finish");
        }
        else LCD_ShowString(30, 180, 200, 16, 16, "Flash Disk Format Error ");
        delay_ms(1000);
    }
    LCD_Fill(30, 180, 240, 180 + 16, WHITE);  
    while(exf_getfree((u8 *)"0:", &total, &free))
    {
        LCD_ShowString(30, 180, 200, 16, 16, "SD Card Fatfs Error!");
        delay_ms(200);
        LCD_Fill(30, 180, 240, 180 + 16, WHITE);
        delay_ms(200);
        LED_B_TogglePin;//DS0ÉÁ˸
    }
    POINT_COLOR = BLUE;
    LCD_ShowString(30, 180, 200, 16, 16, "FATFS OK!");
    LCD_ShowString(30, 200, 200, 16, 16, "SD Total Size:     MB");
    LCD_ShowString(30, 220, 200, 16, 16, "SD  Free Size:     MB");
    LCD_ShowNum(30 + 8 * 14, 200, total >> 10, 5, 16);
    LCD_ShowNum(30 + 8 * 14, 220, free >> 10, 5, 16);  
    while(1)
    {
        t++;
        delay_ms(200);
        LED_B_TogglePin;//DS0ÉÁ˸
    }
}


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

117

主题

598

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
1702
金钱
1702
注册时间
2012-5-10
在线时间
439 小时
发表于 2019-5-23 14:41:01 | 显示全部楼层
合并影响了那些驱动,自己检查下,初始化失败估计不在你贴的代码里面
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-15 01:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表