/*============================================================== File........JP Serial MMC/SD Module Test code for Arduino Purpose.....This test code for JP MMC/SD Module MCU.........ATmega328 Auther......Jianping Sun Website.....www.JianpingUSA.com Email.......JP@JianpingUSA.com Started.....Jan. 3, 2011 Updated..... Note: The module Rx <===> Tx of Arduino ==============================================================*/ const int StatePin = 7; int StateVal = LOW; char FileName[13] = "JPMOD000TXT!"; void setup() { Serial.begin(2400); //J1 and J2 are connected. pinMode(StatePin, INPUT); delay(2000); /*============================================================== Format MMC/SD Card with FAT16 Warning: Format will erase ALL data on your MMC/SD card! Note: The format function will take about 25 sec. ==============================================================*/ // FormatMMC(); /*============================================================== Create 10 Text Files. ==============================================================*/ CreateFile(); /*============================================================== Append new data to 10 files. ==============================================================*/ AppendData(); /*============================================================== Open 4 files and clear them, write new data. ==============================================================*/ ClearFile(); /*============================================================== Delete #4 file. ==============================================================*/ DeleteFile(); } void loop(){} void FormatMMC() { Serial.print("MF!"); // Send format command delay(50); Serial.print("JPModule!!"); // Send Label Volume delay(1000); waiting: // Waiting for format to finish StateVal = digitalRead(StatePin); if (StateVal == LOW){ // Check state pin level. delay(100); goto waiting; } } void CreateFile() { for (int i = 0; i <= 9; i++){ FileName[7] = 48 + i; Serial.print("MC!"); delay(10); Serial.print(FileName); delay(10); Serial.print("20110101080808!"); // = 01-01-2011, 08:08:08 delay(450); Serial.print("Test file number is "); Serial.print(FileName[7]); delay(200); Serial.print("ABCDEFGHIJKLMNOPQRSTUVWXYZ!!"); delay(200); Serial.print("1234567890##"); delay(200); } } void AppendData() { for (int i = 0; i <= 9; i++){ FileName[7] = 48 + i; Serial.print("MA!"); delay(10); Serial.print(FileName); delay(10); Serial.print("20110101181818!"); // = 01-01-2011, 18:18:18 delay(450); Serial.print("Append new data to file number = "); Serial.print(FileName[7]); delay(200); Serial.print("abcdefghijklmnopqrstuvwxyz!!"); delay(200); Serial.print("1234567890##"); delay(200); } } void ClearFile() { for (int i = 0; i <= 3; i++){ FileName[7] = 48 + i; Serial.print("MW!"); delay(10); Serial.print(FileName); delay(10); Serial.print("20110101171717!"); // = 01-01-2011, 17:17:17 delay(450); Serial.print("Write new data to file number = "); Serial.print(FileName[7]); delay(200); Serial.print("abcdefghijklmnopqrstuvwxyz!!"); delay(200); Serial.print("1234567890##"); delay(200); } } void DeleteFile() { FileName[7] = 48 + 4; Serial.print("MD!"); delay(10); Serial.print(FileName); delay(10); Serial.print("20080229181808!"); delay(100); }