Şimdi Ara

Yazdığım Kod Sadece Seri Port Ekranında Çalışıyor!

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
319
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar öncelikle ben arduino konusunda yeniyim. Aklınızda bir çözüm önerisi varsa olabildiğince basit anlatabilirseniz çok sevinirim.
    Şimdi sorunum şu şekilde;
    ARDUINO modelim klondur.
    Arduino üzerinde sd kart okuyucu, ds 1307 RTC ve MCP9808 sensörleri ile anlık sıcaklık verilerini tarih/saat de dahil olarak sd kart üzerinden bir metin belgesi oluşturmayı hedefledim. İnternet üzerinden hazır kodlar ile ufak tefek oynayarak çalıştırdım. Seri port ekranında hatasız bi şekilde istediğim gibi çalışıyor. Fakat harici bir şekilde yani bilgisayardan çıkarıp 9V pil ile beslediğim zaman sistem çalışmıyor. Sorunun kaynağı nedir ve nasıl düzeltebilirim yardımcı olursanız sevinirim :))
    NOT= İlk harici denemelerimde çalışmıştı. Hiç bir kod ile oynamadım ve donanımları kurcalamadım. Ertesi gün aynı şekilde denediğimde çalışmamaya başladı.

    Kod şu şekilde;
    /*
    SD card read/write
    This example shows how to read and write data to and from an SD card file
    The circuit:
    SD card attached to SPI bus as follows:
    ** MOSI - pin 11
    ** MISO - pin 12
    ** CLK - pin 13
    ** CS - pin 10 (for Adafruit Feather 32u4)
    */

    #include <SPI.h>
    #include <SD.h>
    #include <Wire.h>
    #include "RTClib.h"
    #include "Adafruit_MCP9808.h"

    RTC_DS1307 RTC; // define the Real Time Clock object
    Adafruit_MCP9808 tempsensor = Adafruit_MCP9808(); // define the MCP9808 object

    const int chipSelect = 10;
    File logfile;

    void setup() {
    // Open serial communications and wait for port to open:
    Serial.begin(9600);
    while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
    }
    Serial.print("SD Kart Yükleniyor... ");

    // see if the card is present and can be initialized:
    if (!SD.begin(chipSelect)) {
    Serial.println("Kart Hatası");
    // don't do anything more:
    return;
    }
    Serial.println("Kart Yüklendi.");

    // Open the file to write the .csv legends.
    logfile = SD.open("data.txt", FILE_WRITE);
    logfile.println("Tarih/Saat, Sıcaklık (°C,°F)");
    logfile.close();

    if (!tempsensor.begin(0x18)) {
    Serial.println("Sıcaklık Sensörü Algılanamadı");
    while (1);
    }

    // connect to RTC
    Wire.begin();
    if (!RTC.begin()) {
    logfile.println("Zaman Sensörü Algılanamadı");
    }

    RTC.adjust(DateTime(F(__DATE__), F(__TIME__)));
    }

    void loop() {

    // fetch the time
    DateTime now = RTC.now();
    // get the temperature
    float c = tempsensor.readTempC();
    float f = tempsensor.readTempF();
    // set up buffer for date and time
    char dateBuffer[14];

    // Open the file. Note that only one file can be open at a time,
    // so you have to close this one before opening another.
    File logfile = SD.open("data.txt", FILE_WRITE);

    if (logfile) {
    logfile.print("Tarih/Saat:");
    sprintf(dateBuffer, "%02u-%02u-%02u %02u:%02u:%02u, ", now.day(), now.month(), now.year(), now.hour(), now.minute(), now.second());
    logfile.print(dateBuffer);
    Serial.print("Tarih:");
    Serial.print(dateBuffer);
    Serial.print("
    ");

    Serial.print("Sıcaklık:");
    logfile.print(c, 3); logfile.print("°C\t ve ");
    logfile.print(f, 3); logfile.println("°F.");
    logfile.close();

    Serial.print(c, 3); Serial.print("°C\t ve ");
    Serial.print(f, 3); Serial.println("°F.");



    }
    else {
    Serial.println("Data Açma Hatası");
    }

    delay(1000);
    }



    < Bu mesaj bu kişi tarafından değiştirildi brsgzl -- 25 Mart 2019; 0:9:24 >







  • büyük ihtimal çalışmamasının sebebi
    while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
    }
    bu satırlar. bunu silip bir daha dene.
  • Bugün denicem ufak bi araştırma sonucu bazı arduino modellerinin 9v veya 12v luk kaynaklar kullanımı sonucunda regülatörlerinin yandığında söz edilmiş böyle bir ihtimal olabilir mi? İdeal çalışma aralığı 7-12 deniyor sürekli 9v luk pille kullandım harici olarak ve buna rağmen bi süre sonra çalışmayı kesi ve sadece USB girişinden 5v 500mA alınca çalışmaya başladı saçma değil mi
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.