TF
更新时间:2017-08-08 阅读:14228
目录
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); }