Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Pages: [1]   Go Down
Author Topic: CW beacon .... Fatto!!! ... almeno credo!!!  (Read 822 times)
0 Members and 1 Guest are viewing this topic.
Oristano
Offline Offline
Sr. Member
****
Karma: 0
Posts: 252
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Credo di aver finito la realizzazione del prototipo che avevo in mente ...
Questa è la versione con l Display LCD.. configurato come da qui:
http://arduino.cc/en/Tutorial/LiquidCrystal
Code:
// personalizzazione
int intervallo = 10 * 1000; // 10 è l'intervallo in secondi tra una trasmissione e l'altra...in realtà dovrà essere dell'ordine dei minuti
int velocita = 60 ; // velocità di manipolazione in caratteri al minuto, molto approssimativamente
String messaggio = "ABCDEF GHILMN OPQRS TUVZ"; // stringa da trasmettere
// fine personalizzazione464654 6 54 47

int tempo = int(5300 / velocita) ;

#include <LiquidCrystal.h>
int lMax = 16 ; // n° di caratteri max da visulaizzare sull'LCD

int nChar = 39; // n° di caratteri di cui si compone il codice morse (lettere, numeri, punteggiatura e qualche altro segno, vedi caratteri_alfab[] e caratteri_morse[]
char   caratteri_alfab [] = { 'A'  , 'B'   , 'C'   , 'D'  , 'E' , 'F'   , 'G'  , 'H'  , 'I' , 'J'   , 'K'  , 'L'   , 'M' ,'N'  , 'O'  , 'P'   , 'Q'   , 'R'  , 'S'  , 'T', 'U'  , 'V'   , 'W'  , 'X'  ,  'Y'  , 'Z'   ,  '0'   ,  '1'   ,  '2'   ,  '3'   ,  '4'   ,  '5'   ,'6'     ,'7'     , '8'    ,'9'     ,'.'      ,','      ,'?'     };
String caratteri_morse [] = { ".-" , "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--","-..-", "-.--", "--..", "-----", ".----", "..---", "...--", "....-", ".....", "-....", "--...", "---..", "----.", ".-.-.-", "--..--","..--.."};

String chrMorse;
 
const int onRadio =  9;      // accende la radio
const int digitCW =  8;      // digita il morse
const int tonePin =  7;      // the number of the tone pin
const int onDisplay = 6;     // accende display

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup()
{
  pinMode(onRadio, OUTPUT);  
  pinMode(digitCW, OUTPUT);  
  pinMode(tonePin, OUTPUT);      
  pinMode(onDisplay, INPUT);      
 lcd.begin(16, 2);
//Serial.begin(9600);
}

void stampa_seriale(String pm, char l, String m, String nC){ Serial.print(pm); Serial.print(" "); Serial.print(l); Serial.print(" "); Serial.print (m); Serial.print(" "); Serial.print (nC); Serial.println();}// serve solo per fare i controlli durantelo sviluppo

void stampa_lcd (String pm, char l, String m, String nC)
{
 lcd.setCursor(0, 0) ; lcd.setCursor(0, 0); lcd.print(pm);
 lcd.setCursor(12, 1); lcd.print(nC); lcd.print(" ");
 lcd.setCursor(2, 1) ; lcd.print("          "); lcd.setCursor(1, 1); lcd.print(l); lcd.print("   "); lcd.print(m);
}

void trova_chrMorse (char l) // trova la stringa morse corrispondente al carattere l e la pone in chrMorse
{
  if ( l != ' ' )
  {
    for( int i = 0; i < nChar; i++)
      {
        if (l == caratteri_alfab [i])
          {chrMorse = caratteri_morse[i]; break;}
       }  
   }
   else {chrMorse ="";};
}

void digita_chrMorse (String m)
{
char segno;
for(int i = 0; i < m.length(); i++)
    {
       segno = m.charAt(i);
       switch (segno)
        {
        case '.':
        digitalWrite(digitCW, HIGH); tone(7, 1000); delay (1*tempo); digitalWrite(digitCW, LOW); noTone(7); delay (1*tempo);  
        break;
        case '-':
        digitalWrite(digitCW, HIGH); tone(7, 1000); delay (3*tempo);  digitalWrite(digitCW, LOW); noTone(7); delay (1*tempo);  
        break;
        }
    }
 }

void loop()
{
 boolean displayOn=true;
 int viaPulsante = millis();
 int statoPulsante =0;
 digitalWrite(onRadio, HIGH);delay(1000);
 char lettera ;
  String parte_messaggio = "               " ;
  messaggio = messaggio.toUpperCase(); // trasforma tutto in maiuscolo
    for(int i = 0; i < messaggio.length(); i++)
      { statoPulsante = digitalRead(onDisplay);
        if ( statoPulsante && millis()-viaPulsante>2000){viaPulsante = millis(); if (displayOn){lcd.noDisplay(); displayOn =false;} else {lcd.display(); displayOn =true;};};
        lettera=messaggio.charAt(i);
        parte_messaggio = parte_messaggio + lettera;
        if (parte_messaggio.length() > lMax ){parte_messaggio = parte_messaggio.substring (parte_messaggio.length()-lMax );}; //taglia la parte di messaggio già trasmesso agli ultimi lMax caratteri. Per poter visualizzare sull'LCD - max 16 caratteri
        trova_chrMorse (lettera);
        stampa_lcd     (parte_messaggio, lettera, chrMorse, String( messaggio.length()-i)); // invia i dati all'LCD
        //stampa_seriale (parte_messaggio, lettera, chrMorse, String( messaggio.length()-i)); //invia i dati per il controllo durante lo sviluppo
        digita_chrMorse(chrMorse);
        if (messaggio.charAt (i+1) != ' ') {delay(3*tempo);} else {delay(7*tempo);};
      }
 lcd.clear() ;
 delay(1000); digitalWrite(onRadio,LOW);
 delay (intervallo);
}


senza LCD
Code:
// personalizzazione
int intervallo = 10 * 1000; // 10 è l'intervallo in secondi tra una trasmissione e l'altra...in realtà dovrà essere dell'ordine dei minuti
int velocita = 60 ; // velocità di manipolazione, in caratteri al minuto ......  approssimativamente .......
String messaggio = "ABCDEF GHILMN OPQRS TUVZ"; // stringa da trasmettere
// fine personalizzazione

int tempo = int(5300 / velocita);

int nChar = 39; // n° di caratteri di cui si compone il codice morse (lettere, numeri, punteggiatura e qualche altro segno, vedi caratteri_alfab[] e caratteri_morse[]
char   caratteri_alfab [] = { 'A'  , 'B'   , 'C'   , 'D'  , 'E' , 'F'   , 'G'  , 'H'  , 'I' , 'J'   , 'K'  , 'L'   , 'M' ,'N'  , 'O'  , 'P'   , 'Q'   , 'R'  , 'S'  , 'T', 'U'  , 'V'   , 'W'  , 'X'  ,  'Y'  , 'Z'   ,  '0'   ,  '1'   ,  '2'   ,  '3'   ,  '4'   ,  '5'   ,'6'     ,'7'     , '8'    ,'9'     ,'.'      ,','      ,'?'     };
String caratteri_morse [] = { ".-" , "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--","-..-", "-.--", "--..", "-----", ".----", "..---", "...--", "....-", ".....", "-....", "--...", "---..", "----.", ".-.-.-", "--..--","..--.."};

String chrMorse;
int lMax=14;

const int onRadio =  9;      // accende la radio
const int digitCW =  8;      // digita il codice morse ...
const int tonePin =  7;      // the number of the tone pin

void setup()
{
  pinMode(onRadio, OUTPUT);  
  pinMode(digitCW, OUTPUT);  
  pinMode(tonePin, OUTPUT);      
//Serial.begin(9600);
}

void stampa_seriale(String pm, char l, String m, String nC){ Serial.print(pm); Serial.print(" "); Serial.print(l); Serial.print(" "); Serial.print (m); Serial.print(" "); Serial.print (nC); Serial.println();}// serve solo per fare i controlli durantelo sviluppo

void trova_chrMorse (char l) // trova la stringa morse corrispondente al carattere l e la pone in chrMorse
{
  if ( l != ' ' )
  {
    for( int i = 0; i < nChar; i++)
      {
        if (l == caratteri_alfab [i])
          {chrMorse = caratteri_morse[i]; break;}
       }  
   }
   else {chrMorse ="";};
}

void digita_chrMorse (String m)
{
char segno;
for(int i = 0; i < m.length(); i++)
    {
       segno = m.charAt(i);
       switch (segno)
        {
        case '.':
        digitalWrite(digitCW, HIGH); tone(7, 1000); delay (1*tempo); digitalWrite(digitCW, LOW); noTone(7); delay (1*tempo);  
        break;
        case '-':
        digitalWrite(digitCW, HIGH); tone(7, 1000); delay (3*tempo);  digitalWrite(digitCW, LOW); noTone(7); delay (1*tempo);  
        break;
        }
    }
 }

void loop()
{
 digitalWrite(onRadio, HIGH);delay(1000);
 char lettera ;
  String parte_messaggio = "               " ;
  messaggio = messaggio.toUpperCase(); // trasforma tutto in maiuscolo
    for(int i = 0; i < messaggio.length(); i++)
      { lettera=messaggio.charAt(i);
        parte_messaggio = parte_messaggio + lettera;
        if (parte_messaggio.length() > lMax ){parte_messaggio = parte_messaggio.substring (parte_messaggio.length()-lMax );}; //taglia la parte di messaggio già trasmesso agli ultimi lMax caratteri. Per poter visualizzare sull'LCD - max 16 caratteri
        trova_chrMorse (lettera);
        //stampa_seriale (parte_messaggio, lettera, chrMorse, String( messaggio.length()-i)); //invia i dati per il controllo durante lo sviluppo
        digita_chrMorse(chrMorse);
        if (messaggio.charAt (i+1) != ' ') {delay(3*tempo);} else {delay(7*tempo);};
      }
 delay(1000); digitalWrite(onRadio,LOW);
 delay (intervallo);
}

.... questo è il primo esperimento.... adesso prepariamo l'hardaware.... il prototipo comunque funziona.... mi piace questo arduino.....
Logged

Oristano
Offline Offline
Sr. Member
****
Karma: 0
Posts: 252
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ultima versione:

le caratteristiche fondamentali sono:
- accensione radio/ commutzione RX/TX
- visualizzaione della digitazione con led ( da cui si prende il segnale per il comando della digitazione sulla radio);
- controllo acustico con nota a 1000 Hz della digitazione;
- Controllo della velocita di digitazione tramite potenziometro (10 - 120 car/min);
- visualizzazione sull'LCD di
 - sulla prima riga: ultimi 16 caratteri inviati;
 - sulla seconda riga:  carattere in fase di digitazione, corrispondente stringa morse, velocita di manipolazione e caratteri mancanti alla fine della digitazione;
- possibilità di spegnere/riaccendere il display;
- possibilita di inserire n righe diverse di testo da inviare.. ciascuna con un tempo di standby;

Pin  9;     // accende|spegne oppure commuta RX|TX  la radio
Pin  8;     // digita il morse
Pin  7;     // pin da cui si preleva la nota a 1000 Hz
Pin  6;     // pulsante accende|spegne il display
Pin A0;    // Ingresso analogico dal potenziometro

Questo è il codice ...

Code:
// personalizzazione
int nFrasi = 3;
String messaggio [] = {"test frase 1 frase 1 12345 67890 ABCD E F G HILMNO PQRST UVZ FRASE 1", "Frase 2 Frase 2 Frase 2 test test test", "ABC FRASE 3 DEFG HIL MNO PQRSTUVZ"};  // stringhe da trasmettere
int intervallo   []=  {2*60 , 5*60, 2*60};  // intervallo di stand by, in minuti alla fine della trsmissione della iesima frase
// fine personalizzazione

#include <LiquidCrystal.h>

int lMax = 16 ;    // n° di caratteri max da visulaizzare sull'LCD
int velocita ;     //velocita' calcolata in base al valore letto dal potenziometro
int tempo;         //contiene la durata dell'unita(punto) [millis/u] corrispondente alla velocita V [car/min]... circa
boolean displayOn; // contiene lo stato acceso|spento dell'LCD
long viaPulsante ; // contatore, parte alla pressione del pulsante acceso|spento onDisplay

int nChar = 39; // n° di caratteri di cui si compone il codice morse (lettere, numeri, punteggiatura e qualche altro segno, vedi caratteri_alfab[] e caratteri_morse[]
char   caratteri_alfab [] = { 'A'  , 'B'   , 'C'   , 'D'  , 'E' , 'F'   , 'G'  , 'H'  , 'I' , 'J'   , 'K'  , 'L'   , 'M' ,'N'  , 'O'  , 'P'   , 'Q'   , 'R'  , 'S'  , 'T', 'U'  , 'V'   , 'W'  , 'X'  ,  'Y'  , 'Z'   ,  '0'   ,  '1'   ,  '2'   ,  '3'   ,  '4'   ,  '5'   ,'6'     ,'7'     , '8'    ,'9'     ,'.'      ,','      ,'?'     };
String caratteri_morse [] = { ".-" , "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--","-..-", "-.--", "--..", "-----", ".----", "..---", "...--", "....-", ".....", "-....", "--...", "---..", "----.", ".-.-.-", "--..--","..--.."};
String chrMorse;
 
const int onRadio =  9;      // accende|spegne oppure commuta RX|TX  la radio
const int digitCW =  8;      // digita il morse
const int tonePin =  7;      // pin da cui si preleva la nota a 1000 Hz
const int onDisplay = 6;     // pulsante accende|spegne il display
const int analogInPin = A0;  // Ingresso analogico dal potenziometro

LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //attribuisce all'LCD i suoi pin/controlli

void stampa_seriale(String pm, char l, String m, int v, String nC){ Serial.print(pm); Serial.print(" "); Serial.print(l); Serial.print(" "); Serial.print (m); Serial.print(" "); Serial.print (v); Serial.print(" "); Serial.print (nC); Serial.println();}// serve solo per fare i controlli durantelo sviluppo

void stampa_lcd (String pm, char l, String m, int v, String nC)
{
 lcd.setCursor(0, 0) ; lcd.print(pm);
 lcd.setCursor(0, 1) ; lcd.print("            "); lcd.setCursor(0, 1); lcd.print(l); lcd.print(" "); lcd.print(m);
 lcd.setCursor(12, 1) ; lcd.print("c"); lcd.print(nC); lcd.print(" ");
}

void ritardo (int r) // simula un delay(r).. ma con controlli all'interno
{
 long rr = millis();
 while ((millis()-rr) < r)
   {
     velocita = map(analogRead(analogInPin), 0, 1023, 15, 120);  //calcola la velocita corrispondente alla lettura del potenziometro
     lcd.setCursor(8, 1) ; lcd.print("v"); lcd.print(velocita);  // stampa la velocita sull'LCD
     if ( digitalRead(onDisplay) &&( millis()-viaPulsante>2000)){viaPulsante = millis(); if (displayOn){lcd.noDisplay(); displayOn =false;} else {lcd.display(); displayOn =true;};}; //accende|spegne l'LCD escludendo doppi comandi entro i 2 secondi
   }
}

void trova_chrMorse (char l) // trova la stringa morse corrispondente al carattere l e la pone in chrMorse
{
  if ( l != ' ' )
  {
    for( int i = 0; i < nChar; i++)
      {
        if (l == caratteri_alfab [i])
          {chrMorse = caratteri_morse[i]; break;}
       }  
   }
   else {chrMorse ="     ";};
}

void setup()
{
  pinMode(onRadio, OUTPUT);  
  pinMode(digitCW, OUTPUT);  
  pinMode(tonePin, OUTPUT);      
  pinMode(onDisplay, INPUT);      
  pinMode(analogInPin, INPUT);

  lcd.begin(16, 2);
  velocita = map(analogRead(analogInPin), 0, 1023, 15, 120);  // determina la velocita (tra 15 e 120) in base alla lettura del potenziometro
  tempo = int(5600.0/velocita) ;  //calcola il tempo dell'unità (punto|spazio) in millisecondi perchè corrisponda la velocità in Car/min
  Serial.begin(9600);
}

void loop()
{
char lettera ;
int r;          //valore di ritardo da passare alla funzione ritardo(r)

for (int k =0; k < nFrasi; k++)
 {
   String parte_messaggio = "               " ;
   digitalWrite(onRadio, HIGH); ritardo(1000);
   digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (30*tempo);digitalWrite(digitCW, LOW); noTone(tonePin);ritardo (30*tempo);  //digita una linea lunga 10 tratti
   messaggio[k] = messaggio[k].toUpperCase(); // trasforma tutto in maiuscolo
    for(int i = 0; i < messaggio[k].length(); i++)
      {
        tempo = int(5600.0/velocita) ;  //calcola il tempo dell'unità (punto|spazio) in millisecondi perchè corrisponda la velocità in Car/min
      
        lettera=messaggio[k].charAt(i);
        parte_messaggio = parte_messaggio + lettera;
        if (parte_messaggio.length() > lMax ){parte_messaggio = parte_messaggio.substring (parte_messaggio.length()-lMax );}; //taglia la parte di messaggio già trasmesso agli ultimi lMax caratteri. Per poter visualizzare sull'LCD - max 16 caratteri
 
       trova_chrMorse (lettera);
       stampa_lcd     (parte_messaggio, lettera, chrMorse, velocita, String( messaggio[k].length()-i)); //invia i dati all'LCD
//       stampa_seriale (parte_messaggio, lettera, chrMorse, velocita, String( messaggio[k].length()-i)); //invia i dati per il controllo durante lo sviluppo
      if (lettera != ' ')
       {
          for(int j = 0; j < chrMorse.length(); j++)
             {
               switch (chrMorse.charAt(j))
                {
                  case '.':r=1; break;
                  case '-':r=3; break;
                }
               digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (r*tempo);digitalWrite(digitCW, LOW); noTone(tonePin); ritardo (1*tempo);  //digita il singolo segno linea o punto
             }
           ritardo(2*tempo);
       }
      else
       { ritardo(7*tempo);}
    }
 lcd.clear() ;
 ritardo (5*tempo); digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (30*tempo);digitalWrite(digitCW, LOW); noTone(tonePin);  //digita una linea lunga 10 tratti'
 ritardo(1000); digitalWrite(onRadio,LOW);
 ritardo (intervallo[k] * 1000 );
 }
}    


« Last Edit: October 17, 2010, 02:11:15 pm by paolosanna » Logged

Oristano
Offline Offline
Sr. Member
****
Karma: 0
Posts: 252
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

versione più semplice, quella che effettivamente a breve metterò in servizio:

- velocità fissa impostata a priori via software;
- mancanza dell'LCD;
Code:
// personalizzazione
int nFrasi = 2;
String messaggio [] = {"Test Frase 1 TEST TEST Frase 1 frase 1 frase 1", "Test Frase 2 Frase 2 Frase 2 Test Test Test ABCDEF GHI LMN OPQR STUVZ 123 456 7 89 0"};  // stringhe da trasmettere
int intervallo   []=  {10*60 , 5*60};  // intervallo di stand by, in minuti alla fine della trsmissione della iesima frase
// fine personalizzazione

int velocita = 80 ;     //velocita' in Car/min
int tempo;

int nChar = 39; // n° di caratteri di cui si compone il codice morse (lettere, numeri, punteggiatura e qualche altro segno, vedi caratteri_alfab[] e caratteri_morse[]
char   caratteri_alfab [] = { 'A'  , 'B'   , 'C'   , 'D'  , 'E' , 'F'   , 'G'  , 'H'  , 'I' , 'J'   , 'K'  , 'L'   , 'M' ,'N'  , 'O'  , 'P'   , 'Q'   , 'R'  , 'S'  , 'T', 'U'  , 'V'   , 'W'  , 'X'  ,  'Y'  , 'Z'   ,  '0'   ,  '1'   ,  '2'   ,  '3'   ,  '4'   ,  '5'   ,'6'     ,'7'     , '8'    ,'9'     ,'.'      ,','      ,'?'     };
String caratteri_morse [] = { ".-" , "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--","-..-", "-.--", "--..", "-----", ".----", "..---", "...--", "....-", ".....", "-....", "--...", "---..", "----.", ".-.-.-", "--..--","..--.."};
String chrMorse;

 
const int onRadio =  9;      // accende|spegne oppure commuta RX|TX  la radio
const int digitCW =  8;      // digita il morse
const int tonePin =  7;      // pin da cui si preleva la nota a 1000 Hz


void stampa_seriale(String pm, char l, String m, int v, String nC){ Serial.print(pm); Serial.print(" "); Serial.print(l); Serial.print(" "); Serial.print (m); Serial.print(" "); Serial.print (v); Serial.print(" "); Serial.print (nC); Serial.println();}// serve solo per fare i controlli durantelo sviluppo



void ritardo (int r) //
{ delay(r); }

void trova_chrMorse (char l) // trova la stringa morse corrispondente al carattere l e la pone in chrMorse
{
  if ( l != ' ' )
  {
    for( int i = 0; i < nChar; i++)
      {
        if (l == caratteri_alfab [i])
          {chrMorse = caratteri_morse[i]; break;}
       }  
   }
   else {chrMorse ="     ";};
}

void setup()
{
  pinMode(onRadio, OUTPUT);  
  pinMode(digitCW, OUTPUT);  
  pinMode(tonePin, OUTPUT);      
  tempo =(6000.0/velocita) ;  //calcola il tempo dell'unità (punto|spazio) in millisecondi perchè corrisponda la velocità in Car/min
  Serial.begin(9600);
}

void loop()
{
 char lettera ;
 int r;          //valore di ritardo da passare alla funzione ritardo(r)

for (int k =0; k<nFrasi; k++)
 {
   String parte_messaggio = "               " ;
   digitalWrite(onRadio, HIGH); ritardo(1000);
   digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (30*tempo);digitalWrite(digitCW, LOW); noTone(tonePin);ritardo (30*tempo);  //digita una linea lunga 10 tratti
   messaggio[k] = messaggio[k].toUpperCase(); // trasforma tutto in maiuscolo

    for(int i = 0; i < messaggio[k].length(); i++)
      {
  
        lettera=messaggio[k].charAt(i);
        parte_messaggio = parte_messaggio + lettera;
        if (parte_messaggio.length() > lMax ){parte_messaggio = parte_messaggio.substring (parte_messaggio.length()-lMax );}; //taglia la parte di messaggio già trasmesso agli ultimi lMax caratteri. Per poter visualizzare sull'LCD - max 16 caratteri

        trova_chrMorse (lettera);
        stampa_seriale (parte_messaggio, lettera, chrMorse, velocita, String( messaggio[k].length()-i)); //invia i dati per il controllo durante lo sviluppo

        if (lettera != ' ')
        {
          for(int j = 0; j < chrMorse.length(); j++)
             {
               switch (chrMorse.charAt(j))
                {
                  case '.':r=1; break;
                  case '-':r=3; break;
                }
               digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (r*tempo);digitalWrite(digitCW, LOW); noTone(tonePin); ritardo (1*tempo);  //digita il singolo segno linea o punto
             }
           ritardo(2*tempo);
       }
       else
       { ritardo(7*tempo);}

   }

 ritardo (5*tempo); digitalWrite(digitCW, HIGH); tone(tonePin, 1000);ritardo (30*tempo);digitalWrite(digitCW, LOW); noTone(tonePin);  //digita una linea lunga 10 tratti'
 ritardo(1000); digitalWrite(onRadio,LOW);
 ritardo (intervallo[k] * 1000 );
 }
}      
« Last Edit: October 18, 2010, 02:14:16 am by paolosanna » Logged

Pages: [1]   Go Up
Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Jump to: