本帖最后由 如意不如意 于 2020-7-8 15:57 编辑
一、实验目的
使用micropython 读取iCore3板子上的SD卡信息。
二、实验设备及平台- iCore3双核心板点击购买
- Micro USB线
- 电脑
三、实验原理
STM32407上带有SDIO控制器,iCore3核心板上将SDIO连接到TF卡座上,本实验将Miro SD卡插入TF卡座上。硬件连接示意图如下:
四、实验步骤- 用数据线将iCore3的USB-OTG口与电脑相连;
- 打开PYBFLASH磁盘,将代码包中的main.py文件替换到PYBFLASH的main.py,弹出磁盘;
- 用数据线将iCore3的USB-UART口与电脑相连,将电源跳线帽选择为USB-UART,将iCore3重新上电,代码运行;
- 使用串口调试器连接相应COM口(具体请在此电脑右击→管理→设备管理器中查看),波特率9600;
五、实验现象
在终端显示屏上可以看到MicroSD卡的信息,如下图:
六、实验程序
# -*- coding: utf-8-*-
# main.py -- put your code here!
from pyb import UART #导入
import os, pyb
#定义串口4对象,波特率9600
U4 = UART(4,9600)
sd = pyb.SDCard() #创建SD卡对象
os.mount(sd,'/sd') #挂载SD卡
#读取SD卡信息
info = sd.info()
SD_Capacity = info[0] / 1048576
SD_BlockSize = info[1]
SD_ManufacturerID = info[2]
while True:
U4.write('\r\nHello! I am iCore3!\r\n') #串口写入数据
U4.write('SD CardCapacity: %dMB\r\n'%SD_Capacity)
U4.write('SD CardBlockSize: %dByte\r\n'%SD_BlockSize)
U4.write('SD ManufacturerID: %d\r\n'%SD_ManufacturerID)
pyb.delay(2000)
代码包.zip
(816 Bytes)
|