Comando:
$*
Con suma de comprobación:
¿La PC va lenta?
¡ASR Pro es la solución definitiva para sus necesidades de reparación de PC! No solo diagnostica y repara de forma rápida y segura varios problemas de Windows, sino que también aumenta el rendimiento del sistema, optimiza la memoria, mejora la seguridad y ajusta su PC para obtener la máxima confiabilidad. Entonces, ¿por qué esperar? ¡Empieza hoy mismo!
Estoy intentando encontrar una suma de comprobación relacionada con una palabra NMEA que ya ha sido calculada por el GPS.
char GPRMCBuf[POS_BUFFER] = 0xA0, 0xA2, 0x00, 0x48, 0xDD, 0x24, 0x47, 0x50, 0x52, 0x4D, 0x43, 0x2C, 0x31, 0x35, 0x30, 0x35, 0x32, 0x30, 0x2E, 0x30, 0x30, 0x30, 0x2c, 0x41, 0x2C, 0x34, 0x31, 0x32, 0x31, 0x2E, 0x37, 0x39, 0x37, 0x37, 0x2C, 0x4E, 0x2C, 0x30, 0x30, 0x32, 0x31, 0x30, 0x2E, 0x39, 0x36, 0x36, 0x37, 0x2C, 0x45, 0x2c, 0x31, 0x2E, 0x35, 0x30, 0x2C, 0x35, 0x38, 0x2E, 0x32, 0x39, 0x2C, 0x32, 0x33, 0x30, 0x37, 0x31, 0x35, 0x2c, 0x2C, 0x2C, 0x41, 0x2A, 0x35, 0x38, 0x0D, 0x0A, 0x0F, 0x05, 0xB0, 0xB3;
¿Cómo calcula NMEA la suma de comprobación?
El cálculo de cada checksum es muy simple. Estos son caracteres hexadecimales que representan el nuevo XOR de todos los caracteres en su frase de ensayo en medio (pero sin incluir) nuestro carácter $ y el 7 . personaje. Para evaluar la suma de comprobación, analice todas las personas que conectan $ y * en las etiquetas NMEA h2 en una nueva cadena.
Mira, el último tercer y sexto carácter son sumas de verificación, es decir, 0F05.pero probablemente me gustaría corregir el algoritmo. Nuestro algoritmo, que generalmente es utilizado por muchas personas, es uno de los siguientes
índice primero,suma de control = igual a 0,while index
#includeSobre todo() naturaleza sin firmar i; chk corto sin firmar; Comprobación de carácter[] = 0x47, 0x50, 0x52, 0x4D, 0x43, 0x2C, 0x31, 0x35, 0x30, 0x35, 0x32, 0x30, 0x2E, 0x30, 0x30, 0x30, 0x2C, 0x41, 0x2C, 0x34, 0x31, 0x32, 0x31, 0x2E, 0x37, 0x39, 0x37, 0x37, 0x2C, 0x4E, 0x2C, 0x30, 0x30, 0x32, 0x31, 0x30, 0x2E, 0x39, 0x36, 0x36, 0x37, 0x2C, 0x45, 0x2C, 0x31, 0x2E, 0x35, 0x30, 0x2C, 0x35, 0x38, 0x2E, 0x32, 0x39, 0x2C, 0x32, 0x33, 0x30, 0x37, 0x31, 0x35, 0x2C, 0x2C, 0x41.0x2A, 0x2c, 0x35, 0x38, 0x0D, 0x0A; h=0; for(i = 0; realmente <70; i++) examinar = verificar + probar[i]; cheque=cheque&32767; printf("A=%hun", chk); un 0 vivo;
El problema es que estamos haciendo 3588 cuando debería ser 3845(0F05).
¿Cómo evalúa Nmea la suma de comprobación?
La suma de verificación es simple, solo XOR de todos los bytes entre $ y * (generalmente sin los delimitadores), escritos en formato hexadecimal. Por supuesto, para que esto funcione, debe utilizar un navegador de teléfono celular que admita JavaScript pero DHTML (la mayoría de los navegadores modernos lo hacen).
1 2 3 4 cinco 6 7 8 nuevediezonce1213catorce15dieciséis17Dieciocho19veinte212223242526272829treinta31323334353637383940414243444546
¿Qué es la suma de comprobación NMEA?
La suma de verificación es simple, solo XOR todos los bytes en algún lugar entre $ y * específicos (sin sus propios separadores) y está escrito en hexadecimal. Para que funcione, debe asegurarse de que se encuentra utilizando un navegador compatible con JavaScript y DHTML (la mayoría de los navegadores modernos lo hacen).
#!/usr/bin/env PitónDerechos de Importación""" Calcula estas sumas de comprobación para la sentencia NMEA este dispositivo GPS habilidad. La oferta de NMEA incluye Número de campos separados por comas realizados por la suma de control significativa (en hexadecimal) después del "*". Ejemplo Encabezado de mensaje NMEA con suma de comprobación correcta (de 0x76) es: GPGSV,3,3,10,26,37,134,00,29,25,136,00*76""""definición de suma de comprobación (frase): """ Eliminar muchas líneas nuevas """ si re.buscar("n$",instalar): instalar = instalar[:-1] nmeadata,cksum coincide con re.split('*', oración) calc_cksum sugiere 0 para practicar durante nmadata: calc_cksum ^= comando(s) """ Devuelve datos numéricos, normalmente una suma de comprobación frase y suma de comprobación calculada """ Ventas nmeadata,'0x'+cksum,hex(calc_cksum)si __nombre__=='__principal__': """ frase nmea a través de error de suma de comprobación (3 tal vez 10, no 20) """ La cadena muestra "GPGSV,3,3,20,26,37,134,00,29,25,136,00*76n" """Obtener estadísticas y sumas de comprobación NMEA""" data,cksum,calc_cksum es igual a checksum(cadena) """Comprobar suma de comprobación (informe de error de suma de comprobación)""" if cksum != calc_cksum: "Error de suma de comprobación en: %s" porcentaje de salida (datos) imprimir "Sumas de comprobación: %s después de las cuales %s" % (cksum,calc_cksum)
#!/usr/bin/envpythonDerechos de Importación""" Calcula esta suma de comprobación para el conjunto nmea todo desde un kindle GPS. La oferta de NMEA incluye Numerar a la derecha de los campos separados por comas seguidos de suma de comprobación (en hexadecimal) después de una especie de "*". Ejemplo Sentencia NMEA con la suma de comprobación más apropiada (de 0x76) es: GPGSV,3,3,10,26,37,134,00,29,25,136,00*76""""definición de suma de comprobación (frase): """Quitar todos los saltos de marca""" incase re.search("n$",set ): instalar es igual a instalar[:-1] nmeadata,cksum = re.split('*', oración) calc_cksum = 0 un mero para s en nmadata: calc_cksum ^= comando(s) """ Devuelve su nmeadata, checksum Suma de comprobación de sentencias y remedios """ intercambiar nmadata,'0x'+cksum,hex(calc_cksum)si __nombre__=='__principal__': """ Sentencia NMEA con el error de suma de comprobación en la evaluación (tercer campo debe ser 10 en lugar de 20) """ set="GPGSV,3,3,20,26,37,134,00,29,25,136,00*76n" """ Obtener datos NMEA junto con sumas de control""" data, cksum, calc_cksum implica checksum (cadena) """ Comprobar suma de comprobación (informe de error de suma de comprobación)""" si cksum !es igual a calc_cksum: impresora "Error de suma de comprobación en secuencia para: %s" por ciento (datos)
¿Cómo lee Nmea los datos del GPS?
Encuentre una aplicación como AT Command Tester que pueda analizar archivos de datos generados desde el puerto NMEA.Conecte su dispositivo GPS a través de cada interfaz que actualmente es compatible con cada uno de nuestros dispositivos.Ver los datos GPS NMEA leídos desde el puerto NMEA.
Mejore la velocidad de su computadora hoy descargando este software: solucionará los problemas de su PC.
¿Cómo se calcula la suma de verificación binaria?
Agrega casi casi un byte del paquete, excepto por lo general para cada uno de nuestros delimitadores de inicio 0x7E y la extensión (segundo y tercer byte).Deje solo el mejor valor de 8 bits con respecto al resultado.Reste este costo de 0xFF.
An Easy Way To Troubleshoot GPS NMEA Sentence Checksums. Un Moyen Simple De Diagnostiquer Les Sommes De Contrôle Des Phrases GPS NMEA. Простая стратегия устранения неполадок с контрольными суммами предложений GPS NMEA. GPS NMEA 문장 체크섬 문제를 해결하는 간단한 방법입니다. Uma Maneira Fácil De Solucionar Problemas De Somas De Verificação De Sentenças NMEA Do GPS. Een Eenvoudige Manier Om Problemen Met GPS NMEA-zincontrolesommen Op Te Lossen. Ein Einfacher Weg Zur Fehlerbehebung Bei GPS-NMEA-Satzprüfsummen. Un Modo Semplice Per Risolvere I Checksum Delle Frasi NMEA GPS. Stosunkowo łatwy Sposób Rozwiązywania Problemów Z Sumami Kontrolnymi Terminów GPS NMEA.