Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Alternativas de Configuração do Módulo EUSART no Microcontrolador PIC18, Resumos de Microcontroladores

Duas alternativas para configurar o módulo eusart em um microcontrolador pic18 usando a linguagem c. A primeira opção consiste em utilizar a máscara lógica '|' para definir os bits de configuração da usart, enquanto a segunda opção envolve a modificação direta dos valores dos bits do registro baudcon. O texto também fornece uma descrição dos bits relevantes para a configuração do módulo eusart.

O que você vai aprender

  • Quais os bits de configuração do módulo EUSART podem ser modificados diretamente no registro BAUDCON?
  • Qual a diferença entre as duas alternativas de configuração do módulo EUSART apresentadas no documento?
  • O que acontece se o auto-wake-up for habilitado no módulo EUSART?

Tipologia: Resumos

2017

Compartilhado em 21/05/2022

thiago-machado-58
thiago-machado-58 🇧🇷

5

(1)

1 documento

1 / 2

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Introdução 1
Configuração Alternativa do
Módulo EUSART
Se a função baudUSART( ), citada no capítulo 10 no subtópico 10.3.3, não configurar corretamente o
módulo EUSART, então pode ser empregada uma alternativa que consiste em modificar a máscara E para
OU. Essa alternativa é selecionada incluindo a diretiva #define USE_OR_MASKS antes de inserir a
biblioteca. Veja o exemplo a seguir:
Exemplo 1
#include <p18f4550.h> // Arquivo de cabeçalho do PIC18F455 0.
#define USE_OR_MASKS // Informa ao compilador que as bibliotecas devem utilizar a máscara ‘|’.
#include <usart.h> // Adiciona a biblioteca contendo as funções da USART.
. . .
void main( )
{
. . .
OpenUSART (USART_TX_INT_OFF //Interrupção de transmissão desabilitada.
| USART_RX_INT_OFF //Interrupção de recepção habilitada.
| USART_ASYNCH_MODE //Modo assíncrono.
| USART_EIGHT_BIT //Dado de 8bits.
| USART_BRGH_LOW //Alta velocidade.
, 77); //Baud rate de 9600bps para Fosc=48MHz.
baudUSART (BAUD_8_BIT_RATE //Gerador de 8bits.
| BAUD_AUTO_OFF //Auto baud rate desabilitado.
| BAUD_WAKEUP_OFF); //Desabilita o auto-wake-up.
. . .
}
A segunda alternativa consiste em modificar os valores dos bits de configuração do baud rate da EUSART
diretamente em seu registro. Desta forma, não há necessidade de alterar para o modo “OU”. Veja o exemplo
a seguir.
Exemplo 2
#include <p18f4550.h> // Arquivo de cabeçalho do PIC18F455 0.
#include <usart.h> // Adiciona a biblioteca contendo as funções da USART.
. . .
Void main()
{
. . .
OpenUSART (USART_TX_INT_OFF //Interrupção de transmissão desabilitada.
& USART_RX_INT_OFF //Interrupção de recepção habilitada.
& USART_ASYNCH_MODE //Modo assíncrono.
pf2

Pré-visualização parcial do texto

Baixe Alternativas de Configuração do Módulo EUSART no Microcontrolador PIC18 e outras Resumos em PDF para Microcontroladores, somente na Docsity!

Introdução 1

Configuração Alternativa do

Módulo EUSART

Se a função baudUSART( ) , citada no capítulo 10 no subtópico 10.3.3, não configurar corretamente o

módulo EUSART, então pode ser empregada uma alternativa que consiste em modificar a máscara E para

OU. Essa alternativa é selecionada incluindo a diretiva #define USE_OR_MASKS antes de inserir a

biblioteca. Veja o exemplo a seguir:

Exemplo 1

#include <p18f4550.h> // Arquivo de cabeçalho do PIC18F4550. #define USE_OR_MASKS // Informa ao compilador que as bibliotecas devem utilizar a máscara ‘|’. #include <usart.h> // Adiciona a biblioteca contendo as funções da USART.

... void main( ) { ... OpenUSART (USART_TX_INT_OFF //Interrupção de transmissão desabilitada. | USART_RX_INT_OFF //Interrupção de recepção habilitada. | USART_ASYNCH_MODE //Modo assíncrono. | USART_EIGHT_BIT //Dado de 8bits. | USART_BRGH_LOW //Alta velocidade. , 77); //Baud rate de 9600bps para Fosc=48MHz.

baudUSART (BAUD_8_BIT_RATE //Gerador de 8bits. | BAUD_AUTO_OFF //Auto baud rate desabilitado. | BAUD_WAKEUP_OFF); //Desabilita o auto-wake-up.

... }

A segunda alternativa consiste em modificar os valores dos bits de configuração do baud rate da EUSART

diretamente em seu registro. Desta forma, não há necessidade de alterar para o modo “OU”. Veja o exemplo

a seguir.

Exemplo 2

#include <p18f4550.h> // Arquivo de cabeçalho do PIC18F4550. #include <usart.h> // Adiciona a biblioteca contendo as funções da USART.

...

Void main() {

... OpenUSART (USART_TX_INT_OFF //Interrupção de transmissão desabilitada. & USART_RX_INT_OFF //Interrupção de recepção habilitada. & USART_ASYNCH_MODE //Modo assíncrono.

2 Microcontroladores PIC18 - Aprenda e Programe em Linguagem C

& USART_EIGHT_BIT //Dado de 8bits. & USART_BRGH_LOW //Alta velocidade. , 77); //Baud rate de 9600bps para Fosc=48MHz.

BAUDCONbits.BRG16 = 0; // Gerador de 8bits. BAUDCONbits.ABDEN = 0; // Desabilita o Auto baud rate. BAUDCONbits.WUE = 0; // Desabilita o auto-wake-up.

... }

DESCRIÇÃO

BAUDCONbits.SCKP: estado inativo do clock. (Observação: válido somente para o modo síncrono)

  • 0 - Define o nível baixo como inativo.
  • 1 - Define o nível alto como inativo.

BAUDCONbits.WUE: auto-wake-up

  • 0 - Desabilita o auto-wake-up.
  • 1 - Habilita o auto-wake-up.

BAUDCONbits.BRG16: gerador de baud rate

  • 0 - Gerador de 8bits.
  • 1 - Gerador de 16bits.

BAUDCONbits.ABDEN: Auto baud rate

  • 0 - Desabilita o Auto baud rate.
  • 1 - Habilita o Auto baud rate.