Você está na página 1de 46

Microcontroladores e

Microprocessadores

Hugo Barros
Wendell Lira Louzada
Alberto Mateus Pinheiro da Gama
Lucas das chagas carvalho
Andrey Manhyck Cunha Batista
Davi Vinagre Pantoja
Relógio em tempo real
utilizando o protocolo I2C
Neste trabalho é mostrado um projeto de simulação de um
relógio em tempo real utilizando um microcontrolador
ATmega328P em conjunto com o dispositivo DS1307, onde
ambos se comunicam através da comunicação serial I2C.

3
Microcontroladores são circuitos
integrados que possuem
em seu interior todos os componentes
necessários ao seu
funcionamento dependendo
unicamente da fonte de
alimentação externa. Pode-se dizer
que os microcontroladores
são computadores de um único chip.

4
O advento da Internet das Coisas
(Internet of Things, IoT)
tornou possível o desenvolvimento de
aplicações e soluções
práticas em diversas áreas. Objetos
cotidianos e sensores se
conectam através de uma rede de
telecomunicações ou da
Internet para troca de dados.

5
Os microcontroladores terão papel
fundamental na
indústria 4.0 onde as indústrias podem
digitalizar processos,
transformar modelos de negócios e
melhorar a performance e
a produtividade, reduzindo o
desperdício simultaneamente.

6
ATmega328P
Microcontrolador
Utilizado principalmente nos arduinos
Uno e Nano, conta
com um microcontrolador chamado
ATmega328P, que
podemos classificá-lo como o
processador central da placa, ele
é pertencente a família AVR lançada
pela Atmel e possui uma
arquitetura de 8 bits CMOS com
arquitetura.
8
Este microcontrolador possui uma
memória Flash
com 32 kB reprogramável. Como as
instruções do
ATMega328P são ou de 16 bits ou de 32
bits a memória foi
organizada em 16.000 blocos de 16
bits. Dessa forma, pode-se
dizer que o maior programa suportado
pelo ATMega328P é de
16 quilo instruções.
9
Ele conta com 23 entradas/saídas programáveis,
sendo capaz de executar programas dos mais
simples, como
por exemplo piscar um LED, até programas
complexos, como
sistemas autônomos e robôs. Além disso, este
microcontrolador possui a capacidade de operar
com baixo
consumo de potência.

10
A fim de fornecer segurança ao software a
memória
flash é dividida em duas partes, sendo uma parte
de 0,5 kB para a criação de um boot loader e o
restante para o software
principal (o que deve ser executado). Além da
memória flash
este microcontrolador também possui uma
memória SRAM de
2kB e uma EEPROM de 1kB.

11
A pinagem do microcontrolador descreve as
conexões que ele possui a fim de interagir com
estímulos
externos, tanto recebendo sinais como emitindo
sinais.

12
13
RTC DS1307
real-time clock
RTC, ou real-time clock, é um relógio que mantém o
controle do tempo real e possui calendário completo. Ele
está presente em quase todos os dispositivos eletrônicos
que precisam manter um controle preciso do tempo.

O módulo RTC DS1307 também possui espaço na


parte superior para um sensor de temperatura, tornando
possível montar um relógio completo com data, hora, dia
da
semana e temperatura, sem a necessidade de outros
componentes.

15
Protocolo serial
I2C
protocolo mestre/escravo
utilizado para comunicação de dados em placas de
circuito
impresso, onde todos os dispositivos são conectados
através de
duas vias: dados seriais (SDA) e clock serial (SCL).

A linha SCL é responsável pelo clock do barramento,


gerando os pulsos que o sistema necessita para caminhar
em
cada passo da comunicação e, o pino SDA transmite os
dados
propriamente ditos.

17
o layout da
comunicação entre o dispositivo mestre (master) e escravos
(slaves), interconectados no barramento I2C. Quando existem
múltiplos escravos, cada um possui o seu próprio e único
endereço e só responde caso selecionado.

18
Atmel Studio é a plataforma de
desenvolvimento
disponibilizada gratuitamente
pela Microchip para
desenvolver projetos com seus
microcontroladores. Suporta
tanto os Atmel AVR quanto os
Atmel ARM Cortex. Nesta
ferramenta é possível
desenvolver projetos em C/C++ Microchip Studio
ou Assembly, além de depurar o
programa tanto com
ferramentas externas como em
um simulador integrado.
Com a evolução
tecnológica, o

Linguagem
assembly foi quase que
totalmente substituído
pela linguagem C.

em C Desta forma, os
compiladores têm um
papel importante,
devendo
O domínio da linguagem assembly eficientemente
era total nos primórdios da converter os
programação de microcontroladores. programas em C para
Como o assembly é uma linguagem a linguagem assembly
com baixo nível de abstração, o (compilação) e,
tempo gasto e o esforço mental são posteriormente, para a
consideráveis no desenvolvimento de de máquina
programas. (montagem).
Linguagem
em C
A linguagem C, apesar de sua
desvantagem em relação ao
tempo de processamento, foi
utilizada por ser
estruturalmente simples,mas
de fácil compreensão lógica e
existência de diversas
bibliotecas que auxiliam a
programação sem a
necessidade de conhecimentos
profundos da arquitetura do
microcontrolador.
Proteus
É uma ferramenta em
software utilizada por
estudantes e
profissionais, voltada
ao desenvolvimento de
aplicações de circuitos
analógicos e digitais.
Ela permite o
desenvolvimento
completo de projetos
por meio de simulações,
esquemáticos e layouts.
Obrigado!

23
Watchdog Timer
Neste trabalho é mostrado
um projeto de simulação de
um temporizador watchdog
utilizando um
microcontrolador
ATmega328P. ⬡ Microcontroladores são
circuitos integrados que
possuem em seu interior todos
os componentes necessários ao
seu funcionamento dependendo
unicamente da fonte de
alimentação externa. Pode-se
dizer que os
microcontroladores são
computadores de um único 25
⬡ Para impedir o travamento
do programa em
microcontroladores,
emprega-se o temporizador
Watchdog.  Ele é um
temporizador que se
habilitado, deve ser
inicializado pelo programa
periodicamente; caso isso não
ocorra e o temporizador
estoure sua contagem, o
microcontrolador é
automaticamente
inicializado. 26
ATmega328P
Microcontrolador
⬡ Este microcontrolador
possui uma memória Flash
com 32 kB reprogramável.
Como as instruções do
ATMega328P são ou de 16
bits ou de 32 bits a
memória foi organizada ATMega328
em 16.000 blocos de 16 P
bits.
⬡ Dessa forma, pode-se dizer
que o maior programa
suportado pelo
ATMega328P é de 16 quilo
instruções.
28
⬡ A pinagem do
microcontrolador descreve
as conexões que ele possui
a fim de interagir com
estímulos externos, tanto
recebendo sinais como
emitindo sinais.

29
WatchDog Timer
dispositivo eletrônico temporizador

https://www.ablic.com/en/semicon/wp-co
ntent/uploads/2020/01/wdt_top-img.png
⬡ Sendo um dispositivo que monitora o bom
funcionamento, caso ocorra um travamento no

“ sistema, o Watchdog reinicia o sistema de


Software ou Hardware. Quando ativado, ele
precisará ser resetado dentro de um tempo
específico, caso ele não for resetado, ele atua e
reinicia todo o sistema.
 

⬡ Para evitar falhas de programa no


microcontrolador, use um temporizador de
vigilância, caso seja habilitado, deve ser
inicializado periodicamente pelo programa; caso
não ocorra e o temporizador expire, o 31
WatchDog Timer

32
⬡ O Atmega328 possui um Watchdog Timer que
usa oscilador, independente no chip 128 kHz.
⬡ Pode inicializar o sistema e até mesmo gerar um
pedido de interrupção.
⬡ No modo de interrupção, o WDT gera uma
interrupção quando o tempo limite de estouro é
atingido.
⬡ Pode ser usado para limitar o tempo máximo
permitido em um determinado momento da
operação, quando o tempo de operação excede o
esperado.
⬡ No modo de inicialização do sistema, o WDT
iniciará o microcontrolador quando um timeout é 33
Microchip Studio
plataforma de desenvolvimento
⬡ Suporta tanto os Atmel AVR quanto os Atmel ARM

“ Cortex. Nesta ferramenta é possível desenvolver


projetos em C/C++ ou Assembly, além de depurar o
programa tanto com ferramentas externas como em
um simulador integrado.
 

⬡ O domínio da linguagem assembly era total nos


primórdios da programação de microcontroladores.
Como o assembly é uma linguagem com baixo nível
de abstração, o tempo gasto e o esforço mental são
consideráveis no desenvolvimento de programas.
35
Proteus
software para criação de projetos
eletrônicos
⬡ É uma ferramenta em software utilizada por estudantes e
profissionais, voltada ao desenvolvimento de aplicações
“ de circuitos analógicos e digitais. Ela permite o
desenvolvimento completo de projetos por meio de
simulações, esquemáticos e layouts. 

⬡ composto por uma suíte de ferramentas, incluindo


captura esquemática, simulação e módulos de projetos
de placas de circuito impresso, usadas principalmente
para o projeto de circuitos integrados.

37
Nosso projeto tem como
dispositivo central o
ATmega328p que possui
um LED vermelho
conectado no PD6 e um
LED verde no PD7, ambos
em série com resistor de
1k ohm.

38
⬡ O projeto possui uma chave no PC6
para que haja um reset manual. Além
“ de contar com um oscilador de cristal
entre PB6 e PB7.

39

40
Fluxograma
O fluxograma do projeto se organiza da
seguinte maneira: primeiro há um reset no

“ temporizador watchdog:

Inicialização

42
Após isso o programa em sí inicializa, programa este que é
a aplicação a qual o temporizador irá monitorar, em
seguida o temporizador faz o primeiro teste de erros, onde

“ se acende dois led's (azul, verde) simultaneamente, com


três ciclos de monitoramento que ao todo duram 1,2
segundos:

LED pisca 3 vezes


43
Caso não haja nem uma
interrupção, o timer irá alternar os
“ led 's 15 vezes entre si, porém a
cada ciclo a função “wdr()” irá
monitorar se não há nem uma
interrupção neste ciclo. Ao fim dos
quinze ciclos, o algoritmo irá
monitorar se não há interrupções,
caso não, ele fica no laço dos leds
se alternando quinze vezes, porém
se houver uma interrupção ele irá
resetar o programa com um todo:
LED pisca 15 vezes.
44
Caso não haja nem uma
interrupção, o timer irá alternar os
“ led 's 15 vezes entre si, porém a
cada ciclo a função “wdr()” irá
monitorar se não há nem uma
interrupção neste ciclo. Ao fim dos
quinze ciclos, o algoritmo irá
monitorar se não há interrupções,
caso não, ele fica no laço dos leds
se alternando quinze vezes, porém
Resultado da se houver uma interrupção ele irá
atuação do resetar o programa com um todo:
WatchDog Timer
com tempo limite
definido em 2s.
45
Obrigado!

46

Você também pode gostar