Em sistema embarcado o microcontrolador é interfaceado com 1 botão e 3 leds. O microcontrolador deve realizar as seguintes tarefas:
- TAREFA 1: verificação do botão a cada 40 ms , devendo acender o LED1 se o botão estiver pressionado;
- TAREFA 2: de forma repetida, acender o LED2 por 1s e apagá-lo por 1s;
- TAREFA 3: de forma repetida, acender o LED3 por 800 ms e apagá-lo por 400 ms ;
Considere para o exercício que está disponível um RTOS, o qual necessita como requisitos mínimos 1300 bytes de memória RAM, 8Kbytes de memória Flash e um timer. Com base nas informações abaixo, defina um modelo para o microcontrolador, considerando o menor custo possível. Justifique suas respostas.
- Microcontroladores:
Modelo
Características
Custo
2 pinos de I/O, 1 timer de 16 bits, RAM=2Kbytes e Flash=16Kbytes
U$1,30
4 pinos de I/O, 1 timer de 16 bits, RAM=2Kbytes e Flash=16Kbytes
U$1,40
4 pinos de I/O, RAM=2Kbytes e Flash=16Kbytes
U$1,20
3 pinos de I/O, 1 timer de 16 bits, RAM=1Kbytes e Flash=6Kbytes
U$1,30
4 pinos de I/O, 1 timer de 16 bits, RAM=1Kbytes e Flash=6Kbytes
U$1,10
3 pinos de I/O, 1 timer de 16 bits, RAM=4Kbytes e Flash=40Kbytes
U$1,70
Modelo | Características | Custo |
|
2 pinos de I/O, 1 timer de 16 bits, RAM=2Kbytes e Flash=16Kbytes | U$1,30 |
|
4 pinos de I/O, 1 timer de 16 bits, RAM=2Kbytes e Flash=16Kbytes | U$1,40 |
|
4 pinos de I/O, RAM=2Kbytes e Flash=16Kbytes | U$1,20 |
|
3 pinos de I/O, 1 timer de 16 bits, RAM=1Kbytes e Flash=6Kbytes | U$1,30 |
|
4 pinos de I/O, 1 timer de 16 bits, RAM=1Kbytes e Flash=6Kbytes | U$1,10 |
|
3 pinos de I/O, 1 timer de 16 bits, RAM=4Kbytes e Flash=40Kbytes | U$1,70 |
Passo 1
O enunciado pede que a gente escolha o modelo de microcontrolador mais barato que atenda a um RTOS (que exige pelo menos
bytes de RAM,
Kbytes de Flash e um timer) e ainda dê suporte a
botão e
LEDs (total de
pinos de I/O). Vamos usar recursos de seleção por requisitos (I/O, timer, memória) para chegar à solução.
Passo 2
Anotamos os requisitos mínimos:
- Pinos de I/O:
( para o botão para os LEDs). - Timer: ao menos um, para fazer o escalonamento dos três períodos (
ms, s e ms/ ms). - Memória RAM:
bytes. - Memória Flash:
Kbytes.
Passo 3
Filtramos pelo número de pinos de I/O (
):
-
: pinos — descarta. -
: pinos — mantém. -
: pinos — mantém. -
: pinos — descarta. -
: pinos — mantém. -
: pinos — descarta.
Sobram
,
e
.
Passo 4
Desses, filtramos os que têm timer:
-
: tem timer de bits — mantém. -
: sem timer — descarta. -
: tem timer de bits — mantém.
Sobram
e
.
Passo 5
Agora verificamos memória RAM e Flash:
-
: RAM Kbytes ( bytes) e Flash Kbytes ( Kbytes) — atende. -
: RAM Kbyte (< bytes) e Flash Kbytes (< Kbytes) — não atende.
Sobra apenas
.
Passo 6
Como
é o único que atende a todos os requisitos (
pinos de I/O, timer, RAM e Flash suficientes) e custa U$
, ele é a escolha de menor custo possível.
Resposta
O modelo escolhido é o
(
pinos de I/O, timer de
bits,
Kbytes de RAM e
Kbytes de Flash) ao custo de U$
, pois é o único que satisfaz todos os requisitos do RTOS e da aplicação.