Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wire.h>
- #include "RTClib.h"
- #include <SD.h>
- Sd2Card SDcard;
- SdVolume volume;
- RTC_DS1307 rtc;
- char daysOfTheWeek[7][12] = {"Domingo", "Segunda", "Terca", "Quarta", "Quinta", "Sexta", "Sabado"};
- const int trigPin = 5;
- const int echoPin = 6;
- long duration;
- float distance;
- // Pino ligado ao CS do modulo
- const int chipSelect = 4;
- void setup() {
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
- pinMode(2, OUTPUT);
- Serial.begin(9600);
- while (!Serial);
- Serial.begin(57600);
- if (! rtc.begin()) {
- Serial.println("Couldn't find RTC");
- while (1);
- }
- if (! rtc.isrunning()) {
- Serial.println("RTC is NOT running!");
- rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
- // rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
- }
- //Inicia a comunicacao com o modulo SD
- if (!SD.begin(chipSelect))
- {
- Serial.println("Falha ao acessar o cartao !");
- Serial.println("Verifique o cartao/conexoes e reinicie o Arduino...");
- return;
- }
- Serial.println("Cartao iniciado corretamente !");
- Serial.println("Aguardando acionamento do push-button...");
- Serial.println();
- }
- void loop() {
- // put your main code here, to run repeatedly:
- digitalWrite(trigPin, LOW);
- delayMicroseconds(2);
- digitalWrite(trigPin, HIGH);
- delay(1000);
- digitalWrite(trigPin, LOW);
- duration = pulseIn(echoPin, HIGH);
- distance = duration * (0.000347 / 2);
- Serial.print("Distancia: ");
- Serial.println(distance);
- DateTime now = rtc.now();
- Serial.print(now.day(), DEC);
- Serial.println();
- Serial.print('/');
- Serial.print(now.month(), DEC);
- Serial.print('/');
- Serial.print(now.year(), DEC);
- Serial.print(" (");
- Serial.print(daysOfTheWeek[now.dayOfTheWeek()]);
- Serial.print(") ");
- Serial.print(now.hour(), DEC);
- Serial.print(':');
- Serial.print(now.minute(), DEC);
- Serial.print(':');
- Serial.print(now.second(), DEC);
- Serial.println();
- // Abrindo o arquivo txt com o nome arquivo
- File dataFile = SD.open("arquivo.txt", FILE_WRITE);
- // Gravando os dados no arquivo.txt
- if (dataFile)
- {
- dataFile.print("Distancia: ");
- dataFile.println(distance);
- dataFile.print(now.day(), DEC);
- dataFile.println();
- dataFile.print('/');
- dataFile.print(now.month(), DEC);
- dataFile.print('/');
- dataFile.print(now.year(), DEC);
- dataFile.print(" (");
- dataFile.print(daysOfTheWeek[now.dayOfTheWeek()]);
- dataFile.print(") ");
- dataFile.print(now.hour(), DEC);
- dataFile.print(':');
- dataFile.print(now.minute(), DEC);
- dataFile.print(':');
- dataFile.print(now.second(), DEC);
- dataFile.println();
- dataFile.close();
- }else{
- // Mensagem de erro caso ocorra algum problema
- // na abertura do arquivo
- Serial.println("Erro ao abrir arquivo.txt !");
- }
- delay(3000);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement