Forum: Mikrocontroller und Digitale Elektronik Bascom - Anwesenheitskontrolle mit iButtons


von Eshco (Gast)


Lesenswert?

Hallo liebes Forum,

ich versuche derzeit mit Hilfe von DS1990A iButtons und einem ATMega32 
Controller eine Art Anwesenheitskontrolle zu realisieren.
Ich habe hier zwei iButtons und zwei Reader. Meine Vorstellungen sind 
eigentlich nicht allzu Anspruchsvoll. Ich möchte lediglich, dass die 
iButtons jeweils genau einen Port auf High/Low setzen, je nach dem, ob 
der jeweilige iButton verbunden ist, oder nicht. Sprich ein iButton mit 
einer individuellen Seriennummer schaltet genau einen Port.

Ich habe mich in die Programmierung der iButtons eingelesen, aber leider 
bin ich blutiger Anfänger. Geschrieben habe ich bislang folgendes:



$crystal = 16000000
$regfile = "m32def.dat"

Config 1wire = Portb.0
Config Portc = Output

Dim Rom_data(8) As Byte


Do

   Rom_data(1) = 1wsearchfirst()

   If Err = 1 Then

      Portc = 0

   End If

   If Err = 0 Then

      If Rom_data(8) = &H2F Then
      Portc.1 = 1
      Elseif Rom_data(8) = &H69 Then
      Portc.7 = 1
      End If

   End If

Loop


So funktioniert es natürlich nur mit einem Button zur Zeit, leider habe 
ich aber ja zwei iButtons. Und es könnten ja auch beide zur gleichen 
Zeit anwesend sein.
Daran scheitere ich leider zur Zeit.

Es wäre schön, wenn mir jemand eine Lösung vor mein Problem aufzeigen 
könnte. Schonmal danke im voraus!

von Eshco (Gast)


Lesenswert?

Habe mein Problem gelöst!
Ich habe die beiden Seriennummern der iButtons in vorher in ein Array 
geschrieben und prüfe dann mit dem 1wverify-Befehl in einer Schleife ab, 
ob der jeweilige iButton vorhanden ist, oder nicht.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Eshco schrieb:
> Es wäre schön, wenn mir jemand eine Lösung vor mein Problem aufzeigen
> könnte. Schonmal danke im voraus!

 Also, wenn es "1wSearchFirst()" gibt, wird es wahrscheinlich auch
 "1wSearchNext()" geben, oder ?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.