quinta-feira, 1 de novembro de 2018

ARDUINO PYTHON3 SCIENTIFIC LINUX 7.5

Aplicativos =>Desenvolvimento => arduino IDE

sketch_...

int led1 = 13; // Porta onde o led será inserido

void setup() {
  Serial.begin(9600); // Velocidade padrão Uno
  pinMode(led1, OUTPUT); // Porta onde o led será inserido, configurado como saida
}

void loop() {
  char leitura = Serial.read(); // Variável que receberá os valores enviados pelo programa em python

  if(leitura == '1'){
    digitalWrite(led1, HIGH); // Liga a porta 13 se o valor recebido for 1
  }
  else if(leitura =='2'){
    digitalWrite(led1, LOW); // Desliga a porta 13 se o valor recebido for 2
  }
}

Compilar e Carregar.

No TERMINAL => idle3

No IDLE3

piscar_led.py

# -*-coding: utf-8 -*-
import serial
import time

ser = serial.Serial('/dev/ttyACM0', 9600)

def pisca(tempo=1):  #configuração da serial
    while True:
        ser.write(b'1')  # Escreve 1 no arduino (LED acende)
        time.sleep(tempo)  # Aguarda n segundos
        ser.write(b'2')  # Escreve 2 no arduino (LED apaga)
        time.sleep(tempo)  # Aguarda n segundos

if __name__ == '__main__':
    pisca()


acende_apaga_led.py

 # -*-coding: utf-8 -*-
import serial
import time

ser = serial.Serial('/dev/ttyACM0', 9600)
logico = True

def ativaLed(logico):
    while logico:
        print("")
        print("Digite 1 para Ligar LED, 2 para Desligar LED ou 0 para sair: ")
        opcao = (int)(input("Digite sua opção: "))
        if opcao == 1:
            ser.write(b'1')
            print("LED LIGADO!")
        if opcao == 2:
            ser.write(b'2')
            print("LED DESLIGADO!")
        if (opcao !=1 and opcao !=2 and opcao!=0 ):
            print("Opção inválida! Tente novamente!")
        if opcao == 0:
            print("Bye!!! Volte Sempre!")
            exit()
       
ativaLed(logico)