Portas dos Leds no Robo
Led Veículo Verde: D13
Led Veículo Amarelo: D12
Led Veículo Vermelho: D11
Led Pedestre Verde: D1
Led Pedestre Vermelho: D0
Portas dos Componentes no Robo
Buzzer: D3
Push Button: D2
Potenciômetro: A0
Lembre-se: "D" no número da porta significa Digital e ela só aceita 0 ou 1. "A" significa Analógico e ela aceita valores entre 0 e 1023.
Funções e Métodos em C para Arduíno:
pinMode(Nº da Porta, Direção), sendo que Direção pode ser INPUT (entrada) ou OUTPUT (saída)
Portas Digitais:
digitalRead(Nº da Porta): Lê o valor da porta, usado quando a porta é de entrada (INPUT) como o PushButton, por exemplo.
digitalWrite(Nº da Porta, Valor): Envia o sinal para a porta, podendo ser 0 (LOW) ou 1 (HIGH), como os leds, por exemplo.
Portas Analógicas:
analogRead(Nº da Porta): Lê o valor da porta, usado quando a porta é de entrada (INPUT) como o Potenciômetro, por exemplo.
analogWrite(Nº da Porta, Valor): Envia o sinal para a porta, podendo ser entre 0 e 1023, ou 0 e 255 como nos motores, por exemplo.
Espera:
delay(Qtde de Milissegundos): Faz o computador aguardar até executar o próximo comando um determinado tempo, que deve ser passado em milessegundos, ou seja, 1 segundo dividido em 1000. Ex: 1 segundo = 1000 milissegundos, 0,2 segundos = 200 milissegundos.
Definição de variáveis:
Basta criar um identificador (nome) para a variável e atribuir um valor.
nomePessoa = "Alexandre"
Receber dados pelo teclado:
Utiliza-se a função input(), que sempre retorna uma string (texto). Para valores numéricos (int ou float) deve utilizar as funções int() ou float() para converter o texto retornado em número.
nomePessoa = input("Digite seu nome: ")
idadePessoa = int(input("Digite sua idade: "))
Imprimir valores na tela:
Para imprimir valores na tela utiliza-se a função print(). Para textos, estes devem estar entre aspas, para imprimir o conteúdo de uma variável ela deve estar fora das aspas. Para imprimir mais de uma valor ao mesmo tempo, separe-os por vírgula.
Exemplo: print("Nome:", nomePessoa, " Idade:", idadePessoa)
Comandos de Decisão:
Para tomar decisões em um programa usa-se o if..else / elif
if idade < 10:
print("criança")
elif idade >= 10 and idade < 15:
print("adolescente")
else:
print("jovem")
Comandos de Repetição:
Existem 2 comandos de repetição em Python, o while e o for. O primeiro pode fazer repetições com número de vezes indeterminadas, já o segundo apenas com quantidade de vezes determinadas.
Exemplo com While
continua = "S"
while continua == "S":
continua = input("Continua? [S/N] ")
print("Fim do programa")
O comando for tem 3 parâmetros na função range. O primeiro é o valor de início que se for omitido será usado 0 (zero). O segundo é o final, que é obrigatório e será considerado o valor informado - 1. O último parâmetro é a variação, que se for omitida será considerado o valor 1.
Exemplo com for
tabuada = int(input("Qual tabuada deseja fazer? "))
for numero in range(1, 11):
print(numero, "x", tabuada, "=", numero*tabuada)
Quando o semáforo de veículos estiver aberto (verde aceso), o semáforo de pedestres deve estar fechado (vermelho aceso).
Quando o semáforo de veículos estiver fechado (vermelho aceso), o semáforo de pedestres deve estar aberto (verde aceso).
Quando o semáforo de veículos estiver no amarelo (atenção) , o semáforo de pedestres deve estar no verde piscante. Pisque a cada 0,2 segundos.
Código página 45 da apostila
Exemplo no TinkerCad.com