Выбор контакта SdFat.h ESP8266
Этот очень простой код, который сохраняет данные в файл csv, прекрасно работает на моем Arduino Uno (я использую контакты SPI по умолчанию).
Однако для моего проекта мне нужно использовать ESP8266. Использует ли библиотека автоматически контакты SPI по умолчанию для других плат?
В своем коде я попытался изменить вывод CS с 10 на 15 для ESP8266. Все, что я получаю, это «Ошибка инициализации»! Я полагаю, мне нужно как-то изменить другие контакты SPI, такие как MOSI, MISO и SCK. Есть ли способ сделать это? Я абсолютный нуб, поэтому заранее прошу прощения, если я просмотрел какое-то простое решение.
#include <SdFat.h>
SdFat sd;
SdFile file;
void setup() {
Serial.begin(9600);
if (!sd.begin(10, SD_SCK_MHZ(50))) {
Serial.println("Initialization failed!");
return;
}
if (!file.open("data.csv", O_RDWR | O_CREAT | O_AT_END)) {
Serial.println("Error opening file!");
return;
}
file.println("Sensor1,Sensor2,Sensor3");
}
void loop() {
float sensorReading1 = 1;
float sensorReading2 = 1;
float sensorReading3 = 1;
file.print(sensorReading1);
file.print(",");
file.print(sensorReading2);
file.print(",");
file.println(sensorReading3);
file.sync();
delay(1000);
}
@NE555, 👍1
1 ответ
Я просто попробовал еще раз и каким-то образом мне удалось заменить SD_SCK_MHZ(50), который работал на моем Arduino Uno, на SPI_HALF_SPEED. Теперь тот же код, что и выше, отлично работает на моем esp8266.
- Как заставить 5-вольтовое реле работать с NodeMCU
- ESP8266 не подключается к Wi-Fi
- Разница между этими двумя платами NodeMCU?
- NodeMCU - использовать кнопку flash в качестве входного сигнала в loop()
- Как определить размер Flash?
- Как изменить имя модуля ESP8266-12E по умолчанию
- Простой запрос GET с ESP8266HTTPClient
- В ESP-12E NodeMCU, какой выход PIN A0?