28-01-2015, 08:51 PM
(Seda postitust muudeti viimati: 28-01-2015, 08:53 PM ja muutjaks oli felch.)
(28-01-2015, 05:09 PM)A.R. Kirjutas: Aga mis on siis CRC-25.
Katsetasin transleerida seda algselt pakutut C-d.
Tuli välja,
on olemas hex PIC18F4550-le (ja Picutajatele)
ning ka disasm fail.
Saab vaadata mis juhtub Debugi all.
Kas on teada mõned sisendkoodid ja neile vastav CNC?
See ÕIGE !!!!!
Probleem on igatahes huvitav
Ohoo ! Saada disasm mulle ka uurimiseks!
Sisendinfo:
09 4E 01 01 00 00 00 00 00 02 03 51 04 03 32 -> CRC= 7F1C
Samas on võimalik, et summa arvutust alustatakse hoopis siit:
00 00 00 00 02 03 51 04 03 32 -> CRC= 7F1C
Kas arvutus käib otse või vastupidise baidijadaga,ma ei tea. Vist otsepidise.
Tegu on MAVLink protokolli CRC-ga. Nende dokumentatsioon on vääga vilets. Ühes kohas õeldakse, et kogu payload'i ulatuses (alumine rida), teisal aga et kogu paketi ulatuses (ülemine rida) v.a. startbait (seda siia ei kirjutanudki). Lisaks tuleb enne viimast akumuleerimist lasta askut läbi veel "seed" mis antud paketi puhul on 0x32. Kas teda käsitletakse kuidagi teisiti? Vist jällegi mitte. Panin ta mõlemasse jadasse kirja aga võib proovida ka ilma.
Minu asmi kood ei tooda mitte mingi nipiga etteantud CRC-d aga kopter näiteks saab just sellisest messist aru, muud saadab pikalt. Ka need CRC-d mis sinu viidatud ja ka muude online kalkulaatoritega rehkendatud.
Kui see tähtis on, siis CRC polünoom 'peaks' olema 0xf0b8.
Link näidisele ja jutule: http://eastbay-rc.blogspot.com/2013/04/m...oding.html