13

Arduino - несколько TX и RX

Привет.

У меня ситуация :)
Хочу записать на флэшку данные с GPS.
Использую амперку в качестве GPS и тройку для SD.

По отдельности они прекрасно работают.

Но когда я запускаю их вместе, работает только запись и чтение карты.
Я посадил картридер на стандартные tx и rx и определил ему CS на 4 порту.
А для GPS прописал вирт пины. вот код

const uint8_t pinRX = 10;
const uint8_t pinTX = 9;
SoftwareSerial SerialGPS(pinRX, pinTX);
#define SD_CS_PIN 4

void setup() {
Serial.begin(9600);
if (!SD.begin(SD_CS_PIN)) {
Serial.println("card failed");
}

SettingsGPS.begin(SerialGPS);
gps.begin(SerialGPS);
SettingsGPS.baudrate(9600);
SettingsGPS.system(GPS_GP, GPS_GL);
SettingsGPS.model(GPS_PORTABLE);

SettingsGPS.composition(NMEA_RMC);
SettingsGPS.updaterate(1);
}

я понимаю, что идет конфликт , но я не понимаю как его исправить.
может кто объяснить?

Arduino & Pi

1.5K поста20.8K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу

Вы смотрите срез комментариев. Показать все
0
DELETED
Автор поста оценил этот комментарий

Я нихрена не знаю про ардуины, но я бы поменял местами блоки кода, отвечающие за инициализацию GPS и SD. Если конфликт в логике кода, то ожидаемый результат - GPS начнёт работать, а SD отвалится.

Алсо, неплохо бы проверку аналогичную той, что на коннект с SD, для GPS тоже прописать. Вдруг чо интересное напишет, в самом деле.

раскрыть ветку (2)
0
Автор поста оценил этот комментарий
0
Автор поста оценил этот комментарий

логику перебирал. менял местами. все одно. карта пишет, а гпс глохнет

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку