Alternativa C
A alternativa correta é a C, pois o registro TRISA é responsável por controlar a direção dos pinos da Porta A no microcontrolador PIC16F877A.
Fundamentação Didática
Para responder corretamente, é essencial entender a arquitetura básica dos microcontroladores da família PIC, especificamente a distinção entre registros de Dados e registros de Configuração.
1. O Papel do Registro TRIS
Nos microcontroladores PIC, a configuração de cada pino (se ele será usado para ler um sensor ou enviar um sinal) é feita através dos registros TRIS (Tri-state).
- TRISA: Registra de controle da direção dos pinos da Porta A.
- Lógica de Funcionamento:
- Se o bit for 0: O pino é configurado como Saída (Output). Isso "habilita o driver", permitindo que o microcontrolador envie corrente para acender um LED.
- Se o bit for 1: O pino é configurado como Entrada (Input). O pino fica em alta impedância, pronto para receber sinais externos.
2. Diferença entre PORTA e TRISA
Muitas vezes há confusão entre os registros PORT e TRIS. Veja a comparação abaixo:
| Registro | Função Principal | Ação Típica |
|---|
| TRISA | Configuração de Direção | Define se o pino é Entrada ou Saída. |
| PORTA | Manipulação de Dados | Define o nível lógico (Alto ou Baixo) se o pino for Saída. |
3. Análise das Alternativas
- A) BSF STATUS, RP0: Esta instrução altera o banco de memória para acessar registros específicos. Embora seja um passo necessário para acessar o
TRISA (já que ele está no Banco 1), ela por si só não configura o pino como saída; ela apenas muda a janela de acesso à memória. - B) MOVLW b'00000000': Carrega o valor zero no registrador temporário
W. É uma preparação de dados, mas não executa a escrita no hardware. - C) MOVWF TRISA: Move o conteúdo do registrador
W para o registro TRISA. Se o valor em W for zero (comum para configurar todas as portas como saída), esta instrução efetivamente configura os pinos como saída, habilitando o driver. É a única opção que atua diretamente sobre o registro de configuração de direção. - D) BCF STATUS, RP0: Limpa o bit de seleção de banco, retornando ao Banco 0 (onde ficam os registros
PORTA). - E) BSF PORTA, 5: Esta instrução define o pino 5 como nível lógico alto (liga o LED). No entanto, isso só funciona após o driver já ter sido habilitado. Ela não configura a direção, apenas aciona o sinal.
Conclusão
A instrução que configura o pino para funcionar como saída (habilitando o driver) é aquela que grava dados no registro TRISA. Portanto, a alternativa C é a correta.