collapse

* Links de Robótica

* Posts Recentes

Medir Agua que está no Poço por jm_araujo
[Hoje às 00:36]


URGENTE - display de 7 segmentos com backpack por helderjsd
[Ontem às 12:30]


Preços e fabricantes de pcb por Sérgio_Sena
[19 de Setembro de 2017, 10:20]


Palavras Cruzadas por Njay
[19 de Setembro de 2017, 02:24]


Isaac Asimov - I, Robot por senso
[18 de Setembro de 2017, 03:41]


Apresentação por TigPT
[17 de Setembro de 2017, 07:31]


ic SL440 da Plessey? por senso
[16 de Setembro de 2017, 13:11]


Compra Colectiva RS-Amidata por brunus
[15 de Setembro de 2017, 22:31]


Ideias para construir um quadrúpede simples por zordlyon
[15 de Setembro de 2017, 10:18]


Preparar bancada de testes por jm_araujo
[14 de Setembro de 2017, 10:24]

Autor Tópico: Arduino 1.0  (Lida 4059 vezes)

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

Offline preytender

  • Mini Robot
  • *
  • Mensagens: 148
Arduino 1.0
« em: 22 de Janeiro de 2012, 00:07 »
Acabei de instalar esta nova versao e descobri que nenhum dos meus sketches compila  :o

Ainda estou a tentar perceber as alterações que foram efectuadas mas parecem ser bastantes.
Mais alguem esta a ter problemas com isto ??

Obrigado, abraço.

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Arduino 1.0
« Responder #1 em: 22 de Janeiro de 2012, 00:11 »
Quais são os erros que te são apresentados?

Offline preytender

  • Mini Robot
  • *
  • Mensagens: 148
Re: Arduino 1.0
« Responder #2 em: 22 de Janeiro de 2012, 00:16 »
A lista é enorme mas comeca com este:

Código: [Seleccione]
WConstants.h: No such file or directory
O problema e que estou a incluir uma biblioteca da pololu #include <PololuQTRSensors.h> que pelos vistos faz qq coisa que nao e suportada nesta nova versao.
« Última modificação: 22 de Janeiro de 2012, 00:18 por preytender »

Offline preytender

  • Mini Robot
  • *
  • Mensagens: 148
Re: Arduino 1.0
« Responder #3 em: 22 de Janeiro de 2012, 00:27 »
Talvez explicando de outra forma, eu tenho um sensor QTR-8RC para o qual fiz download da biblioteca no site da pololu.

Na versao 0023: menu ficheiro exemplos escolho o pololuqtrsensor, faço verificar e tudo Ok
Na versao 1.0: faço exactamente o mesmo e da uma lista enorme de erros.

Para alem disto outras bibliotecas que eu proprio fiz nao estão a compilar.

Offline KaliKeira

  • Mini Robot
  • *
  • Mensagens: 87
    • DJ Puto_P
Re: Arduino 1.0
« Responder #4 em: 22 de Janeiro de 2012, 00:32 »
Tenho o mesmo problema...

A minha solução temporária é usar uma versão anterior (no meu caso a 0022) e só quando as bibliotecas foram feitas mesmo para a versão 1.0 é que uso essa versão...

Não vejo assim melhorias significativas em usar a versão 1.0 pelo que para mim chega a 0022...

Offline preytender

  • Mini Robot
  • *
  • Mensagens: 148
Re: Arduino 1.0
« Responder #5 em: 22 de Janeiro de 2012, 00:42 »
Poix   :-\

Na pasta hardware/cores da nova versao faltam alguns ficheiros que existiam nas versoes anteriores tais como WConstants.h e wiring.h, penso ser esta a causa do problema.

Ate melhor solução acho k tambem me vou manter na versao 0023.
 

Offline msr

  • Mini Robot
  • *
  • Mensagens: 793
Re: Arduino 1.0
« Responder #6 em: 22 de Janeiro de 2012, 01:24 »
Não sou utilizador frequente do Arduino, mas ha uns tempos andei a dar uma vista de olhos no novo IDE para ver as diferenças e uma coisa que reparei é que agora incluem o ficheiro "Arduino.h", antes acho que se chamava "WProgram.h". É nesse header que estão incluidas as várias bibliotecas Wiring, etc. Vê se tem a ver com isso.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.390
  • Helpdesk do sitio
Re: Arduino 1.0
« Responder #7 em: 22 de Janeiro de 2012, 02:25 »
A infinita inteligência do pessoal do Arduino voltou a fazer das suas e como tal, tudo quanto é bibliotecas que incluam o WProgram dão erro porque os senhores se lembraram de mudar o nome desse ficheiro para Arduino, e não coube na sua cabecinha que iam dar cabo de anos de código e bibliotecas criadas por N pessoas, é que basta meia duzia de linhas de código de pré-processador no inicio do ficheiro para não dar barraca, mas tendo em conta que vem das pessoas que desligaram os warnings do compilador, que continuam a teimar em não mostrar o uso de ram em compile-time ou que na biblioteca de SPI que é copy paste da datasheet conseguiram meter 2 bugs, ou que o sistema de interrupções está sériamente comprometido, a sorte é que o user tipico de arduino muito raramente as usa, e muitos mais bugs que são colocados no bug tracker e que são ignorados.
Avr fanboy

Offline XicoMBD

  • Mini Robot
  • *
  • Mensagens: 571
    • FranciscoDias.net
Re: Arduino 1.0
« Responder #8 em: 28 de Janeiro de 2012, 15:59 »
Boas

Eu tenho estado a utilizar o 1.0 desde que saiu e não tenho tido grandes problemas.
Tive que fazer algumas modificações nalguns dos meus sketches, especialmente os que usam a biblioteca Wire, mas nada de mais.

Podem tentar corrigir esse problema colocando este código no *.h das bibliotecas, pode nao corrigir todos os problemas mas pelo menos esse fica despachado:
Código: [Seleccione]
#if (ARDUINO >= 100)
#include <Arduino.h>
#else
#include <WProgram.h>
#endif

Eu agora deparei-me foi com outro problema:
Recentemente adquiri um Arduino Mega ADK e ao seguir este tutorial (http://labs.arduino.cc/ADK/AccessoryMode) sempre que corria o código no 1.0 tinha este erro:
Código: [Seleccione]
In file included from _01_digitalRead_adk.cpp:13:
C:\Users\Francisco Dias\Documents\Arduino\libraries\AndroidAccessory/AndroidAccessory.h:71: error: conflicting return type specified for 'virtual void AndroidAccessory::write(uint8_t)'
C:\Program Files\arduino-1.0\hardware\arduino\cores\arduino/Print.h:48: error:   overriding 'virtual size_t Print::write(uint8_t)'
Entretanto experimentei instalar o 1.0-beta1, que é o que estava nesse tutorial, e funcionou lá.
Parece-me ridículo funcionar no beta e nao na versão estável...

Alguma ideia sobre porquê é que isto acontece, ou se há alguma solução?
« Última modificação: 28 de Janeiro de 2012, 16:01 por XicoMBD »

Offline joaopedrocmp

  • Mini Robot
  • *
  • Mensagens: 246
Re: Arduino 1.0
« Responder #9 em: 31 de Março de 2012, 14:14 »
Boas, tmb tive um problema.

Fiz o seguinte codigo para ler os endereços de uns interruptores dip pelas portas analógicas, para trabalhar com dmx, mas, quando o codigo é posto no arduino com o 0023, funciona, com o 1.0 não.

Código: [Seleccione]
int setch;

void setup () {
  Serial.begin(9600);
}

void loop() {
readdipchanel();
Serial.write("DIPVAL:");
Serial.write(setch);
delay(1000);
}

void readdipchanel(){
 
int dip1;
int dip2;
int dip3;
int dip4;
int dip5;
int dip6;

int valA0;
int valA1;
int valA2;
int valA3;
int valA4;
int valA5;
 
valA0 = analogRead(A0);
valA1 = analogRead(A1);
valA2 = analogRead(A2);
valA3 = analogRead(A3);
valA4 = analogRead(A4);
valA5 = analogRead(A5);

if (valA0 > 500){dip1 = 1;}
if (valA0 <500) {dip1 = 0;}
if (valA1 > 500){dip2 = 2;}
if (valA1 <500) {dip2 = 0;}
if (valA2 > 500){dip3 = 4;}
if (valA2 <500) {dip3 = 0;}
if (valA3 > 500){dip4 = 8;}
if (valA3 <500) {dip4 = 0;}
if (valA4 > 500){dip5 = 16;}
if (valA4 <500) {dip5 = 0;}
if (valA5 > 500){dip6 = 32;}
if (valA5 <500) {dip6 = 0;}

setch = (dip1 + dip2 + dip3 + dip4+ dip5 +dip6);
}

Ah, e ao fazer upload com o 1.0, ja mudei o serial.print , para serial write. mas mesmo assim....

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.390
  • Helpdesk do sitio
Re: Arduino 1.0
« Responder #10 em: 31 de Março de 2012, 14:19 »
Mas dá erro a compilar?
Ou simplesmente não funciona?
Avr fanboy

Offline joaopedrocmp

  • Mini Robot
  • *
  • Mensagens: 246
Re: Arduino 1.0
« Responder #11 em: 31 de Março de 2012, 14:32 »
Erro meu.

Tinha lido não sei onde que no 1.0 tinha que se utilizar o Serial.write, e pelo que vi, essa função não funciona com variaveis.

Mas agora tentei o print, e funciona na mesma :)

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Arduino 1.0
« Responder #12 em: 31 de Março de 2012, 16:34 »
Serial.write funciona com variáveis sim senhor. Tens é de ler a documentação.

O write é para mandares bytes em raw. Se meteres write(0x30) é enviado um 0x30. O print é mais usado para debug porque se meteres print(49) ele em vez de te enviar o caracter ascii 49, envia-te 2 caracteres, o 4 e o 9.

Offline joaopedrocmp

  • Mini Robot
  • *
  • Mensagens: 246
Re: Arduino 1.0
« Responder #13 em: 31 de Março de 2012, 16:43 »
thanks :)