Estou lendo folhas de dados no barramento LIN, mas aparentemente a mesma terminologia é usada para o CAN.
O que representam "recessivo" e "dominante", por exemplo, http://hw-server.com/products/rs_optika/prevodniky_optika.html ?
Como relacionar esses termos com "baixo" e "alto", ou 0 e 1?
digital-logic
can
bus
poseid
fonte
fonte
Respostas:
O dominante é 0. O recessivo é 1. O dominante se aplica a 0 porque se dois IDs de arbitragem estão sendo transmitidos ao mesmo tempo e os 4 primeiros bits são iguais e o quinto é 0 para um deles e 1 para o outro, o ID com o 0 acabará sendo transmitido. A transmissão da mensagem com o ID de arbitragem maior será tentada novamente depois que a outra mensagem for concluída.
fonte
Além da resposta perfeitamente precisa dada em outro lugar, também pode ser útil considerar os significados de nível inferior das frases dominantes e recessivas . Tanto no CAN quanto no LIN na camada física, o barramento "flutua" para um estado específico quando nenhum nó está se comunicando. Este é o estado recessivo . Qualquer nó que conduz um bit dominante substituirá esse estado (daí a palavra " dominante ").
Isso é usado dentro do protocolo para permitir a arbitragem não destrutiva, onde o nó com o ID mais baixo "vence". Isso ocorre devido à decisão de significar uma lógica baixa por um bit dominante .
(Os padrões poderiam ter sido escritos ao contrário. Não há nada que exija que um bit dominante seja interpretado como zero em qualquer outro contexto.)
fonte