Citata:
Pradžioje rašė limestone
Ieškok problemos su CAN magistrale. CAN yra dviejų laidų magistralė, normaliai abu jie naudojami informacijai perduot (balansinė pora), tačiau vienam jų nutrūkus (pvz. nugnybus pajungiant laidus) ar užsitrumpinus į masę CAN draiveriai vistiek dirba "avariniu" režimu, likusiu vienu laidu. Tokiu atveju ryšio stabilumas, aišku, krenta stipriai. Patikrint su paprastu testeriu sunku: normaliai, jei niekas į magistralę nekalba, ant abiejų laidų korpuso atžvilgiu yra vienoda įtampa (apie 2,5V, bet nebūtinai). Kai kas nors "kalba" - ant CAN+ eina +5V impulsai, ant CAN- eina 0V impulsai (testeris gali rodyt įtampos šokčiojimus). Jei žiūrėt rimtai - be oscilografo apsieit nepavyks.
Pats CAN protokolas aparatiniam lygmeny neužtikrina duomenų paketų pristatymo konkrečiam adresatui (veikia kaip UDP, jei tai ką nors sako  ), todėl komandų paketai laikas nuo laiko kartojami, ir centrinis suveikia iš kelinto karto, t.y. su uždelsimu. Jei tikrai yra CAN bėda - tai ne tik centrinis turi gliučint, turėtų ir koks nors langų valdymas grybaut, ir dar kas nors 
|
MIntis gal ir gera ,bet jei sistema pereitų į vieno laido pranešimus ,tai neišvengiamai būtų klaidų kodai atmintyje arba taip ir rašytų ,kad dirba "avariniu" rėžimu vienu laidu . O čia panašu ,kad nepareina užrakto būsenos komanda iš kažkurio bloko arba kažkurio . Kodėl merso diagnostika to nefiksuoja sunku pasakyt ...Gal kontroleriui "pasisuko" dirbti kitaip...
Pvz kitų mašinų centrinio bloke iškarto gali matyt kokioj būsenoj atsirai visų durų užraktai ir jei būsena nepasikeitė ar nesuprasta - komandą kartoja ... Aišku ir šitoj vietoj aš galiu būti neteisus .
|