RSS
Mostrando entradas con la etiqueta lu6fpj. Mostrar todas las entradas
Mostrando entradas con la etiqueta lu6fpj. Mostrar todas las entradas

Bloopers Informáticos de los 90

Este documento que tengo aquí, señoras y señores, no es cualquier PDF. Es una crónica de guerra, un monumento al infortunio, una obra de arqueología digital con la firma de un combatiente de primera línea: Maxi de DMA Informática.

El archivo "Bloopers Release 08-95" no es solo un documento; es el testimonio de que, en los albores de la computación personal, la tecnología nunca fue el problema, sino la desesperación humana y el abismo de incomprensión que separaba al técnico del usuario promedio.

La Épica Tragedia de los Noventa

Este compilado, con el tono amargo del que ya lo ha visto todo, narra el calvario de tener que explicarle a un cliente que el monitor color no era aquel que daba "Ámbar y negro" , o el desquicio de un tipo que desarma un disco rígido de 40Mb porque "se le salió una chapita" y, peor aún, lo vuelve a armar después de haber "centrado el eje". ¡El disco rígido centrado, como una rueda de bicicleta! Un acto de fe tan grande que solo pudo terminar en el manicomio más cercano.

Y ni hablemos del usuario que, frente al mensaje "PULSE RETURN PARA CONTINUAR" , interrumpe al técnico para demostrar que al escribir literalmente la palabra "return" no pasa nada. ¡A la mierda con la lógica binaria! Acá valía más un rosario que el manual de comandos.

Los Protagonistas de la Derrota

En esta galería de la infamia informática, brillan varias figuras estelares:

  1. El Comando Absurdo: Se menciona un código de programación llamado SCRAWER 1.0 |) LUCK. No es solo un programa; es la filosofía pura de la época. El programador ya entendía que a su código había que ponerle un LUCK (suerte) en la versión, porque la única forma de que eso anduviera en la máquina de un cliente era si intervenían las fuerzas cósmicas. El código fuente de la frustración.

  2. Mr. Plastilina: Un personaje recurrente que, para borrar una mugre del disco rígido, ejecuta KILL C: desde el directorio raíz. El resultado, a los 20 segundos: un disco C: VACÍO!!!. Pero el momento cumbre de este genio es cuando están transmitiendo un archivo a Uruguay, y él, al escuchar que "estamos hablando con Carlos" (por módem), corre al teléfono de abajo, levanta el tubo y grita: "¡HOLA CARLOS!!!". La puteada que se escuchó del otro lado fue una sinfonía de la desazón internacional.



La Saga del Videojuego y la Fe

En el reino de los videojuegos, el usuario no se queda atrás en su capacidad de asombro. Hay un pibe que viene a comprar el juego de un bichito que come cositas por un laberinto (el Pac-Man), y al día siguiente vuelve para pedir que le enseñen a jugarlo. O el cliente que pregunta por un juego de karate (Le recomiendan Budokan) y, con genuina curiosidad, pregunta: "¿Y de qué se trata?".

Pero el episodio que trasciende lo digital para meterse en lo teológico es el del juego Monkey Island II. Un chico lo compra, y a los tres días vuelve a pedir que se lo cambien. ¿La razón? El juego tiene elementos de brujería y hechizo vudú, y él responde, con una seriedad que congela el alma del vendedor: "Porque nuestra religión no lo permite". Ante el dilema moral, el vendedor, en un rapto de locura pura, le responde: "Y... nosotros qué culpa tenemos, hacete ateo".


En fin, una joya.

Conservo esta recopilación de bloopers, originalmente creada por Maxi de DMA Informática. No se equivoque, estimado lector, esto no fue un mero copy-paste. Maxi se tomó el duro trabajo de rastrear y recopilar estas perlas de la estupidez humana digital de diferentes fuentes de la época, cuando el internet era un ruido infernal y la información se cazaba con paciencia de orfebre. Es un muestrario antropológico de la perplejidad frente a la máquina, y está disponible para quien quiera sumergirse en él. Pida sin miedo, que es gratis.


  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

🧠 El Virus PHX: cuando la venganza se compilaba en assembler

Hubo virus informáticos que buscaron conquistar el mundo, otros que quisieron destruirlo, y después estuvo PHX, un virus argentino que solo quería vengarse.
Sí, señor: una especie de tango binario con rencor incluido.
El creador, conocido como Armagedon (porque “Juan Pérez” no sonaba tan apocalíptico), programó ese bicho en los gloriosos años 90. Según confesó, lo hizo para vengarse de un sujeto que le había jugado una mala pasada con un programa. En vez de insultarlo por teléfono o escribirle una carta documento, decidió inventar un virus. Así éramos los argentinos: creativos hasta para odiar.

⚙️ ¿Qué hacía el virus?
El PHX (también conocido como Willistrover III por el Scan, que lo bautizó sin pedir permiso) infectaba archivos .EXE y .COM, pero no de manera salvaje. No. El tipo era paciente.
Primero se instalaba, se escondía, se acomodaba y anotaba cuántas veces se había instalado en un cuadernito que guardaba en la CMOS (esa partecita de la compu donde uno esperaría encontrar algo más útil, como la hora).
Cuando llegaba a 128 instalaciones, recién ahí decía:

“Bueno, me cansé de esperar. Hora de hacer macanas.”
Y empezaba su obra maestra: corrompía el último byte de cada archivo grabado, pero solo el bit más alto.
Nada de destruir todo de una —no, no— el PHX tenía clase. Era un virus sutil, un artista del daño paulatino. Un tipo que te arruinaba el disco como quien le echaba agua a la sopa: despacito, sin que se notara.

🔬 Detalles técnicos que nadie pidió pero igual contamos
Se instalaba en memoria usando la interrupción 21h, porque en los 90 todo lo bueno pasaba por ahí.

Engañaba al sistema haciéndose pasar por parte del DOS: le ponía de nombre IBMDOS.COM, como quien se disfraza de colectivero para no pagar boleto.

Usaba el puerto 3E4h para buscar algo misterioso, una especie de “tarjeta perdida del enemigo”. Si ese puerto respondía, empezaba a frotarse las manos digitales.

Tenía un contador de generaciones, porque hasta los virus querían dejar descendencia. Los ejemplares hallados tenían más de once generaciones, lo que demostraba que la genética del rencor era fuerte.
Solo funcionaba en procesadores 286 o superiores, porque el tipo tenía su dignidad: nada de rebajarse a correr en una XT.

🧩 El misterio del “PHX”
El virus se activaba si en el entorno de la computadora había un string que terminaba en “PHX”.
Qué significaba, nadie lo supo. Podía ser una sigla, un apodo o las iniciales del perro del enemigo.
El hecho es que el virus buscaba algo, como un sabueso digital que no encontraba la zapatilla pero igual mordía al que pasaba.

💣 Conclusión
El PHX no fue el más peligroso, pero sí uno de los más creativos.
No quería destruir el mundo: quería arruinarle el día a una persona en particular, lo cual era mucho más humano.

Como dijo una vez un filósofo de taller informático:

“El odio bien dirigido es más eficiente que cualquier inteligencia artificial.”

Así que ya se sabía: cuando una computadora se portaba rara, no había que pensar en hackers rusos ni en virus chinos.
Capaz que era un argentino de los 90 que todavía andaba buscando justicia… bit por bit.

Facu LU6FPJ 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Load “Mi historia con las computadoras y los videojuegos”,8,1

A veces me preguntan cómo empezó todo esto de las computadoras, y la verdad es que no hay una sola respuesta. Es una mezcla de curiosidad, cables, pantallas en blanco y negro y muchas horas tipeando líneas de código que a veces ni funcionaban.

Esta es una muy breve autobiografía sobre mi paso por el mundo de las computadoras y los videojuegos. Seguramente olvide muchos detalles —y algunos me los guardo para no aburrir—, pero va dedicada a todos los que vivimos aquella época, y en especial a quienes fueron colegas, clientes y compañeros de aventuras digitales.
Quizás algún día escriba una segunda parte, más completa y prolija.


Los primeros bits

Todo comenzó junto a mi hermano mayor, cuando compramos nuestra primera computadora: una Timex Sinclair 1000, en una casa de computación de la calle Maipú (¿cómo se llamaba?). Tenía 2 KB de RAM, imagen en blanco y negro y sin sonido. Una maravilla para su tiempo, aunque hoy nos parezca imposible hacer algo con tan poco.

En la escuela primaria a la que iba (C.C.Vigil), tener una computadora era casi una rareza. Recuerdo a una compañera que tenía una Texas TI99/4A —color y sonido, toda una evolución—. Intercambiábamos juegos escritos en BASIC, que había que tipear línea por línea. La mayoría no funcionaban, claro, por incompatibilidades. Pero esa era parte de la magia: el intento, el error y la satisfacción cuando, por fin, aparecía algo en pantalla.

Después de la Timex llegó justamente la Texas TI99/4A, y más tarde la Spectrum, que compramos en Alas Computación, sobre Avenida Pellegrini en una Galería. Luego vino la Commodore 64, con su inseparable datasette, y más adelante una disquetera 1571 (la del Commodore 128) y el mítico cartucho Fastload.

El Fastload para la Commodore 64 era un accesorio fundamental: aceleraba drásticamente los tiempos de carga —hasta cinco veces más rápido que el sistema estándar— y además incluía utilidades muy útiles para manejar los disquetes, como copiar, formatear o ver el directorio sin borrar el programa en memoria. También ofrecía herramientas de depuración y edición en código máquina, e incluso podía desactivarse fácilmente si algún software no era compatible. Una verdadera joya técnica para su tiempo.

Hasta que llegó la Commodore Amiga 500… y ahí sí: fue una locura. Gráficos, sonido, animaciones. Un antes y un después.


Del hobby al trabajo

El salto a las PC ya me encuentra con recuerdos mezclados: no sé si fue primero una XT o una 286, pero sí recuerdo que no tenía disco rígido y usaba un monitor Hércules. Desde ahí, la evolución fue constante.

Con el tiempo llegaron los días de La Tinto (Entre Ríos 1075) y después La Cueva, justo al lado, en el 1071.

F1 "Ayuda"


Ahí comenzaron mis días como técnico reparador: desoldar, soldar, probar chips, revivir computadoras. Pasaron por mis manos Commodore 16, 64, 128, Amiga 500, 600, 1200, 3000, además de Atari, MSX, Spectrum, y muchas más.

Solía ir a buscar las máquinas a Todocomputación, en la galería Vía Florida, para repararlas y luego devolverlas funcionando. También trabajé en Online Software, primero en el local 18 y luego en el 35, cuando se mudó al fondo.

Le decíamos “la galería de la computación”, porque estaban todos:

  • Todocomputación, que vendía insumos y hardware,
  • DMA, que ofrecía software shareware,
  • y Online, dedicada a los juegos.
    Era casi un pacto de caballeros: cada uno en lo suyo, compartiendo la misma pasión.
    Todocomputación


Clientes, amigos y anécdotas

Entre los clientes recuerdo a Roberto Fontanarrosa, que traía a su hijo a comprar juegos. También al técnico que manejaba el láser del boliche Space, donde, en una pantalla gigante, pasaban saludos y efectos generados con una Spectrum.


Un día preparé varias animaciones en una Commodore Amiga 500, las grabé en VHS y se las llevé para que las pasaran en el boliche.
Ver esas imágenes en la pantalla gigante, rodeado de amigos, fue un momento que nunca olvidé.

On Line Software, Galería Vía Florida Local 35

Tiempo después, junto a mi amigo Jorge Ramos, salimos en una nota del diario La Capital sobre la primera edición del GTA. Hoy puede parecer algo normal, pero en su momento el juego generó mucha polémica por su contenido violento.


Epílogo (por ahora)

Podría seguir contando anécdotas por horas, pero prefiero dejar acá esta primera parte.
Invito a quien lea esto a dejar su recuerdo, historia, anécdota o foto de aquella época.
Un saludo muy especial para Carlos y Willy, y para todos los que compartieron conmigo esta increíble aventura digital.



  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Recuerdo de Eduardo, LU4FC: Un radioaficionado con una habilidad única

 A principios de los 2000, En donde trabajaba, teníamos una base de VHF Icom IC-22U, que utilizábamos para nuestras comunicaciones. Eduardo LU4FC, un radioaficionado que luego descubrí vivía a solo tres cuadras de mi casa, hablaba con alguien y hacía preguntas inusuales por la repetidora del radio club Rosario LU4FM. Estaba interesado en los terremotos. No era un tema que escucháramos habitualmente, pero lo que nos llamó la atención fue que Eduardo LU4FC, sin tener acceso a internet o computadoras, había desarrollado una habilidad asombrosa: podía escuchar señales y ruidos a través de la radio que indicaban la posible ocurrencia de un terremoto.

En aquella época, trabajaba junto a Carlos (LU4FHJ) y escuchábamos juntos cómo Eduardo preguntaba si se había registrado algún terremoto en la región o en los países vecinos. En una de esas ocasiones, decidí buscar información sobre terremotos recientes en línea, y resultó que había ocurrido uno en Argentina. Carlos LU4FHJ se contactó con Eduardo y le pasó la información.
A partir de ahí, Eduardo comenzó a hacer lo mismo con regularidad: Usábamos la frecuencia 147.415Mhz y allí nos pedía información sobre terremotos, y nosotros buscábamos y le pasábamos los datos. Algunas veces incluso imprimíamos la información y se la llevábamos a su casa.
Lo más asombroso es que con el tiempo, nos dimos cuenta de que Eduardo había logrado "escuchar" entre los ruidos de HF interferencias que indicaban la posible proximidad de un terremoto. Dependiendo de la intensidad, el ruido y en qué banda lo percibía, podía predecir la distancia con cierta exactitud a la que ocurriría el sismo, Nos fascinaba tanto que decidimos investigar más sobre el tema y descubrimos que no era el único radioaficionado con esa habilidad.




En un foro de radioaficionados, encontré una anécdota que me recordó mucho a las observaciones de Eduardo. Un usuario compartió cómo, en varias ocasiones, había notado extraños ruidos en la banda de 40 metros poco antes de grandes terremotos. Al principio, pensó que era una simple coincidencia, pero después de varias veces, comenzó a relacionar esos ruidos con eventos sísmicos. Otros miembros del foro comenzaron a compartir experiencias similares, describiendo cómo ciertos sonidos en las bandas de HF parecían preceder a grandes movimientos sísmicos.
La coincidencia con lo que Eduardo había estado experimentando me pareció impresionante. Al igual que él, estos radioaficionados estaban detectando señales que no podían explicarse fácilmente. Era como si las ondas de radio, de alguna manera, estuvieran siendo alteradas por la actividad sísmica, creando un patrón que solo algunos con el oído entrenado podían notar. Esta historia del foro solo refuerza la idea de que hay algo más en juego en la propagación de señales en las frecuencias de radio, algo que, como en el caso de Eduardo, podría ayudarnos a predecir ciertos eventos naturales.
En los últimos años, se ha acumulado evidencia de que es posible detectar terremotos mediante la medición de cambios en la ionosfera. Un ejemplo de esto es el RF-Seismograph, una herramienta de propagación de HF creada por Alex Schwarz (VE7DXW), que mide picos y caídas de señal. Este fenómeno fue analizado por el equipo del RF-Seismograph en colaboración con Earthquakes Canadá. Juntos, investigaron posibles correlaciones entre la propagación de HF y los terremotos, con el objetivo de identificar cambios en el nivel de ruido y cómo esto podría predecir terremotos.
El RF-Seismograph utiliza un radio HF, una interfaz LIF para decodificar la señal intermedia a través de una tarjeta de sonido y una antena vertical de 9 bandas para recibir y registrar el ruido de fondo de RF. Se ha encontrado que, antes de los terremotos, el ruido en ciertas frecuencias, como en la banda de 80m, aumenta significativamente, y la propagación de las señales puede interrumpirse. Esto es consistente con la teoría de que los terremotos generan campos electromagnéticos que alteran la ionosfera, lo que afecta la propagación de las ondas de radio.
Muy parecido a las observaciones que Eduardo hizo en su momento: él también podía detectar cambios en la propagación de señales antes de que ocurrieran los sismos. Dependiendo de la interferencia que escuchaba y en que banda, podía predecir el epicentro y la distancia de los terremotos con bastante presición. El fenómeno de la interferencia electromagnética provocado por la actividad sísmica, conocido como efecto piezoeléctrico, ocurre cuando las rocas se deslizan y vibran durante un terremoto, liberando grandes cantidades de electrones que interactúan con el campo magnético de la Tierra. Esta interacción genera perturbaciones en la ionosfera que pueden ser detectadas por equipos como el RF-Seismograph.
Eduardo, como tantos otros radioaficionados, no solo era un apasionado por la radio, sino que tenía una capacidad única para detectar detalles que escapaban a los demás
Gracias por leer, 73`s Facu LU6FPJ

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Radiobaliza Arduino Nano - módulo DRA818V

Se encuentra funcionando en forma experimental una pequeña radiobaliza QRP que emite un mensaje en CW cada 5 minutos aproximadamente en la frecuencia 144.055Mhz. Los reportes son bienvenidos lu6fpj@gmail.com o vía twitter en @lu6fpj.



Adjunto el circuito para quien le interese:

Para quien no posea el módulo DRA818 se puede mediante una pequeña y sencilla modificación, hacer funcionar la radiobaliza con un handy. (Por ejemplo Yaesu FT23r)

Circuito para conexión con handy Yaesu FT-23r


El código fuente para usar con el módulo DRA818:

#include <stdio.h>
#include <SoftwareSerial.h>
#include "DRA818.h"


#define PD      10  
#define RX      0   
#define TX      1   


// Establecer parámetros para el DRA818V
int bw = 1; // ancho de banda en KHz (0 = 12.5KHz or 1 = 25KHz)
float ftx = 144.0550; // Frecuencia de TX en MHz (134.0000 - 174.0000)
float frx = 144.0550; // Frecuencia de RX en MHz (134.0000 - 174.0000)
String tx_ctcss = "0000"; // Frecuencia de Subtonos CTCSS en TX (0000 - 0038); 0000 = "Sin CTCSS"
String rx_ctcss = "0000"; // Frecuencia de Subtonos CTCSS en RX  (0000 - 0038); 0000 = "Sin CTCSS"
int squ = 5; // Nivel del squelch (0-8); 0 = "Abierto, sin squelch"


int pinPTT = 4; // Pin para PTT
int MorseLEDPin = 13; // Led
int MorseTonePin = 5; // Pin de audio
int MorseToneFreq = 1000; // Frecuencia del tono
int MorseWPM = 20; // Velocidad (Palabras Por Minuto)

#define strBeacondID "     VVV VVV RADIOBALIZA LU6FPJ FF97QA    " // Mensaje que va a emitir la baliza


char* MorseCodeCharacters[] = {
"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","----.",
"/","-..-.",
"*","-.-.-",
".",".-.-.",
"&","...-.-",
" "," "
};

// ----------------------------------------------------------------------------------------


void setup() {
   

  Serial.begin(9600);
  pinMode(pinPTT, OUTPUT);
  pinMode(MorseLEDPin, OUTPUT);
  pinMode(MorseTonePin, OUTPUT);
  Serial.println(" Morse "); Serial.println();
}

  void TransmitMorse(String MorseString, int MorseWPM,int MorseToneFreq) {


  delay (10);
Serial.print ( "AT+DMOSETGROUP="); // comenzar mensaje
Serial.print (bw);
Serial.print ( ",");
Serial.print (ftx,4);
Serial.print ( ",");
Serial.print (frx,4);
Serial.print ( ",");
Serial.print (tx_ctcss);
Serial.print ( ",");
Serial.print (squ);
Serial.print ( ",");
Serial.println (rx_ctcss);// siempre finalice el comando con una nueva línea "println"

  delay (10);

  Serial.print("Mensaje: ");
  Serial.println(MorseString);

  int CWdot = 1200 / MorseWPM;
  int CWdash = (1200 / MorseWPM)*3;
  int istr;
  for (istr=0; istr < MorseString.length(); istr++) {
    String currentchar = MorseString.substring(istr,istr+1);
    int ichar = 0;
    while(ichar < sizeof(MorseCodeCharacters)) {
      String currentletter = MorseCodeCharacters[ichar];  
      String currentcode = MorseCodeCharacters[ichar+1];  
      if (currentletter.equalsIgnoreCase(currentchar)) {
        int icp=0;
        for (icp=0;icp < currentcode.length(); icp++) {
         
          if (currentcode.substring(icp,icp+1).equalsIgnoreCase(".")) {
            digitalWrite(MorseLEDPin, HIGH);
            tone(MorseTonePin, MorseToneFreq);
            delay(CWdot);
            digitalWrite(MorseLEDPin, LOW);
            noTone(MorseTonePin);
            delay(CWdot);
          }
         
          else if (currentcode.substring(icp,icp+1).equalsIgnoreCase("-")) {
            digitalWrite(MorseLEDPin, HIGH);
            tone(MorseTonePin, MorseToneFreq);
            delay(CWdash);
            digitalWrite(MorseLEDPin, LOW);
            noTone(MorseTonePin);
            delay(CWdot);
          }
          else if (currentcode.substring(icp,icp+1).equalsIgnoreCase(" ")) {
            delay(CWdot*3);
          };
          }
        }
        ichar=ichar+2;
     }
      delay(CWdot*3);
      }    
    delay(CWdot*7);
  }

void loop() {
  digitalWrite(pinPTT, LOW);
  TransmitMorse(strBeacondID, MorseWPM, MorseToneFreq);
  digitalWrite(pinPTT, HIGH);
  delay(300000); // Tiempo en milisegundos (1000 milisegundos = 1 Segundo) cada cuanto va a emitir el mensaje la radiobaliza
}


Código fuente para usar con handy Yaesu FT-23r:

// Radiobaliza


int pinPTT = 4; //Pin arduino para activar PTT
int MorseLEDPin = 13; //Pin arduino led
int MorseTonoPin = 5; //Pin arduino tono
int MorseTonoFrec = 1000; //Pin arduino frecuencia en HZ del tono
int MorsePPM = 16; //Pin arduino cantidad de palabras por minuto PPM


#define BalizaID "      CQ CQ CQ BALIZA  " //Mensaje que emite la baliza


char* AlfabetoMorse[] = {
"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","----.",
"/","-..-.",
"*","-.-.-",
".",".-.-.",
"&","...-.-",
" "," "
};

// ----------------------------------------------------------------------------------------


void setup() {
  Serial.begin(9600);
  pinMode(pinPTT, OUTPUT);
  pinMode(MorseLEDPin, OUTPUT);
  pinMode(MorseTonoPin, OUTPUT);
  Serial.println(" Morse "); Serial.println();
}

  void TransmitMorse(String CadenaMorse, int MorsePPM,int MorseTonoFrec) {

  Serial.print("Mensaje: ");
  Serial.println(CadenaMorse);

  int CWpuntito = 1200 / MorsePPM;
  int CWrayita = (1200 / MorsePPM)*3;
  int istr;
  for (istr=0; istr < CadenaMorse.length(); istr++) {
    String currentchar = CadenaMorse.substring(istr,istr+1);
    int ichar = 0;
    while(ichar < sizeof(AlfabetoMorse)) {
      String currentletter = AlfabetoMorse[ichar];  
      String currentcode = AlfabetoMorse[ichar+1];  
      if (currentletter.equalsIgnoreCase(currentchar)) {
        int icp=0;
        for (icp=0;icp < currentcode.length(); icp++) {
         
          if (currentcode.substring(icp,icp+1).equalsIgnoreCase(".")) {
            digitalWrite(MorseLEDPin, HIGH);
            tone(MorseTonoPin, MorseTonoFrec);
            delay(CWpuntito);
            digitalWrite(MorseLEDPin, LOW);
            noTone(MorseTonoPin);
            delay(CWpuntito);
          }
         
          else if (currentcode.substring(icp,icp+1).equalsIgnoreCase("-")) {
            digitalWrite(MorseLEDPin, HIGH);
            tone(MorseTonoPin, MorseTonoFrec);
            delay(CWrayita);
            digitalWrite(MorseLEDPin, LOW);
            noTone(MorseTonoPin);
            delay(CWpuntito);
          }
          else if (currentcode.substring(icp,icp+1).equalsIgnoreCase(" ")) {
            delay(CWpuntito*3);
          };
          }
        }
        ichar=ichar+2;
     }
      delay(CWpuntito*3);
      }    
    delay(CWpuntito*7);
  }

void loop() {
  digitalWrite(pinPTT, HIGH);
  TransmitMorse(BalizaID, MorsePPM, MorseTonoFrec);
  digitalWrite(pinPTT, LOW);
  delay(12000); //Tiempo de espera de baliza para volver a transmitir en milisegundos
}


  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS