Show Posts
Pages: 1 ... 52 53 [54] 55 56 ... 64
796  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 12, 2011, 05:26:46 pm
si uso la versione 0022, e la NewSoftSerial modificata secondo la tua guida smiley-wink
il codice è questo, ma non chiedermi cosa dovrebbe fare dettagliatamente perchè è un po' complicato da spiegare smiley-mr-green ma in sostanza legge 6 segnali PWM, elabora i dati e se l'arduino manda a 1 il pin 2, lui inizia a mandargli i dati con la seriale e poi aspetta che l'arduino lo rimetta a 0 per riprendere a leggere i dati...

Code:
#include <NewSoftSerial.h>
NewSoftSerial TinySerial(0,1); //RX=0;TX=1;
unsigned int er[2][3][10];
byte k, n, r, re, last;
char out[5];

void setup()
{
 TinySerial.begin(9600);
 DDRB=B010;
 DDRA=B0000000;
 for(k=0;k<10;k++)
 {for(n=0;n<3;n++)
  {er[0][n][k]=1000;
   er[1][n][k]=1000;}}
 for(n=0;n<5;n++)
 {out[n]='0';}
 last=0;
}

void loop()
{
 if(digitalRead(2)==HIGH)
 {
  out[0]='0'+r;
  out[1]='0'+(re/1000);
  out[2]='0'+((re%1000)/100);
  out[3]='0'+((re%100)/10);
  out[4]='0'+(re%10);
  for(n=0;n<5;n++)TinySerial.print((char)out[n]); //se io commento questa riga non mi da più errore
  while(digitalRead(2)==HIGH)delayMicroseconds(1);
 }
 
 else
 {
  for(k=0;k<10;k++)
  {
   for(n=0;n<3;n++)
   {
    er[0][n][k]=pulseIn(n+3, HIGH,1000);
    er[1][n][k]=pulseIn(n+6, HIGH,1000);
   }
   
   for(n=0;n<3;n++)
   {
    if((er[0][n][k]==0)&&(er[0][n][last]>100)) er[0][n][k]=1000;
    if((er[1][n][k]==0)&&(er[1][n][last]>100)) er[1][n][k]=1000;
   }
   
   for(n=0;n<3;n++)
   {
    for(r=1;r<10;r++)
    {
     er[0][n][0]=er[0][n][0]+er[0][n][r];
     er[1][n][0]=er[1][n][0]+er[1][n][r];
    }
    er[0][n][0]=er[0][n][0]/10;
    er[1][n][0]=er[1][n][0]/10;
   }
 
   er[0][0][0]=(er[0][0][0]+er[0][1][0]+er[0][2][0])/3;
   er[1][0][0]=(er[1][0][0]+er[1][1][0]+er[1][2][0])/3;

   if(er[0][0][0]<er[1][0][0]) r=0;
   else r=1;
   re=er[r][0][0];
 
   last=k;
  }
 }
}
797  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 12, 2011, 05:13:25 pm
scusa Leo, tu che predichi il vangelo degli ATtiny, sai dirmi perchè mi da questo errore compilando un programma per i tiny con la NewSoftSerial?
Code:
c:/arduino-0022/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr25/crttn84.o:(.init9+0x2): relocation truncated to fit: R_AVR_13_PCREL against symbol `exit' defined in .fini9 section in
c:/arduino-0022/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/avr25\libgcc.a(_exit.o)
se imposto come board il mega2560 non mi da più errore quindi penso sia un problema riguardante i tiny...
798  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 12, 2011, 04:39:05 pm
ok ok no problem sarebbe stato comodo avercela ma alla fine mi basta convertire gli int in chat e viceversa e ottengo lo stesso risultato no? altre proposte? ci sono già funzioni che lo fanno?
799  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 12, 2011, 04:30:25 pm
peccato smiley-sad
per curiosità perchè non c'è? cosa hanno di così diverso le funzioni print e write?
800  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 12, 2011, 04:15:49 pm
lasciate stare il problema precedente a quanto pare si è sistemato da solo... magia smiley
non ho capito una cosa della NewSoftSerial... perchè non mi compila la funzione write? non è prevista dalla libreria?
801  International / Generale / Re: problemi nel programmare ATtiny84 on: December 11, 2011, 08:25:09 am
ok grazie, oggi non ho tempo per provare... nei prossimi giorni la provo smiley-wink
802  International / Generale / Re: problemi nel programmare ATtiny84 on: December 11, 2011, 05:55:18 am
no dai non dirmi queste cose  smiley-cry
allora adesso provo a vedere di arrangiarmi solo con l'invio o con qualche shiftIn - Out... il problema è che ho i pin contati e la seriale sarebbe stata la cosa migliore
803  International / Generale / Re: problemi nel programmare ATtiny84 on: December 11, 2011, 05:21:44 am
si ho provato ad accendere qualche led di prova ma non capisco cosa riceve o se proprio non riceve... è difficile interpretarli senza il serial monitor come supporto
804  International / Generale / Re: problemi nel programmare ATtiny84 on: December 11, 2011, 05:12:41 am
ho provato a seguire la guida e a fare qualche esperimento ma ha problemi in ricezione, o almeno io non riesco a capire cosa riceve e se riceve; mentre non ci sono problemi in invio...
805  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 10, 2011, 11:44:45 am
ok ok per adesso non mi servono ancora 2 NewSoftSerial, magari in futuro...

comunque non capisco perchè se mando una sringa "1234567890" dal serial monito del mega al 2009, il 2009 riceve "1234567890"; mentre se mando la stessa stringa dal serial monitor del 2009 al mega, sul serial monitor del mega vedo solo "123"... il codice è quello postato in precedenza con l'unica variazione dei baud da 115200 a 9600... dov'è il problema? mi sono dimenticato di considerare qualcosa? ho modificato la libreria per adattarla agli ATtiny può aver creato qualche problema?


per i tiny sto provando per inviare inviano senza problemi a quanto pare, ma non capisco in ricezione cosa ricevono e se ricevono soprattutto...
ma questo argomento lo lascio nel topic degli ATtiny: http://arduino.cc/forum/index.php/topic,77374.75.html smiley-wink
806  International / Generale / Re: problemi nel programmare ATtiny84 on: December 10, 2011, 04:21:57 am
ok ok adesso provo vediamo cosa riesco a fare
807  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 10, 2011, 04:18:44 am
ok ho capito grazie mille smiley-wink
808  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 10, 2011, 04:11:21 am
ok ok ora va tutto, finalmente ho capito bene come funziona, grazie a tutti! smiley-wink
un'ultima domanda... posso creare più di una NewSoftSerial giusto? non vanno in conflitto fra di loro?
809  International / Generale / Re: problemi nel programmare ATtiny84 on: December 10, 2011, 03:41:18 am
per la seriale ho scoperto che c'era anche in questa guida:
http://www.gioblu.com/tutorials/programmazione/214-guida-alluso-dellattiny85
quindi provo a fare così e poi vi so dire smiley-wink
810  International / Generale / Re: problema con SoftwareSerial e NewSoftSerial on: December 10, 2011, 03:34:57 am
dov'era scritto?? questa frase non l'avevo proprio notata...
comunque adesso ho provato a 9600 e va, grazie smiley-wink
Pages: 1 ... 52 53 [54] 55 56 ... 64