Olá amigos.

Estou bolando um projeto na universidade e estou tomando um pau pro arduino. O projeto consiste num otimizador de joystick em simuladores de carros de corrida.

O sistema é bem simples, faz a leitura dos pedais (embreola e freio) e do manete de troca das marchas.

O código está abaixo:

void setup()

{

pinMode(14, INPUT); //A0 sendo declarado como pino digital

pinMode(15, INPUT); //A1 sendo declarado como pino digital

pinMode(16, INPUT); //A2 sendo declarado como pino digital

pinMode(17, INPUT); //A3 sendo declarado como pino digital

pinMode(18, INPUT); //A4 sendo declarado como pino digital

pinMode(19, INPUT); //A5 sendo declarado como pino digital

pinMode(6, INPUT);

pinMode(7,INPUT);

digitalWrite(6, HIGH); //ativando o pull-up do pino 6

digitalWrite(7, HIGH); //ativando o pull-up do pino 7

digitalWrite(14, HIGH); //ativando o pull-up do pino A0

digitalWrite(15, HIGH); //ativando o pull-up do pino A1

digitalWrite(16, HIGH); //ativando o pull-up do pino A2

digitalWrite(17, HIGH); //ativando o pull-up do pino A3

digitalWrite(18, HIGH); //ativando o pull-up do pino A4

digitalWrite(19, HIGH); //ativando o pull-up do pino A5

pinMode(10, OUTPUT);

pinMode(9, OUTPUT);

}

void loop() {

int leituraup=digitalRead(14);

int leituradown=digitalRead(15);

int leiturafreio=digitalRead(7);

int leituraembre=digitalRead(6);

if (leituraup==0 && leiturafreio==1 && leituraembre==1) {digitalWrite(9,1); delay(y_tempo);}

else {digitalWrite(9,0);}

while(leiturafreio==0){

if(leituradown==0 && leituraembre==0){digitalWrite(10,1); delay(z_tempo);}

else{digitalWrite(10,0);}

}

}

As questões começam aqui:

Está certo a maneira de declarar as portas analógicas como digitais?

a outra dúvida é a seguinte:

Preciso fazer uma interface com o usuário. A ideia era criar um menu em um lcd 16x2 onde:

ligado o sistema imprimiria na tela:  João foi a roma

                                                   Maria ira em breve

a primeira tela, após a inicialização, imprimiria o status do sistema. Ex:

UP     DOWN     GEAR

ON       ON          N

(aqui o ideal seria colocar uma chave de tres posições, do tipo "chave de caça" onde o meio seria on pra ambos, pra baixo on pro down e pra cima on pro up)

A segunda tela apareceria o delay y_tempo citado na programação.

A quarta tela apareceria o delay z_tempo que tbm aparece lá.

Seriam 4 botões: um avança o menu, outro retorna o menu. Depois um aumenta o valor dos delays (dependendo a tela em que se encontra) e o outro baixa o valor)

pressionando os dois botões do menu juntos o sistema sincronizaria em N (neutro) a marcha que está engatada.

pressionando os dois botões da variável juntos ele resetaria..

Por onde começar???? auhauhauha

Abraços!!!

Exibições: 337

Responder esta

Respostas a este tópico

Victor, obrigado.

Estou trabalhando já com o I2C, achei que fosse BEM mais dificil. Está indo aos poucos, creio que dentro de um mês ou dois eu já apresente novidades por aqui. Não seria bem um TCC, sou da engenharia mecânica e não da computação. Seria apenas um desafio. Mas mesmo assim, muito obrigado pelas informações.

Abraços!!

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço