| **银杏科技有限公司旗下技术文档发布平台** |||| |技术支持电话|**0379-69926675-801**||| |技术支持邮件|Gingko@vip.163.com||| ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | V1.0 | 2020-06-15 | gingko | 初次建立 | ===== 例程十一:【micropython】SD卡操作实验 ===== ==== 一、实验目的 ==== 使用micropython 读取iCore3板子上的SD卡信息。 ==== 二、实验设备及平台 ==== - iCore3双核心板[[https://item.taobao.com/item.htm?id=524229438677|点击购买]] - Micro USB线 - 电脑 ==== 三、实验原理 ==== STM32407上带有SDIO控制器,iCore3核心板上将SDIO连接到TF卡座上,本实验将Miro SD卡插入TF卡座上。硬件连接示意图如下: {{ :icore3:icore3_micropython_11_1.png?direct |SD卡信息}} ==== 四、实验步骤 ==== - 用数据线将iCore3的USB-OTG口与电脑相连; - 打开PYBFLASH磁盘,将代码包中的main.py文件替换到PYBFLASH的main.py,弹出磁盘; - 用数据线将iCore3的USB-UART口与电脑相连,将电源跳线帽选择为USB-UART,将iCore3重新上电,代码运行; - 使用串口调试器连接相应COM口(具体请在此电脑右击->管理->设备管理器中查看),波特率9600; ==== 五、实验现象 ==== 在终端显示屏上可以看到MicroSD卡的信息,如下图: {{ :icore3:icore3_micropython_11_2.png?direct |SD卡信息}} ==== 六、实验程序 ==== # -*- 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)