查看: 805|回复: 0

XMEGA256 SPI方式读写SD

[复制链接]
  • TA的每日心情
    开心
    2016-3-22 09:25
  • 签到天数: 115 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2016-4-18 08:39:58 | 显示全部楼层 |阅读模式
    分享到:
    硬件使用XMEGA256A3BU XPLAINED 开发板 + SD扩展小板,
    SD部分的线路图如下:

    相关的源码如下:

    #include <asf.h>
    #include "macros.h"
    #include "sd.h"
    int main (void)
    {
    // Insert system clock initialization code here (sysclk_init()).
    board_init();
    sysclk_init();
    ioport_configure_pin(sd_cs,  IOPORT_INIT_HIGH | IOPORT_DIR_OUTPUT);
    ioport_configure_pin(sd_mosi, IOPORT_INIT_HIGH | IOPORT_DIR_OUTPUT);
    ioport_configure_pin(sd_miso, IOPORT_DIR_INPUT | IOPORT_PULL_UP);
    ioport_configure_pin(sd_clk,  IOPORT_INIT_HIGH | IOPORT_DIR_OUTPUT);
    sd_card_init();
    uint8_t buff[512];
    uint16_t i;
    for(i = 0;i < 512;i++) {
    buff = 0xED;
    }
    sd_wr_block(222,buff);
    for(i = 0;i < 512;i++) {
    buff = 0x00;
    }
    sd_rd_block(222,buff);
    asm("nop");
    // Insert application code here, after the board has been initialized.
    }
    可以看出,SD卡写入和读出都正确,以此为基础,后续可以加载
    FAT文件系统,用以测试文件系统是否正确工作!
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-25 22:57 , Processed in 0.127442 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.