• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

Elektronischer Koordinaten-Anzeiger auf Atmel-Basis

Windi

Geoguru
Ich habe das Reaktivlicht etwas modifiziert.
Wenn man den Sensor anleuchtet blinkt nicht die LED zurück sondern die Koordinaten der nächsten Stage werden Ziffer für Ziffer mit einer 7-Segment-Anzeige dargestellt.
Eingesetzt wurde ein Atmel 2313V weil dieser mehr Ports besitzt. Insgesamt werden 9 Ports benötigt, 7 für die Anzeige und 2 für die LED.
Eingebaut habe ich das ganze in einen Anlegefühler von einer Heizungsanlage. Mit Heißkleber verklebt sollte es eigentlich wasserdicht sein. Befestigt habe ich es mit einem metallenen Spannband hinter einem Verkehrsschild.

Das ganze kam heute mal probeweise für unseren Stammtisch zum Einsatz. Leider kann man den 2313V intern nur bis auf 4 MHz runtertakten. Sinnvoll wäre hier der Einsatz eines Quarzes im kHz-Bereich um eine möglichst geringe Ruhestromaufnahme zu haben.

So sieht das fertige Teil aus.


Innenleben. Die beiden schwarzen Drähte sind das Meßelemt des Temperaturfühlers. Diese haben natürlich hier keine Funktion.


Dank Fädeltechnik schnell aufgebaut.
 

moenk

Administrator
Teammitglied
Ich sehe da die beiden AAA-Zellen: War das nicht so dass AA-Zellen doch eine deutlich langlebigere Wahl sind?
 

Sir Vivor

Geocacher
Moin,

@Windi:
Tolle Idee!
yeap.gif


Windi schrieb:
... Leider kann man den 2313V intern nur bis auf 4 MHz runtertakten. Sinnvoll wäre hier der Einsatz eines Quarzes im kHz-Bereich um eine möglichst geringe Ruhestromaufnahme zu haben. ...
Das ist leider falsch! Auch der ATtiny2313 besitzt einen internen, zuschaltbaren 128 kHz "Wachhund Oszillator". ;-) Damit kannst Du die Stromaufnahme genauso wie beim ATtiny13 stark reduzieren.

By the way: Horizontales Scrolling nervt - es benutzt nicht jeder einen 21" Monitor...! :shock: 8) Abhilfe schafft Bildverkleinerung, verlinkte Thumbnails oder http://www.imageshack.us ;-)

Es grüßt...

...Sir Vivor
 
OP
Windi

Windi

Geoguru
orotl schrieb:
moenk schrieb:
Ich sehe da die beiden AAA-Zellen: War das nicht so dass AA-Zellen doch eine deutlich langlebigere Wahl sind?
Das sicher, aber ich schätze die wurden wegen der Raumnot in der Dose geschrumpft ;-)
Genau so ist es. Ist auch nur qad (quick and dirty) aufgebaut weil ich die Schaltung mal als kleinen Gag für unseren Stammtisch eingesetzt habe.
 

moench

Geocacher
Ist auch nur qad (quick and dirty) aufgebaut weil ich die Schaltung mal als kleinen Gag für unseren Stammtisch eingesetzt habe.

Mit Erfolg übrigens. Mir ist keiner bekannt, der am Stammtisch war und nicht von diesem wirklich netten Gimmick angenehm überrascht worden war. Feine Sache!
 

fekon

Geocacher
Nur so als Idee: vielleicht kannst du ein Segmet der Anzeige als Sensor-LED verwenden (könnte wegen gemeinsamer Kathode/Anode schwierig werden).
 
OP
Windi

Windi

Geoguru
fekon schrieb:
Nur so als Idee: vielleicht kannst du ein Segmet der Anzeige als Sensor-LED verwenden (könnte wegen gemeinsamer Kathode/Anode schwierig werden).
Werd ich mal ausprobieren. Ich glaub aber nicht dass es mit einer diffusen LED klappt.
 

aninu

Geocacher
Echt geniale Sache
Hat jemand eine Anleitung für den Koordinatenanzeiger.
Würde ihn auch gerne nachbauen, nur leider hält sich mein
elektronisches Wissen sehr in Grenzen.
 
OP
Windi

Windi

Geoguru
aninu schrieb:
Echt geniale Sache
Hat jemand eine Anleitung für den Koordinatenanzeiger.
Würde ihn auch gerne nachbauen, nur leider hält sich mein
elektronisches Wissen sehr in Grenzen.
Kannst Du löten?
Soll ich das auch als Bausatz anbieten?
 

aninu

Geocacher
Das mit dem Löten ist nicht das Problem.
Baue gerade das reaktive Nachtlicht nach.
Kaufen ist nicht mein ding. Sorry.
Bräuchte einen Schaltplan, Stückliste, Sourcecode und eine Anleitung,
wie ich den IC programmieren kann.
Ich hoffe ich habe nichts vergessen.
Programmierst du den IC mit Bascom?

Vielen Dank
[email protected]
 
OP
Windi

Windi

Geoguru
Es ist mir eh lieber wenn sich jemand die Schaltung selbst zusammenbaut, ich muß ja nebenbei auch noch was arbeiten.

Der Koordinaten-Anzeiger funtioniert mit dem Tiny 2313V da dieser mehr Pins hat und ist ebenfalls mit Bascom programmiert.

Stückliste:
1 Stück Tiny 2313V
1 LED (als Lichtsensor)
1 Widerstand 56 Ohm (für LED)
1 Sieben-Segment-Anzeige
1 Widerstand 56 Ohm (für 7-Segment-Anzeige)

Wenn man nur einen gemeinsamen Widerstand für die 7-Segment-Anzeige nimmt leuchtet sie unterschiedlich hell. Je mehr Segmente leuchten um so dunkler wird das einzelne Segment. Das stört aber (zumindest mich) nicht für diese Anwendung. Für die Luxus-Version kann man jedem Segment einen einzelnen Widerstand spendieren.

Einen Schaltplan zeichne ich demnächst noch.

Hier ist der Code dazu:

Code:
'============================================================
'
' ******************************************
' ***                                    ***
' ***  Koordinatenanzeige mit 7-Segment  ***
' ***                                    ***
' ******************************************
'
' µC: ATtiny2313
' +Ub:  V
' I:  µA
'
'============================================================

$regfile = "ATtiny2313.DAT"
$crystal = 128000                                           'Frequenz des Oszillators

Config Portb = &B00000011                                   'Pinb.1 und .2 auf 'Ausgang', Rest auf 'Eingang' schalten
Portb = &B11111100
                                          'Pullups zuschalten, außer für Pinb.1 und .2

Config Portd = Output


Rem Stop Adc                                                    'A/D-Wandler abschalten, um Strom zu sparen
Stop Ac                                                     'Analog-Komparator abschalten, um Strom zu sparen

Dim Text1 As String * 40
Dim A As Byte
Dim B As Byte
Dim Buchstabe As String * 1
Dim C As Byte
Dim Led_ladezustand As Bit
Dim Hell As Bit
Dim Hell_2 As Byte

Text1 = "N 48 11 958  E 11 33 271   "                       'Dieser Text wird ausgegeben


Do

 Gosub Led_abfrage
    If Led_ladezustand = 0 Then Hell = 1                    'Bei Licht Merker setzen
    If Hell = 1 And B < 255 Then B = B + 1                  'Wenn Merker gesetzt wurde, Zähler für Lichtdauer erhöhen (bis max. 255)
    If Led_ladezustand = 1 And Hell = 1 And B < 30 Then     'Wenn es wieder dunkel ist und der Lichtimpuls nur kurz war, dann blinken
       Hell_2 = 0
       For C = 0 To 5
         Gosub Led_abfrage
         If Led_ladezustand = 0 Then Hell_2 = Hell_2 + 1
       Next B
       If Hell_2 < 1 Then Gosub Ausgeben
       Hell = 0
       B = 0
    End If


    If Led_ladezustand = 1 Then                             'Bei Dunkelheit Merker und Zähler für Lichtdauer löschen
        Hell = 0
        B = 0
    End If

Loop


Ausgeben:
For A = 1 To Len(text1)
Buchstabe = Mid(text1 , A , 1)
B = Asc(buchstabe) - $30
C = Lookup(b , Daten)
If Buchstabe = " " Then C = 0
Portd = C
Waitms 300
Portd = 0
Waitms 300
Next
Return



Led_abfrage:
    Portb.1 = 1                                             'Portb.1 auf +Ub schalten, um die LED zu 'laden'
    Waitus 1                                                'Ladezeit 1 µs, kann ggf. noch verkleinert werden
    Config Portb.1 = Input                                  'Portb.1 nun zwecks Abfrage der LED-Ladung auf 'Eingang' schalten
    Portb.1 = 0                                             'Pullup abschalten, sonst geht's nicht!
    Waitms 100                                              'Entladezeit 100 ms - je kleiner, je unempfindlicher
    Led_ladezustand = Pinb.1                                'Ladezustand einlesen: '1' -> dunkel, '0' -> hell
    Config Portb.1 = Output                                 'Portb.1 wieder auf Ausgang schalten
Return

End


Daten:
Data 126 , 72 , 61 , 109 , 75 , 103 , 119 , 76 , 127 , 111 , 0 , 0 , 0 , 0 , 0 , 0 , 0
Data 95 , 115 , 54 , 121 , 55 , 23 , 111 , 83 , 18 , 0 , 0 , 50 , 91 , 81 , 113 , 0 , 0 , 17 , 0 , 19 , 122
 

aninu

Geocacher
@Windi

Ich nerve schon wieder.
Hattest du schon Zeit für den schaltplan?

Für das Reaktive Licht fehlt mir leider noch der 100nF.
Ich hoffe das WE wird erfolgreich.
 
OP
Windi

Windi

Geoguru
aninu schrieb:
Hattest du schon Zeit für den schaltplan?

Für das Reaktive Licht fehlt mir leider noch der 100nF.

Schaltplan hab ich noch nicht gemacht. Bin momentan etwas im Streß.

Auf den 100nF Kondensator kannst Du getrost verzichten. Geht auch ohne ihn problemlos.
 

Lamima

Geocacher
Ich muss mal die Schaufel hier ansetzen... :eek:ps:
Hat das Teil mitlerweile noch mal jemand gebaut bzw einen Schaltplan gemacht?
 

stonewood

Geowizard
Daneben gibts den passenden Code, ansonsten kann man sicherlich den Code von windi daran anpassen. Größter Unterschied ist daß ein Tiny24 anstatt Tiny2313 verwendet wird. Der hat ein paar Pins weniger, kann dafür aber mit einem A/D-Wandler aufwarten.
 

Lamima

Geocacher
Ah prima...das einzige was mich an der Schaltung noch iritiert ist die ISP-Schnittstelle.
Da es ja offenbar mehrere Belegungsmöglichkeiten dafür gibt die alle untereinander nicht so gaaanz kompatibel sind würde ich gerne noch wissen wie die in diesem fall belegt ist...

Gruß

Marco
 
Oben