广告

NIOS2下的SDHC调试

2010-7-21 21:49 2717 0 分类: FPGA/CPLD

NIOS2下的SDHC调试


         本想自己做个简单易用的SPI控制器IPcore挂在NIOS2处理器上,整理半天却发现组件库里有3wire SPI外设,看看软件说明书配置一下也是很easy的,于是放弃了自己DIY组件的打算。


         这两天调试了一下,之前用SF-EP1C板调试过2G以下的SD卡。这下面对SDHC卡,由于之前的经验,配合官方又臭又长的2.0的规格书(话说回来,最终帮大忙的还是这个spec,还是很享受那句话“忠于原文”),今天把SDHC的底层驱动函数稍微都整理好了,过阵子可以交给同事继续软件开发工作了。


         这个SDHC的调试过程还有那么些讲究,这里特权同学也啰嗦一下,也许能给读者您带来一点灵感。


1.  通常在调试情况下,如果发给SDHC卡发送CMD0命令 ,SDHC一般都会回到IDLE。但是特权发现有些时候不可以,那么这时候要是不重新上下电,很可能你会耗费大量时间郁闷在某阶段调试程序怎么老是不通。所以特权同学刚开始调试时的做法很简单,给FPGA的配置芯片(同时烧录FPGA配置数据和软件程序的存储器)烧录软件调试对应的硬件FPGA配置文件以及一个对与SDHC接口的SPI总线不做任何处理(初始化为高电平)的软件程序。然后每次运行调试软件时重新上一次电。这样保证万无一失,绝不会死在SDHC不回IDLE的窘境下。


2.  说点实在的,上电初始化的过程依次需要发送以下指令和回复:


CMD0—R1                 sdhc_write_cmd(0,0);—0x01


CMD8—R7                 sdhc_write_cmd(8,0x1aa);—0x01000001aa


CMD58—R3               sdhc_write_cmd(58,0);—0x0100ff8000


ACMD41—R1            sdhc_write_cmd(55,0);--0x01


                                       sdhc_write_cmd(41,0x40000000);--0x00


CMD58—R3               sdhc_write_cmd(58,0);—0x01c0ff8000


         其中,例如sdhc_write_cmd(58,0,0x95); 58表示index,0表示argument。具体涵义准备深究的人肯定都明白了。


 


         最后,发两个图片作证,哈哈!


         读取DBR扇区数据:



 


往某一扇区写入数据:




 



         说实话,特权同学并不愿意很深入去做软件。不过做一些底层的驱动工作,完成一些基本的时序接口的设计也算是硬件工程师分内的工作。一点不懂软件的硬件工程师不是一个合格的硬件工程师,至少他将来很难成为一个称职的系统工程师。所以,在年轻的时候,苦活脏活累活都是应该好好去做的……


 


 

广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
ilove314_323192455 2016-06-30 21:16
例说FPGA连载6:FPGA开发所需的技能
例说FPGA连载6:FPGA开发所需的技能 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   前面的文字已经做了很多铺垫,相信读...
ilove314_323192455 2016-06-28 21:09
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
ilove314_323192455 2016-06-28 21:05
例说FPGA连载5:FPGA的优势与局限性
例说FPGA连载5:FPGA的优势与局限性 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   若要准确评估FPGA技术能否满足开...
ilove314_323192455 2016-06-26 22:11
例说FPGA连载4:FPGA语言与厂商介绍
例说FPGA连载4:FPGA语言与厂商介绍 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   Verilog与VHDL 说到FP...
ilove314_323192455 2016-06-23 21:26
例说FPGA连载3:FPGA与其它主流芯片的比较
例说FPGA连载3:FPGA与其它主流芯片的比较 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   FPGA、ASIC和ASSP...
ilove314_323192455 2016-06-21 20:32
例说FPGA连载2:FPGA是什么
例说FPGA连载2:FPGA是什么 特权同学,版权所有 配套例程和更多资料下载链接: http://pan.baidu.com/s/1c0nf6Qc   2015年伊始,Intel欲出资百亿美金收...
我要评论
0
0
广告