Lab15
SD 記憶卡
[材料]
Arduino主板 x 1
麵包板 x 1
micro SD模組 x 1 (SD卡模組有兩排插槽,建議兩排都插滿)
2g以內SD卡 x 1 (SD卡先格式化成fat格式)
注意:請在Arduino關閉電源時,再進行"安裝"和"退出"SD記憶卡,以免SD記憶卡受損。
[micro SD模組之腳位]
CS --> to Arduino pin4
SCK --> to Arduino pin13
MOSI --> to Arduino pin11
MISO --> to Arduino pin12
VCC --> to Arduino 5V
GND --> to Arduino GND
注意:pin10已被SD記憶卡的函式庫使用,不能再作為其他感測器使用。
/* Lab15 SD記憶卡 程式碼*/
/*SD卡
CS --> to Arduino pin4
SCK --> to Arduino pin13
MOSI --> to Arduino pin11
MISO --> to Arduino pin12
VCC --> to Arduino 5V
GND --> to Arduino GND
*/
#include <SPI.h>
#include <SD.h>
File myFile;
String filename = "test.csv"; //要寫入的檔案名稱
void setup() {
pinMode(10,OUTPUT); //保留pin10, SD Library需要使用
while (!SD.begin(4)) {}
Serial.begin(9600);
}
void loop()
{
float timesec= millis()/1000.0; //目前時間,單位是"秒"
char timesecstr[6];
dtostrf(timesec,3, 3, timesecstr);
Serial.print(timesecstr);
myFile = SD.open(filename, FILE_WRITE);
if (myFile) {
Serial.print("Writing to test.txt...");
myFile.print(timesecstr); //寫入時間
myFile.print(","); //之後每個數據之間加入逗號","
myFile.print("testing123"); //要寫偵測數據時,這一行請換掉
//myFile.print(","); //每個數據之間加入逗號","
myFile.println();
myFile.close(); //關閉檔案
Serial.println("done.");
} else {
Serial.println("error opening test.txt");
}
}
[基本問題]
1. 使用SD記憶卡紀錄「溫濕度」or「氣壓」or「PM2.5」的數據,並用EXCEL做出時間關係圖。
2. SD記憶卡、WIFI紀錄、LCD螢幕顯示、電腦螢幕顯示,以上四種數據顯示的方式各有那些優缺點,或使用場合?
[挑戰問題]
1. 使用SD記憶卡,設計一個實驗,長期監測數天的環境變化資料。