estou com dificuldade em desenvolver o código para o arduino para fazer o jogo da velha e as suas ligações, 

eu não sou um perito em desenvolver codigo e tenho dificuldade em perceber.

eu preciso deste projeto para acabar o 12º ano será que voçes me poderiam ajudar 

obrigado pela vossa atenção :) 

http://www.youtube.com/watch?v=IM1DDW36jo0 tirei a ideia deste video obg :)

Exibições: 320

Responder esta

Respostas a este tópico

Bom dia AG.

Você tem algum sketch que escreveu, mesmo que não funcione como vc quer?

Se tiver:

Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo"

e anexe o arquivo com o seu sketch.

Assim podemos ver o que está errado com ele.

RV.

já o fiz já tenho ai a ideia do projecto nesse video

Olá.

  Vejo ao menos 3 caminhos:

1) Achar pronto.... Urgh!
2) Clássico. Vc monta um roteiro sequencial do tipo: Aguarda jogada (pressionar botão), depois faz um monte de if() para entender a situação e chegar na melhor jogada. Primeiro procurando se há risco (bloquear jogadas ofensivas) e depois caso negativo escolhendo a jogada mais interessante. Todo um algoritmo feito com ifs(). Há quem chame isso de inteligencia artificial.

3) Inteligente!

3.1) Assista o filme AlphaGo: https://www.netflix.com/title/80190844

3.2) Pense num algoritmo assim:

Crie uma matriz onde linhas representam partidas e colunas jogadas.

Faça um jogo para 2 jogadores humanos e peça que eles joguem sério tentando sempre ganhar.

Anote (o arduino) nessa matriz cada jogada, sempre anotando no final quem ganhou.

Peça para jogarem centenas de vezes... Jogando sério.

Com essa matriz armazenada vc cria um algoritmo que para jogar consulta a matriz procurando uma situações identicas a jogada atual e gera uma rápida estatística de qual foi a jogada seguinte que culminou na vitoria.

Joga a que mais gerou vitória !!!

Programação limpa e inteligente, na minha opinião...

Como esse jogo pode ser espelhado em X ou em Y que nada muda vc pode multiplicar suas estatísticas espelhando ou rotacionando o tabuleiro. Assim uma entrada pode gerar estatísticas para 4 possíveis jogadas.

pois lá esta eu sou de portugal o ensino aqui não é la muito bom em algumas escolas e agora eu estou um bocado...

voce esta dizendo que eu só preciso de criar ifs() no código de arduino ? 

Infelizmente o ensino aqui no Brasil tb não está nada bom... Acredito que bem pior.

Então, a forma clássica seria vc criar um conjunto de jogadas conforme as condições (ifs()) do jogo.

Imagine que, de forma similar ao que foi sugerido no documento apontado pelo Giliardi, mas não pensando ainda em código mas sim em como fazer a lógica.

Imagine que o tabuleiro que é uma matriz 3x3

123

456

789 

Eu representasse como uma string 123456789

Se o humano jogar no meio com X por ex teriamos "    X    " que são 4 espaços, um X e 4 espaços.

Aih o arduino poderia jogar na posição 9 com bola. Fica

"    X   O" 

Para esse codigo a linha seria:

if (jogada=="    X    ") jogada="    X   O"; 

Cobrindo cada possibilidade....

Esse jogo de ifs que pensei.

Embora particularmente para essa jogada ququer outra serviria, então vc poderia usar um aleatorio, enriquecendo o aspecto criativo e inovador da simulação.

tipo o que quero fazer e exactamente como no video o jogo para duas pessoas em que clico no botão e o led liga e fica seleccionado e depois o jogador dois selecciona clica noutro botão e liga o led 

mas acha mais elaborado fazer um programa que se joga contra o computador mas eu tenha de clicar na mesma nos botões

 

isso e para arduino ?

o problema e esse e passar para a linguagem c

Bom dia AG.

pelo que li aqui você não tem ainda nenhum sketch escrito.

Ainda esta na fase de definição do  projeto. Certo?

Vou tentar ajudar dando por enquanto sugestões para definir o projeto.

Na minha visão você pode usar alguns tipos de hardware para o projeto.

   1. Básico: Arduino UNO/mini/nano,   9 Leds monocolor, 1 botão;

   2. Simples: Arduino UNO/mini/nano,   9 Leds monocolor, 5 botões;

   3. Médio:  Arduino UNO/mini/nano,   10 Leds bicolor, 5 botões;

   4. Superior:   Mega,   10 Leds bicolor, 11 botões;

   5. Outros ??????

Quanto ao code, sugiro usar uma matriz bidimensional de 3 x 3 para controlar os Leds,

e usar o valor 0 para leds apagados, 1 para jogador 1 e 2 para jogador 2.

Faça uma varredura da matriz associada à uma varredura dos leds

na forma de multiplexação, para controlar o acendimento deles.

Sugiro ainda que antes de escrever o seu code, você escreva um fluxograma para o mesmo.

Isto facilita muito o desenvolvimento do code, e acho que seu professor verá com bons olhos o seu projeto.

Escolha o hardware que quer usar, escreva o fluxograma e por fim escreva o code.

Se tiver dificuldades, mostre o que fez  e qual a dificuldade, e estamos aqui pra principalmente ensinar, e ajudar.

RV

nao é possível arduino UNO 9 leds 9 botoes em que cada butao corresponde a 1 led ?

conforme o video que eu mandei

Boa tarde AG,

O video que você mandou é este?    https://www.youtube.com/watch?v=IM1DDW36jo0

Acho que você não o assistiu, pois ele mostra 9 leds e 5 botões.

RV

peço desculpa 

ent quero como esse projeto 9 leds 5 botoes

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço