SD NAND在正点原子精英板子STM32上的应用

SD NAND与正点原子精英板的连接

由于正点原子精英板没有SD NAND接口,只有TF卡接口,所以SD NAND需要用到转接板来连接。

SD NAND芯片用的是MK-米客方德的工业级芯片MKDV1GIL-AS;MK-米客方德家还有其他各种型号的SD NAND和各种各样的转接板

SD NAND正常运行现象

本次实验的程序是正点原子的SD卡实验例程,先用读卡器把SD NAND接到电脑上,并复制一个文件进去,再插到开发板上

用送的数据线连接USB UART接口,下载好程序,打开电脑上的串口助手,按下KEY0,即可读取到数据,

具体实验步骤和现象可以看例程文件夹中的readme,

另外LED-DS0闪烁也表示SD NAND 芯片在正常运行,

代码解析

这里贴一段代码,方便大家理解

int main(void)

{

    uint8_t key;

    uint8_t t = 0;

    sys_stm32_clock_init(9);    /* 设置时钟, 72Mhz */

    delay_init(72);             /* 延时初始化 */

    usart_init(72, 115200);     /* 串口初始化为115200 */

    usmart_dev.init(72);        /* 初始化USMART */

    led_init();                 /* 初始化LED */

    lcd_init();                 /* 初始化LCD */

    key_init();                 /* 初始化按键 */

    my_mem_init(SRAMIN);        /* 初始化内部SRAM内存池 */

    lcd_show_string(30,  50, 200, 16, 16, "STM32", RED);

    lcd_show_string(30,  70, 200, 16, 16, "SD TEST", RED);

    lcd_show_string(30,  90, 200, 16, 16, "ATOM@ALIENTEK", RED);

    lcd_show_string(30, 110, 200, 16, 16, "KEY0:Read Sector 0", RED);

    while (sd_init())    /* 检测不到SD卡 */

    {

        lcd_show_string(30, 130, 200, 16, 16, "SD Card Error!", RED);

        delay_ms(500);

        lcd_show_string(30, 130, 200, 16, 16, "Please Check! ", RED);

        delay_ms(500);

        LED0_TOGGLE();  /* 红灯闪烁 */

    }

       

    /* 打印SD卡相关信息 */

    show_sdcard_info();

   

    /* 检测SD卡成功 */

    lcd_show_string(30, 130, 200, 16, 16, "SD Card OK    ", BLUE);

    lcd_show_string(30, 150, 200, 16, 16, "SD Card Size:     MB", BLUE);

    lcd_show_num(30 + 13 * 8, 150, g_sd_card_info.CardCapacity >> 20, 5, 16, BLUE); /* 显示SD卡容量 */

    while (1)

    {

        key = key_scan(0);

        if (key == KEY0_PRES)       /* KEY0按下了 */

        {

            sd_test_read(0,1);  /* 从0扇区读取1*512字节的内容 */

        }

        t++;

        delay_ms(10);

        if (t == 20)

        {

            LED0_TOGGLE();  /* 红灯闪烁 */

            t = 0;

        }

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值