博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AliOS Things 3.3.0 : 实战HaaS100扩展SD卡
阅读量:2122 次
发布时间:2019-04-30

本文共 1897 字,大约阅读时间需要 6 分钟。

1、引言

HaaS100开发板提供了灵活的存储软硬件方案,硬件上包括内存、内置Nor Flash和外置SD-Card,软件上提供内存文件系统、Flash文件系统和SD卡文件系统。其中扩展SD卡可以支持上百G的存储,可适用于需要存储图片、音视频等较大数据的场景。

本文主要讲述如何在HaaS100开发板上玩转SD扩展卡,包括硬件和软件上的有关操作。其中HaaS100运行操作系统AliOS Things 3.3, AliOS Things 3.3自带fatfs功能。

 

2、SD卡硬件操作

HaaS100支持外接微型SD卡(Micro SD),支持上百GB数据的存储。SD卡槽位于开发板背面(HaaS100 logo的反面),可以外接微型SD存储卡,具体的硬件连接方法请参考下图。

 

 

3、SD卡格式化

SD卡在使用前,一般都需要格式化以支持特定文件系统格式(一般是FAT)数据的存储。HaaS100软件支持SD卡上FAT16/FAT32/exFAT等格式的文件系统数据的读写访问。

 

请参考一下步骤准备好一张可用的微型SD存储卡(TF卡),并格式化成FAT文件系统格式。

  • 准备好一张微型SD卡和一个读卡器,读卡器可以是专用的SD读卡器或USB读卡器等。
  • 将SD卡插入读卡器,并连接到PC上进行格式化,支持格式化为FAT16/FAT32/exFAT格式(现在PC上一般只支持FAT32和exFAT)。注意:Windows系统上一般有自带的SD卡格式化软件,通过右键选择即可将SD卡格式化成FAT格式,macOS和Linux上请自行安装类似软件进行操作。
  • 完成格式化后,将SD卡连接到HaaS100开发板,以备运行在HaaS100上的软件访问。

 

4、SD卡软件操作

提示:SD卡软件使用示例相关的代码下载、编译和固件烧录均依赖AliOS Things配套的开发工具 alios-studio ,所以首先需要参考,下载安装 alios-studio

待开发环境搭建完成后,可以按照以下步骤进行示例的测试。

4.1、创建或打开工程

 

打开已有工程

如果用于测试的案例工程已存在,可参考打开已有工程。

 

创建新的工程

组件的示例代码可以通过编译链接到AliOS Things的任意案例(solution)来运行,这里选择helloworld_demo案例。helloworld_demo案例相关的源代码下载可参考。

 

4.2、添加组件

案例下载完成后,需要在helloworld_demo组件的package.yaml中添加对组件的依赖:

depends:  - fatfs: dev_aos # helloworld_demo中引入fatfs组件

 

4.3、下载组件

在已安装了 alios-studio 的开发环境工具栏中,选择Terminal -> New Terminal启动终端,并且默认工作路径为当前工程的workspace,此时在终端命令行中输入:

aos install fatfs
 

上述命令执行成功后,组件源码则被下载到了./components/fatfs路径中。

 

4.4、添加示例

在fatfs组件的package.yaml中添加:

示例代码参考example/fatfs_example.c。

source_file:  - "src/*.c"  - "example/fatfs_example.c" # add fatfs_example.c

 

4.5、编译固件

在示例代码已经添加至组件的配置文件,并且helloworld_demo已添加了对该组件的依赖后,就可以编译helloworld_demo案例来生成固件了,具体编译方法可参考。

 

4.6、烧录固件

helloworld_demo案例的固件生成后,可参考来烧录固件。

 

4.7、打开串口

固件烧录完成后,可以通过串口查看示例的运行结果,打开串口的具体方法可参考。

当串口终端打开成功后,可在串口中输入help来查看已添加的测试命令。

 

4.8、测试示例

CLI命令行输入:

fatfs_example

关键日志

CLI日志:

fatfs component example start!aos_open fd1=xxxaos_write num=xxxaos_open fd2=xxxaos_lseek position=xxxaos_read: xxxxfatfs component example end !

 

开发者支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号。

更多技术与解决方案介绍,请访问HaaS官方网站。

转载地址:http://isdrf.baihongyu.com/

你可能感兴趣的文章
运行springboot项目出现:Type javax.xml.bind.JAXBContext not present
查看>>
Java中多线程向mysql插入同一条数据冲突问题
查看>>
Idea Maven项目使用jar包,添加到本地库使用
查看>>
FastDFS集群架构配置搭建(转载)
查看>>
HTM+CSS实现立方体图片旋转展示效果
查看>>
FFmpeg 命令操作音视频
查看>>
问题:Opencv(3.1.0/3.4)找不到 /opencv2/gpu/gpu.hpp 问题
查看>>
目的:使用CUDA环境变量CUDA_VISIBLE_DEVICES来限定CUDA程序所能使用的GPU设备
查看>>
问题:Mysql中字段类型为text的值, java使用selectByExample查询为null
查看>>
程序员--学习之路--技巧
查看>>
解决问题之 MySQL慢查询日志设置
查看>>
contOS6 部署 lnmp、FTP、composer、ThinkPHP5、docker详细步骤
查看>>
TP5.1模板布局中遇到的坑,配置完不生效解决办法
查看>>
PHPstudy中遇到的坑No input file specified,以及传到linux环境下遇到的坑,模板文件不存在
查看>>
TP5.1事务操作和TP5事务回滚操作多表
查看>>
composer install或composer update 或 composer require phpoffice/phpexcel 失败解决办法
查看>>
TP5.1项目从windows的Apache服务迁移到linux的Nginx服务需要注意几点。
查看>>
win10安装软件 打开时报错 找不到 msvcp120.dll
查看>>
PHPunit+Xdebug代码覆盖率以及遇到的问题汇总
查看>>
PHPUnit安装及使用
查看>>