有時用黎做下 logging 都幾好既, 又或者可以用黎放歌仔去播.
睇睇樣先:
基本資料:
電壓: | 5V/3.3V |
接口: | SPI |
相關資料下載:
接線方法:
UNO | SD Module |
---|---|
D4 / D10 | CS |
D11 | MOSI |
D12 | MISO |
SCK | D13 |
5V/3.3V | 5V/3.3V |
GND | GND |
注意:
一般 CS 係接 D10 既, 不過官網上既例子係用左 D4. 所以要睇清楚去接.
呢塊野可以用 5V 或 3.3V 既, 如果 UNO 就無所謂, 無樣都有, 否則就跟番你塊板有乜接乜.
測試程式:
基本上 Arduino IDE 本身已有唔少 (File->Examples->SD), 我都唔想多講.
不過就左方便對比, 做左幾個測試結果出黎.
首先搵左張 2GB 既 SD card (注意, 佢唔支援 SDHC 的, 一定要最弱既 SD).
Format 用 FAT16, 再整左一個 ReadMe.Txt, 一個 Arduino 既 Folder, 入面有個 Dummy.Txt.
全部 file 都係吉既, 只係為左測試用.
注意, 因為部份 example 會寫 file, 呢個結果係由 吉card 順住做的.
而當中有幾個會不斷 write 野, 中途停佢好似會出事. 個 Example 應該加個位比人 quit.
執行 CardInfo 既結果:
執行 Datalogger 既結果:
(注意, 因為一 upload 完佢就行, 係咁 send 野, 有可能你一開始仲有幾個數字的)
執行 Datalogger 既結果:
(注意, 同樣一 upload 完佢就行, 係咁 send 野, 有可能你一開始仲有幾個數字的)
執行 Files 既結果:
執行 listfiles 既結果:
玩完上面幾個 examples, 因為經常會 write 緊果下停, 有機會出現呢個 error, 今次剛好在測試 listfiles 時出現.
只好再 format 佢一次, create 番之前講既 file 再行.
最後係執行埋 ReadWrite...好不幸, 出 error:
抽出黎再試左幾次都係一樣. 開番張 card 黎睇, 無哂我之前 create 既野, 得番一個 TEST.TXT, 入面吉既. 咁又試下再 format 張 card, 吉既比佢行. 結果都係一樣, 放棄了.
最後提提大家, 今次 Arduino IDE 入面既 Example, 真係好差. SD card 既 read / write, 除非你做 自動系統, 否則 read / write SD card 最好有少少 UI, 避免 read / write 過程中 SD card 被拔走.
之前自己做既 logging, 一個自動化系統, 每次 write 緊都會亮燈, write 完即 close file 等一等就熄燈. 而且每次再 write 都會有一定時間分隔. 除非死機, 否則自己見到亮燈就唔會停佢.
沒有留言:
張貼留言