arduino - iniciação à linguagem c (entradas analógica)
TRANSCRIPT
Programação
Eletrónica+Espaço
Arduino - Iniciação à linguagem C
Entradas analógicas
Arduino – Entradas Analógicas
Circuito com 3 LED Controlados através de
Potenciómetro
http://blocklyduino.github.io/BlocklyDuino/blockly/apps/blocklyduino/
Blocklyduino – Agora Tenta #1
Criar em Blocklyduino um programa que acenda um LED para valores inferiores a 300 na entrada A0, dois LED para valores entre 300 e 700, e os 3 LED para valores superiores a 700
Blocklyduino – Uma Solução Possível
BlocklyDuino – Agora Experimenta
BlocklyDuino – Agora Experimenta
Arduino – Agora Experimentahttps://www.arduino.cc/en/Main/Software
Definição de entradas / saídas (A0 é sempre uma entrada, não
precisa de ser definida)
AND
Experimenta substituir por:
Sugestão: pesquisar função for
0 - 1023
Arduino – Agora Tenta #1
• Escrever na porta série o valor da entrada analógica A0
Um
a So
luçã
o Po
ssív
el...
Arduino – Agora Tenta #2
Recorrendo à datasheet do sensor de temperatura TMP 36: http://
www.analog.com/media/en/technical-documentation/data-sheets/TMP35_36_37.pdf
,substituir a resistência variável pelo referido sensor e observar na porta série os valores lidos na entrada A0
Arduino – Agora Tenta #31. Através de uma regra de três simples, cria uma nova variável e atribui-lhe o resultado da conversão do valor da entrada A0 de 0-1023 para tensão: 0-5V. Escreve esse valor na porta série.
Um
a So
luçã
o Po
ssív
el...
Variáveis tipo int guardam apenas a parte inteira de uma divisão. Ex. 0,74 = 0.
Para que o resultado de uma operação seja do tipo float, há que garantir que um
dos valores envolvidos seja tipo float
Arduino – Agora Tenta #32. A partir da análise da datasheet do sensor TMP 36 (figura 6), determina a equação da reta que descreve a temperaturacomo função da tensão eutiliza-a no programa, escrevendo o valorda temperatura na portasérie.
Confirma a equação da reta:
Um
a So
luçã
o Po
ssív
el...
Arduino – Agora Tenta #4Controlar os três LED de acordo com o valor da temperatura obtida:• para temperaturas mais baixas
apenas um LED deve estar ligado; para temperaturas médias, devem ligar dois LED, para temperaturas mais altas, devem ligar os três LED.
Um
a So
luçã
o Po
ssív
el...
Progamação em C – Resumo da Sessão #2Funções a recordar
• analogRead(pino, modo) lê o nível analógico presente no pino indicado, convertendo valores de tensão entre 0 e 5V num valor inteiro entre 0 e 1023.
• for (variável; expressão; incremento){instruções} enquanto o valor da variável não ultrapassar o valor definido na expressão, é executado o bloco de instruções. Após a execução das instruções, a variável é incrementada (ou decrementada) pelo valor especificado.
Progamação em C – Resumo da Sessão #2