collapse

* Posts Recentes

MKR Vidor4000 por josecarlos
[Ontem às 21:05]


PWM com ventoinha por edeweld
[Ontem às 20:42]


Frequência máxima de pwm com controlo de duty cycle de 0 a 100% por Njay
[Ontem às 19:59]


NiCd por NiMH? por jm_araujo
[Ontem às 11:46]


LusoRobótica - Website - Estado actual por TigPT
[19 de Maio de 2018, 22:34]


Concurso Robô Bombeiro 2018 por Tesla
[18 de Maio de 2018, 11:01]


Trafo Amplificador Behrimger ? por jm_araujo
[16 de Maio de 2018, 18:55]


Alfândega / Taxas Alfandegárias / Portes por Njay
[16 de Maio de 2018, 01:26]


Compra Colectiva à Farnell N3-2018 (Maio 2018) por Hugu
[15 de Maio de 2018, 15:34]


Robô BBC micro:bit controlado com gestos no telemóvel Android por Tayeb
[14 de Maio de 2018, 19:41]

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

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

Offline luisjustin

  • Mini Robot
  • *
  • Mensagens: 155
    • Meu site
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.275
    • 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: 155
    • Meu site
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.739
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: 155
    • Meu site
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: 155
    • Meu site
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 ?