Magna Concursos

Texto II

Microcontroladores são pequenos computadores embutidos em um único chip, projetados para controlar funções específicas em sistemas eletrônicos. Eles combinam uma CPU, memória e periféricos de E/S (Entrada/Saída) em um encapsulamento compacto e de baixo custo. Sua capacidade de processamento, versatilidade e eficiência energética os tornam fundamentais para a automação e o controle em uma ampla gama de dispositivos e sistemas.

Considere um microcontrolador com o seguinte diagrama de blocos simplificado que representa as portas E/S digitais.

Enunciado 3793862-1

As configurações de cada porta são definidas pelo registrador a seguir. Este registrador é responsável pela configuração de cinco portas E/S através da definição dos bits 16 a 1.

Enunciado 3793862-2

Bit 16: não especificado;

Bits 15 – 13: Bits de configuração da Porta 4;

Bits 12 – 10: Bits de configuração da Porta 3;

Bits 9 – 7: Bits de configuração da Porta 2;

Bits 6 – 4: Bits de configuração da Porta 1;

Bits 3 – 1: Bits de configuração da Porta 0;

Y-C2, Y-C1 e Y-C0: Bits de configuração da Porta Y (Y = 4 ... 0) Esses bits são definidos por software para configurar a Porta E/S correspondente.

Enunciado 3793862-3

C2 e C1: são responsáveis por configurar a operação da Porta Y.

Exemplo:

- [C2 = 0] e [C1 = 0] Saída no modo push-pull;

- [C2 = 0] e [C1 = 1] Saída no modo open-drain;

- [C2 = 1] e [C1 = 0] Entrada no modo pull-down;

- [C2 = 1] e [C1 = 1] Entrada no modo pull-up.

C0: Quando configurado como saída, o valor desse bit determina o comportamento do pino de entrada/saída da Porta Y.

- Se a porta for saída Push-Pull:

- [C0 = 0]: ativa o N-MOS e desativa o P-MOS;

- [C0 = 1]: desativa o N-MOS e ativa o P-MOS.

- Se a porta for saída Open-Drain:

- [C0 = 0]: ativa o N-MOS e desativa o P-MOS;

- [C0 = 1]: desativa o N-MOS e desativa o P-MOS.

- Se a porta estiver definida como entrada, não se aplica.

Obs: Ativar um determinado (P/N)-MOS significa permitir a passagem de corrente, enquanto desativar impede essa passagem.

A seguir, as portas 4 a 0 deste microcontrolador foram conectadas aos seguintes componentes:

Enunciado 3793862-4

B3, B2 e B1 são interruptores, que permanecem em um estado de circuito aberto quando não estão pressionados e fecham o circuito entre seus terminais quando são pressionados. R2 e R1 são resistores.

O registrador foi configurado com os seguintes valores:

Enunciado 3793862-5

Com base nos dados fornecidos, considerando que o registrador de configuração esteja localizado no endereço de memória 0x0020, o seguinte código é executado pelo microcontrolador:

#include <stdint.h>

#define REG_ADDR 0x0020

int main() {

volatile uint16_t *mem_ptr = (

uint16_t*)REG_ADDR; uint16_t valor = 0xAFBC;

*mem_ptr = valor;

return 0;

}

Neste caso, a porta 2 será configurada como

 

Provas

Questão presente nas seguintes provas