Fireduino 开源创意平台 立即购买

拥有双核Cortex-M3处理器,集成高质量音频Codec和WiFi模组,拥有良好的IOT扩展性能,完美兼容Arduino IDE和Arduino标准接口,并支持FireBlock图形化编程软件,是一款首选的编程启蒙教学平台,更是一款开源的创意原型平台。

TF

更新时间:2017-08-08 阅读:1586

Fireduino TF

Fireduino 硬件内部集成SDIO 控制器,可通过SDIO 接口驱动TF卡,比Arduino SPI 接口速度有得天独厚的优势。

Fireduino TF API

begin()

   说明
       初始化库和TF卡。
语法 TF.begin();
参数 无
返回 返回成功或者失败(true、 false )

open(...)

   说明
       打开文件,默认为只读
语法 TF.open(filename); TF.open(filename,FILE_WRITE);
参数 filename:文件名 读写权限(FILE_READ,FILE_WRITE)
返回 返回文件类句柄

exists(...)

   说明
       测试文件或目录是否存在TF卡上
语法 TF.exists(filename);
参数 filename:文件名或目录名
返回 返回成功或者失败(true、 false )

mkdir(...)

    说明
       在TF卡上创建目录
语法 TF.mkdir(dirname);
参数 dirname:目录名
返回 返回成功或者失败(true、 false )

remove(...)

   说明
      从TF卡上删除文件
语法 TF.remove(filename);
参数 filename:文件名
返回 返回成功或者失败(true、 false )

rmdir(...)

   说明
       删除目录
语法 TF.rmdir(dirname);
参数 dirname:目录名
返回 返回成功或者失败(true、 false )

Fireduino File API

write(...)

   说明
       向文件写入数据
语法 file.write(data) file.write(buf, len)
参数 data:字符 buf :字符数组 len :写入长度
返回 写入的字符个数

read(...)

   说明
       从文件读取数据
语法 file.read() file.read(buf, len)
参数 data:字符 buf :字符数组 len :写入长度
返回 读取的字符或读取的字符个数

peek(...)

   说明
       偷窥文件的下一个字符(文件指针位置不移动)
语法 file.peek()
参数 无
返回 下一个字符,如果下一个为空则返回 -1.

seek(...)

   说明
       移动文件指针位置(从头开始)
语法 file.seek(pos)
参数 pos:新的指针位置(0~文件大小)
返回 返回成功或者失败(true、 false )

available()

   说明
       检查文件是否有内容
语法 file.available()
参数 无
返回 可读的字符个数

flush()

    说明
       确保写入文件
语法 file.flush()
参数 无
返回 无

position()

   说明
       获取文件当前指针位置
语法 file. position()
参数 无
返回 文件指针的位置

size()

   说明
       获取文件大小
语法 file.size()
参数 无
返回 文件大小

close()

   说明
       关闭文件
语法 file.close()
参数 无
返回 无

Fireduino TF 示例程序

#include "Arduino.h"
#include "TF.h"
File file;
void setup(void)
{
	Serial.begin(115200);
	Serial.print("\r\narduino setup ...\r\n");
	if(!TF.begin())
	{
		Serial.println("\r\nTF.begin err ...\r\n");
		while(1);
	}
	file = TF.open("test.txt",FILE_WRITE);
	if(root)
	{
		Serial.println("TF.open(\"test.txt\") ok!");
		file.write((unsigned char *)"01234567890",10);
		file.write(65);
		file.write(66);
		file.write(65);
		file.write(66);
		file.write((unsigned char *)"01234567890",10);
		file.seek(0);
		Serial.print("file size:");
		Serial.println(file.size());
		while(root.available())
		{
			Serial.println(file.read(),BYTE);
		}
		file.close();
	}
	else
	{
		Serial.println("TF.open(\"test.txt\") err!\n");
	}
}
void loop(void)
{
	Serial.println("loop ... \r\n");
	delay(1000);
}