Yun rev 2 Bridge library conflict #49
Replies: 2 comments
-
If you mean that you are adding
into your datalogger example file, and doing nothing else, then yes. That will break everything. This is because including the header file immediately converts the run-time to use a scheduler, and the |
Beta Was this translation helpful? Give feedback.
-
Your datalogger needs to look like this. /*
SD card datalogger
This example shows how to log data from three analog sensors
to an SD card using the SD library.
The circuit:
analog sensors on analog ins 0, 1, and 2
SD card attached to SPI bus as follows:
** MOSI - pin 11
** MISO - pin 12
** CLK - pin 13
** CS - pin 4 (for MKRZero SD: SDCARD_SS_PIN)
created 24 Nov 2010
modified 9 Apr 2012
by Tom Igoe
This example code is in the public domain.
*/
#include <Arduino_FreeRTOS.h>
#include <SPI.h>
#include <SD.h>
const int chipSelect = 4;
void *DataloggerTask(void* params) {
(void) params;
String dataString;
// 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("Initializing SD card...");
// see if the card is present and can be initialized:
if (!SD.begin(chipSelect)) {
Serial.println("Card failed, or not present");
} else
Serial.println("Card initialized.");
// 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 dataFile = SD.open("datalog.txt", FILE_WRITE);
while (true)
{
// make a string for assembling the data to log:
dataString = "";
// read three sensors and append to the string:
for (int analogPin = 0; analogPin < 3; analogPin++) {
int sensor = analogRead(analogPin);
dataString += String(sensor);
if (analogPin < 2) {
dataString += ",";
}
}
// if the file is available, write to it:
if (dataFile) {
dataFile.println(dataString);
dataFile.close();
// print to the serial port too:
Serial.println(dataString);
}
// if the file isn't open, pop up an error:
else {
Serial.println("error opening datalog.txt");
}
}
}
void setup() {
xTaskCreate(DataloggerTask, "datalogger", 512, NULL, 1, NULL);
}
void loop() {
} |
Beta Was this translation helpful? Give feedback.
-
Hello,
If you use the bridge library to write to the µSD card, as soon as you include Arduino_FreeRTOS in your sketch, you can't access anymore to the file on the SD card.
Just include your library into datalogger example sketch break it : the sketch is no more able to open and write to the file. The serial link hang.
I use a Yun rev 2, up to date with arduino 1.8.7 (last one).
Thanks
Beta Was this translation helpful? Give feedback.
All reactions