Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Eletrônica / Projeto de Sistemas RF / Aula
Considere um microcontrolador trabalhando a 4MHz que precisa se comunicar a uma taxa de transmissão de 9600 bps com uma porta serial de um computador. A USART teria que ser utilizada no modo assíncrono, logo o valor do bit SYNC seria '0'. Vamos então aos cálculos.
Para BRGH=1:
SPBRG=4000000(16×9600)−1=25.04Para BRGH=0:
SPBRG=4000000(64×9600)−1=5.51Vemos que para BRGH em zero, o valor calculado é de 5.51, sendo que o valor inteiro mais próximo é 6. Por outro lado, se BRGH = 1, temos que o valor calculado é 25.04, que é bem mais próximo de um valor inteiro, causando assim um erro menor na taxa de transmissão. Logo, deve-se utilizar BRGH = 1 e SPBRG = 25. A taxa de transmissão será de 9615, que dá um erro menor que 1% da taxa de transmissão desejada.
Alguns microcontroladores utilizam até 16 bits para armazenar o valor de SPBRG. O valor então vai ser dividido em 2 registradores, cada um de 1 byte. Os registradores com os 8 bits menos significantes são chamados normalmente de SPBRG, enquanto o com 8 bits mais significantes é chamado de SPBRGH ('H' do inglês high). A configuração entre utilizar 8 ou 16 bits é feita pelo bit BRG16 do registrador BAUDCON.
Versão 5.3 - Todos os Direitos reservados