Ardunio Uno Power Source: USB vs Power Jack


hi all,

i purchased arduino uino board , sparkfun microsd shield 1-2 months ago.  i'm trying collect pressure data records sd card.  got working , installed heartbeat led indicate data being logged.  works when use usb cable power i'm having issues when use 9v , 12v power packs.  when use power pack connection, heart beat led not pulse , logging unreliable.  i'll have data, no date, or corrupted file.


i'm not sure going on , use help.  thought must hardware issue since board getting powered not functioning correctly. attached code adapted sdfat library example:


// simple data logger arduino analog pins optional ds1307
// uses rtclib https://github.com/adafruit/rtclib
#include <sdfat.h>
#include <sdfatutil.h>  // define freeram()

#define sd_chip_select  ss  // sd chip select pin
#define use_ds1307       0  // set nonzero use ds1307 rtc
#define log_interval  1000  // mills between entries
#define sensor_count     3  // number of analog pins log
#define echo_to_serial   0  // echo data serial port if nonzero
#define wait_to_start    1  // wait serial input in setup()
#define adc_delay       0  // adc delay high impedence sensors

// file system object
sdfat sd;

// text file logging
ofstream logfile;

// serial print stream
arduinooutstream cout(serial);

// buffer format data - makes eaiser echo serial
char buf[80];

// constants won't change. used here
// set pin numbers:
const int ledpin =  7;      // number of led pin

// variables change:
int ledstate = low;             // ledstate used set led

//------------------------------------------------------------------------------
#if sensor_count > 6
#error sensor_count large
#endif  // sensor_count
//------------------------------------------------------------------------------
// store error strings in flash save ram
#define error(s) sd.errorhalt_p(pstr(s))
//------------------------------------------------------------------------------

void setup() {


  // initialize sd card @ spi_half_speed avoid bus errors with
  if (!sd.begin(sd_chip_select, spi_half_speed)) sd.initerrorhalt();

  // create new file in root, current working directory
  char name[] = "logger00.csv";

  (uint8_t = 0; < 100; i++) {
    name[6] = i/10 + '0';
    name[7] = i%10 + '0';
    if (sd.exists(name)) continue;
    logfile.open(name);
    break;
  }
  if (!logfile.is_open()) error("file.open");

  //format header in buffer
  obufstream bout(buf, sizeof(buf));

  bout << pstr("millis");

  (uint8_t = 0; < sensor_count; i++) {
    bout << pstr(",sens") << int(i);
  }
  logfile << buf << endl;


}
//------------------------------------------------------------------------------
void loop() {
  uint32_t m;

  // wait time multiple of interval
  {
    m = millis();
  } while (m % log_interval);

  // use buffer stream format line
  obufstream bout(buf, sizeof(buf));

  // start time in millis
  bout << m;

  // read analog pins , format data
  (uint8_t ia = 0; ia < sensor_count; ia++) {
#if adc_delay
    analogread(ia);
    delay(adc_delay);
#endif  // adc_delay
    bout << ',' << analogread(ia);
  }
  bout << endl;

  // log data , flush sd
  logfile << buf << flush;

  // check error
  if (!logfile) error("write data failed");

  // don't log 2 points in same millis
  if (m == millis()) delay(1);
 
 
  // toggle led state
  if (ledstate == low)
     ledstate = high;
  else
     ledstate = low;
  // set led ledstate of variable:
  digitalwrite(ledpin, ledstate);
 

}

any appreciated!

when external power connected, measure voltage on vin , 5v pin.

the measurement on vin tell voltage external power providing when under load.  may lower expected.

measuring 5v pin tell if on-board regulator shutting down.


Arduino Forum > Using Arduino > Installation & Troubleshooting > Ardunio Uno Power Source: USB vs Power Jack


arduino

Comments

Popular posts from this blog

Convierte tu Raspberry en un NAS. Firmware fvdw-sl 15.3 - Raspberry Pi Forums

How to format a Get Request

avrdude: verification error, first mismatch at byte 0x0000 0x0c != 0x62