collapse

* Links de Robótica

* Posts Recentes

Ideias para construir um quadrúpede simples por Njay
[Hoje às 03:04]


Ajuda com TRIAC por senso
[17 de Novembro de 2017, 18:00]


TV LG White Screen por almamater
[15 de Novembro de 2017, 08:37]


Pergunta sobre prototipagem ( Pesquisa ) por luisjustin
[14 de Novembro de 2017, 23:22]


Medir Agua que está no Poço por Njay
[14 de Novembro de 2017, 13:28]


Amplificador audio por beirao
[12 de Novembro de 2017, 23:43]


Power_OK Enermax por edeweld
[12 de Novembro de 2017, 17:15]


Driver motor por beirao
[11 de Novembro de 2017, 17:40]


Preciso de uma fonte de corrente constante ? por samc
[09 de Novembro de 2017, 14:18]


Pressoestato 0-10V por artur36
[07 de Novembro de 2017, 23:22]

Autor Tópico: Como fazer o arduino funcionar em Multithreading ?  (Lida 2411 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline luisjustin

  • Mini Robot
  • *
  • Mensagens: 136
Como fazer o arduino funcionar em Multithreading ?
« em: 10 de Junho de 2013, 22:14 »
Olá galera estou pensando em criar um sistema para minha placa de reles, mas que não interfira em outras funções que ela faça por isso tenho que saber como fazer rodar múltiplas funções ao mesmo tempo um Multithreading! Se alguem souber me ajude.

Offline tarquinio

  • Mini Robot
  • *
  • Mensagens: 529
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #1 em: 11 de Junho de 2013, 00:13 »
Não tens propriamente multithreading, o que tens de fazer é ir alternando entre as várias coisas que queres fazer...
Quais são exactamnte as coisas que queres fazer ao memso tempo?

Offline Njay

  • Mini Robot
  • *
  • Mensagens: 3.136
    • Tróniquices
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #2 em: 11 de Junho de 2013, 00:45 »

Offline luisjustin

  • Mini Robot
  • *
  • Mensagens: 136
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #3 em: 11 de Junho de 2013, 01:39 »
Sim, o que quero fazer eu tenho uma placa de reles e ela sempre tem que receber o comando e executar e um dos comandos é um timer para dizer quanto tempo um dos reles vai ficar ligado, mas na hora que começar a contagem ela vai para de receber os outros comandos ou ela vai anular o que está sendo contado, mas quero que ela possa fazer tudo simultaneamente.

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.727
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #4 em: 11 de Junho de 2013, 01:42 »
Sim, o que quero fazer eu tenho uma placa de reles e ela sempre tem que receber o comando e executar e um dos comandos é um timer para dizer quanto tempo um dos reles vai ficar ligado, mas na hora que começar a contagem ela vai para de receber os outros comandos ou ela vai anular o que está sendo contado, mas quero que ela possa fazer tudo simultaneamente.

Neste caso o ideal é usares interrupções.

Offline luisjustin

  • Mini Robot
  • *
  • Mensagens: 136
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #5 em: 11 de Junho de 2013, 02:15 »
Poderia me explicar _metro ?

Offline tarquinio

  • Mini Robot
  • *
  • Mensagens: 529
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #6 em: 11 de Junho de 2013, 04:10 »
Não é que interrupções sejam nada do outro mundo, mas para o que tu queres fazer não me parece necessário.
Pelo que percebi queres por um timer a correr e ir fazendo enquanto outras coisas enquanto ele não dispara...
Se usasses um delay(1000) por ex aí sim o programa parava durante 1 segundo e não fazia mais nada sem ser as interrupções.
Mas podes usar a função millis() para ir vendo quanto tempo já passou, quando já tiver passado tempo suficiente activas então o relé. Desta forma dá para ir vendo outras coisas ao mesmo tempo, não ficas bloqueado nos delays.

Offline luisjustin

  • Mini Robot
  • *
  • Mensagens: 136
Re: Como fazer o arduino funcionar em Multithreading ?
« Responder #7 em: 11 de Junho de 2013, 06:00 »
Fugindo um pouco do assunto tem como fazer o Arduíno pegar o numero de quem está me ligando ? vamos dizer eu atendo o telefone ele pega o numero e passar para o programa já pesquisar o cadastro ? existe como ? o telefone aqui é linha normal RJ11. Existe possibilidades ?