neo-7m reset + change rate
- Войдите на сайт для отправки комментариев
Пнд, 02/07/2018 - 01:39
Добрый. Я хочу просто сбросить neo-7m к дефолту и поменять скорость на 115200. Подскажите плиз что я делаю не так?
#include <SoftwareSerial.h> SoftwareSerial gps = SoftwareSerial(4,3); byte resetGps[] = {0xB5,0x62,0x06,0x09,0x0D,0x00,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x03,0x1B,0x9A, 0xB5,0x62,0x05,0x01,0x02,0x00,0x06,0x09,0x17,0x40}; byte rate115200[] = {0xB5,0x62,0x06,0x00,0x14,0x00,0x01,0x00,0x00,0x00,0xD0,0x08,0x00,0x00,0x00,0xC2,0x01,0x00,0x07,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0xC0,0x7E, 0xB5,0x62,0x06,0x00,0x01,0x00,0x01,0x08,0x22}; byte rate57600[] = {0xB5,0x62,0x06,0x00,0x14,0x00,0x01,0x00,0x00,0x00,0xD0,0x08,0x00,0x00,0x00,0xE1,0x00,0x00,0x07,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0xE2,0xE1 0xB5,0x62,0x06,0x00,0x01,0x00,0x01,0x08,0x22}; void setup() { long rates[] = {115200, 57600, 38400, 19200, 9600}; for (int i = 0; i < sizeof(rates)/sizeof(long); i++) { gps.begin(rates[i]); gps.write(resetGps,sizeof(resetGps)); gps.end(); delay(500); } gps.begin(9600); gps.write(rate115200,sizeof(rate115200)); gps.end(); gps.begin(115200); Serial.begin(115200); } void loop() { while(gps.available() > 0){ Serial.write(gps.read()); } }
Но в консоле мы видим смещение: