Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RT-Thread+STM32F401+Proteus仿真【第二篇 SD文件系统仿真】
发布于 2020-02-10 11:41:33 浏览:3091
订阅该版
* 本帖最后由 liqijian101 于 2020-2-10 11:41 编辑 * [align=center]RT-Thread+STM32F401+Proteus仿真【第二篇 SD文件系统仿真】**1 说明**若没有读串口仿真部分,请先阅读[上一篇帖子](https://www.rt-thread.org/qa/forum.php?mod=viewthread&tid=423534&page=1&extra=#pid473859)。 **2 Proteus仿真搭建** 搭建仿真电路如下图所示,使用了虚拟串口,SPI驱动的SD卡(Proteus只能SPI),需要安装虚拟串口软件Virtual Serial Port Driver Pro、和串口调试助手软件。1) 配置虚拟串口波特率为1152002) 实际仿真时发现只能使用HSI时钟作为SYSCLK,Cube时钟配置参考上一篇帖子。3) SD卡Card Image File 使用Proteus示例文件中自带的sdcard.mmc文件,路径D:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\DATA\SAMPLES\VSM for Cortex M4\STM32\FATFSProteus程序文件: [align=center]![图片1.png](/uploads/202002/10/113921x5dddq5auu59ze20.png)[align=center]Proteus 仿真电路图**3 RT-thread SPI文件系统程序(使用RT-thread Sdudio v1.1)** 1) RT-Thread建立STM32F401VE的过程参考官方教程:[https://www.rt-thread.org/document/site/rtthread-studio/drivers/spi/rtthread-studio-spi/](https://www.rt-thread.org/document/site/rtthread-studio/drivers/spi/rtthread-studio-spi/)[https://www.rt-thread.org/document/site/tutorial/temperature-system/dfs/](https://www.rt-thread.org/document/site/tutorial/temperature-system/dfs/)[https://www.rt-thread.org/document/site/programming-manual/filesystem/filesystem/](https://www.rt-thread.org/document/site/programming-manual/filesystem/filesystem/)2) RT-thread Setting设置 [align=center]![dfs.png](/uploads/202002/10/113921hcz76cmky8f7m8dk.png)[align=center]![fatfs.png](/uploads/202002/10/113921aqxqqbke02ctqiky.png)[align=center]![SPI.png](/uploads/202002/10/113921jolnddr5rlbl9ooz.png) 3) Main函数中增加一下代码:**static** **int** **rt_hw_spi1_tfcard**(**void**){ __HAL_RCC_GPIOA_CLK_ENABLE(); rt_hw_spi_device_attach("spi1", "spi10",GPIOA, GPIO_PIN_4); **return** msd_init("sd0", "spi10");}INIT_DEVICE_EXPORT(rt_hw_spi1_tfcard); **#ifdef** RT_USING_DFS**#ifdef** RT_USING_DFS_DEVFS**int** **elm_sd0_init**(**void**){ **if** (dfs_mount("sd0", "/", "elm", 0, 0) == 0) { rt_kprintf("elm sd0 File System initialized!
"); **return** 0; } **else** { rt_kprintf("elm sd0 File System _initialzation_ failed!
"); **return** -1; }}INIT_ENV_EXPORT(elm_sd0_init);**#endif****#endif** **4) ****此时运行发现,**msd_init函数执行后出现错误,最终发现是发送CMD59命令时发现错误,CMD59一般都不加,Proteus示例代码中也未使用,故通过注释相关代码,程序可以运行,通过finsh控制台发送ls命令可以显示sd卡内的文件目录。 ![图片222.png](/uploads/202002/10/114028h6317wreeujddnww.png) 下载附件 [RT-thread STM32F401 Proteus仿真[第二篇 SD卡文件系统-SPI].docx](https://oss-club.rt-thread.org/uploads/202002/10/114128z1tpjkvjwmvavp1b.attach)
查看更多
1
个回答
默认排序
按发布时间排序
shadowliang
2020-02-10
Hello,world!!!
楼主厉害,连买板子的钱都可以省了,妈妈再也不用担心没板子学习了:lol。
撰写答案
登录
注册新账号
关注者
0
被浏览
3.1k
关于作者
liqijian101
这家伙很懒,什么也没写!
提问
3
回答
5
被采纳
0
关注TA
发私信
相关问题
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
FRDM-MCXN94 7Flash实践--W25Q64
2
NXP MCXN947测评(一)开箱+环境配置
3
stm32f103的adc+dma多通道采集数据
4
恩智浦FRDM-MCX947上的 IIC(硬件) 实践
5
栈溢出及中断向量偏移BUG记录与分析
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
CAN总线
Hardfault
FinSH
USB
文件系统
RT-Thread
DMA
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
cubemx
flash
I2C
UART
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
BSP
ADC
keil_MDK
socket
中断
编译报错
MicroPython
Debug
SDIO总线
GD32
msh
rt_mq_消息队列_msg_queue
ulog
C++_cpp
SFUD
本月问答贡献
xiaorui
20
个答案
3
次被采纳
Juggernaut
12
个答案
3
次被采纳
踩姑娘的小蘑菇
12
个答案
2
次被采纳
小小李sunny
10
个答案
2
次被采纳
a1012112796
8
个答案
1
次被采纳
本月文章贡献
ZVML_9668
4
篇文章
6
次点赞
Lu_盼盼
4
篇文章
3
次点赞
Z_Y
3
篇文章
5
次点赞
ThinkCode
2
篇文章
2
次点赞
oxlm
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部