O documento descreve como simular um Arduino no software Proteus usando um módulo chamado Simulino. Ele explica como abrir e explorar o subcircuito equivalente do Simulino e como gravar um programa no microcontrolador simulado. Também mostra como adicionar um terminal virtual no Proteus para visualizar a saída serial do programa durante a simulação, permitindo depurar e testar códigos antes de gravação na placa real.
5. Simulino
No Proteus, abra o
arquivo SimulinoUno.DSN
e clique com o botão
direito do mouse, sobre o
objeto, e escolha: Goto
Child Sheet
Este procedimento
mostra o subcircuito,
representado pelo bloco
do simulino.
A tela seguinte mostra o
subcircuito equivalente
do simulino.
5/17
6. Simulino
Simulino
=
Arduíno
Sem USB
Simulando
no Proteus
6/17
7. Simulino
Para retornar ao
bloco simulino,
clique no meio da
tela com o botão
direito e escolha
Exit to Parent
Sheet
7/17
9. Simulino
Após ajustar os parâmetros
para compilação na tela
anterior, clique em 1 para
compilar e gerar o arquivo
para simulação e gravação no
arduíno se a placa estiver
conectado ao computador.
Em 2, copie o endereço do
arquivo HEX ou ELF gerado
após a compilação, para
simulação no proteus.
9/17
10. Simulino
O esquemático no
Proteus pode ser visto
ao lado.
O pino 13 do arduíno
corresponde ao pino
D13 do simulino.
10/17
11. Simulino
Como gravar o programa no uC?
1. Clique com o botão direito do mouse sobre o simulino e obtenha o subcircuito
equivalente;
2. Clique com o botão direito sobre o uC ATMEGA, escolha propriedades;
3. Colar o nome completo do arquivo HEX ou ELF, gerado em 2 na figura do slide 9.
Aqui no meu computador o nome completo, em 2, do slide 9, foi:
C:UsersiltonAppDataLocalTempbuild1246812117845445450.tmpBlink.cpp.hex
11/17
12. Simulino
Após entrar com o
nome do arquivo
HEX, retorne para
o módulo
compacto do
simulino,
conforme
procedimentos
anteriores, e inicie
a simulação.
12/17
13. Simulino
Neste momento
pode‐se ver o led
piscando.
E o monitor do
arduíno?
13/17
14. Simulino
Serial Monitor
Comunicação Serial é usada para comunicação entre a placa Arduino e um computador ou outros dispositivos.
Todas as placas Arduino ter pelo menos uma porta serial (também conhecido como um UART ou USART):
Serial. Ela utiliza os pinos digitais 0 (RX) e 1 (TX), ligados ao bloco USB para comunicação com o computador.
Assim, se você usar essas funções, você não pode usar pinos 0 e 1 para entrada ou saída digital.
Você pode usar monitor serial interno do ambiente Arduino para se comunicar com uma placa Arduino. Clique
no botão monitor serial na barra de ferramentas e selecione a mesma taxa de transmissão usado na chamada
da função begin(). Para simulação no Proteus utilize um terminal virtual para simulação, neste caso, sem se
preocupar com a questão de conversões RS232 para TTL e vice‐versa.
O Arduino Mega tem três portas seriais adicionais: Serial1 nos pinos 19 (RX) e 18 (TX), Serial2 nos pinos 17 (RX)
e 16 (TX), Serial3 nos pinos 15 (RX) e 14 (TX). Para usar estes pinos para se comunicar com seu computador
pessoal, você vai precisar de um adaptador USB‐para‐serial adicional, uma vez que não estão conectados ao
adaptador da placa. Para usá‐las para se comunicar com um dispositivo TTL serial externo, conecte o pino TX
ao pino RX do seu dispositivo e vice‐versa. O terra de seu Mega ao terra do seu dispositivo (Não conectar esses
pinos diretamente a uma porta serial RS232, pois eles operam em ±12V e pode danificar sua placa Arduino).
14/17
15. Simulino
Serial Monitor para o arduíno
No código fonte, adicionar os seguintes
procedimentos:
1. Ajustar a velocidade de comunicação no
bloco setup();
2. Ajustar o envio de dados pelo terminal
serial no bloco loop();
No Proteus, adicionar o modulo terminal
virtual clicando no ícone de instrumentos
virtuais do Proteus (parece um parafuso).
Conectar os pinos RX e TX do terminal virtual
ao pinos TX e RX do simulino, respectivamente.
Conectar o pino RTS ao pino CTS do módulo
(curto‐circuitar).
15/17
16. Simulino
Serial Monitor para o arduíno
O resultado da
simulação é ilustrado
na figura ao lado.
O terminal virtual pode
ser utilizado para
depuração de
programas, tanto na
simulação como na
placa do arduino.
16/17