RISC-V MCU中文社区

【求助】 [求助] E203 SPI相关嵌入式开发可否基于官方库函数?

发表于 开源蜂鸟E203 2021-08-10 17:43:31
1
1840
0
我们队在开发SPI SD卡读写功能的时候,注意到芯来官方提供了一个库函数,路径是

https://gitee.com/riscv-mcu/hbird-sdk/blob/master/SoC/hbirdv2/Common/Source/Drivers/hbirdv2_spi.c。其内容是操作E203手册中所提及的寄存器  。如下:


但是这里SPI寄存器的定义和我近日接触到的其他SPI master大相迥异。比如芯来姐的RVStar教程,SPI篇 中所提到的SPI功能有这么老些:


对比下来的话,E203的SPI寄存器和GD32VF103的完全不一样,而且不太明白SPI一个串行总线为啥有command、address之类的说法(第一张图标红的寄存器)。并且GD32VF103在github上能看到一个更为完整的驱动支持。

https://github.com/Nuclei-Software/nuclei-sdk/blob/master/SoC/gd32vf103/Common/Include/gd32vf103_spi.h


所以我的问题就是,

1、E203中SPI寄存器定义和常见的SPI控制器为何有如此大的差异?E203手册中并未详细说明这些寄存器的意义,请问我应该从哪获取这些信息?

2、E203能否基于开头提到的 hbirdv2_spi.c函数来做SPI通信功能的开发?无论能还是不能,在寄存器定义有差异的情况下,应该遵循一个怎样的初始化流程和数据传输流程


(再次希望能得到胡灿老师的垂青,谢谢您!!

喜欢0
用户评论 (1)

未通过实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板