
Estou acompanhando um livro chamado Bluetooth Essentials for Programmers e não tenho muita experiência, no livro não explica o motivo dos valores ímpares e não consegui encontrar informações sobre isso. Qualquer sugestão será apreciada, desde já obrigado!
Responder1
A resposta simples é porque o padrão Bluetooth diz que é assim que deve ser:
A estrutura do campo PSM é baseada no mecanismo de extensão ISO 3309 para campos de endereço. Todos os valores PSM devem ser ODD, ou seja, o bit menos significativo do octeto menos significativo deve ser '1'. Além disso, todos os valores PSM deverão ter o bit menos significativo do octeto mais significativo igual a '0'. Isto permite que o campo PSM seja estendido além de 16 bits.
Eu não li a especificação básica completa em detalhes, então não posso entrar no raciocínio completo por trás disso, mas você pode fazer o download gratuitamente e fazê-lo no siteSite Bluetooth.org.