Lampyridae: Unterschied zwischen den Versionen

aus Metalab, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: ==WTF== [http://de.wikipedia.org/wiki/Lampyridae Leuchtkäfer] auf der Suche nach Artgenossen. ===Ziel=== Artgenossen durch blinkendes Licht anlocken. Ich suche Leute d...)
 
(WTF)
Zeile 1: Zeile 1:
 
==WTF==
 
==WTF==
 
[http://de.wikipedia.org/wiki/Lampyridae Leuchtkäfer] auf der Suche nach Artgenossen.
 
[http://de.wikipedia.org/wiki/Lampyridae Leuchtkäfer] auf der Suche nach Artgenossen.
 +
Dazu sende ich in der Nacht Licht-Morsesignale aus meinem Fenster.
 
===Ziel===
 
===Ziel===
 
Artgenossen durch blinkendes Licht anlocken. Ich suche Leute die in meiner Umgebung [http://www.funkfeuer.at/ Funkfeuer] Knoten betreiben wollen.
 
Artgenossen durch blinkendes Licht anlocken. Ich suche Leute die in meiner Umgebung [http://www.funkfeuer.at/ Funkfeuer] Knoten betreiben wollen.
 +
 
==Material==
 
==Material==
 
*Microcontroller vom [[Microcontroller_Workshop]]  
 
*Microcontroller vom [[Microcontroller_Workshop]]  

Version vom 14. Januar 2007, 18:41 Uhr

WTF

Leuchtkäfer auf der Suche nach Artgenossen. Dazu sende ich in der Nacht Licht-Morsesignale aus meinem Fenster.

Ziel

Artgenossen durch blinkendes Licht anlocken. Ich suche Leute die in meiner Umgebung Funkfeuer Knoten betreiben wollen.

Material

Schaltbild

Lampyridae-schematic.png

Programm

// kompiliert mit sdcc wie unter Microcontroller_How_To beschrieben

#include"pic18fregs.h"
#define RA3       PORTAbits.RA3

long const ditl=1000;
long const dahl=3000;        //ditl*3
long const spacel=6000;      //ditl*7 (ditl*6 weil pause nach signal ist dit)


void delay_ms(long ms)
{
  long i;

  while (ms--)
    for (i=0; i < 330; i++)
      ;
}

void dit(void)
{
  RA3 = 1;
  delay_ms(ditl);
  RA3 = 0;
  delay_ms(ditl);
}

void dah(void)
{
  RA3 = 1;
  delay_ms(dahl);
  RA3 = 0;
  delay_ms(ditl);
}

void bend(void)
{
  //RA3 = 0;
  delay_ms(dahl);
}

void space(void)
{
  //RA3 = 0;
  delay_ms(spacel);
}

void main(void) {
  int i;
  TRISA = 0;

  // 0 = 0V, 1 = 5V
  
  for (;;)
    {
      // www.funkfeuer.at
      // .--/.--/.--/.-.-.-/..-./..-/-./-.-/..-././..-/./.-./.-.-.-/.-/-
      
      dit(); dah(); dah(); bend();
      dit(); dah(); dah(); bend();
      dit(); dah(); dah(); space();
      dit(); dah(); dit(); dah(); dit(); dah(); space();
      dit(); dit(); dah(); dit(); bend();
      dit(); dit(); dah(); bend();
      dah(); dit(); bend();
      dah(); dit(); dah(); bend();
      dit(); dit(); dah(); dit(); bend();
      dit(); bend();
      dit(); dit(); dah(); bend();
      dit(); bend();
      dit(); dah(); dit(); space();
      dit(); dah(); dit(); dah(); dit(); dah(); space();
      dit(); dah(); bend();
      dah(); space(); space();
    }

}