-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Fototransistormatrix

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    12.02.2006
    Beiträge
    39

    Fototransistormatrix

    Anzeige

    Hallo Leut,
    ich bin grad am Fototransistormatrix dran. also es ist so, wenn ein fototransistor kein licht bekommt muss ein pin 1 bekommen, sobald licht aber
    da ist, soll der pin 0 bekommen. ich benutze atmega 168 und das ganze will ich mit port.c, kann mir jemand helfen wie so ein programm im Bascom ungefähr ausschauen könnte?
    danke im voraus

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Hääää, was willst du?!?!?!?!?!?
    Du musst schon selbst wissen, was dein Programm machen soll....
    Was für Signale am PortC anliegen hängt von der externen Beschaltung ab und nicht von deinem Programm (solange du die PortPins nicht als Ausgang schaltest)
    Am besten schaust du dir noch ein paar Tutorials an um später Fragen zu stellen, die etwas mehr Sinn ergeben.

    Gruß,
    SIGINT

    P.S.: OK... wenn du die internen Pullups aktivierst, dann kann sich auch das Signal am Eingang ändern.... nur zur vollständigkeit.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    12.02.2006
    Beiträge
    164
    >>Fototransistormatrix

    würd mich ja auch interessieren was das werden soll ...

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    @veit:
    Vielleicht will er eine Webcam aus einer Camera Obscura basteln

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    12.02.2006
    Beiträge
    39
    jo weiß schon dass ich in der sache voll laie bin. aber trotzdem ich versuch
    noch ein mal mein problem zu erklären. unten ist die schaltung dargestellt.
    ich will dass jenachdem ob fototransistor grad leitet oder nicht, entsprechend PIN-PC3 High oder Low beommt. dafür benutze ich folgendes quellcode in Bascom
    Config Portc.3 = Input
    Portc.3 = 1
    Do
    If Pinc.3 = 1 Then
    Print "hi"
    Else
    Print "ciao"
    End If
    Loop
    End
    aber ich bekomme nur "Hi" als meldung. kann mir vielleicht jemand meinen fehler zeigen??
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken unbenannt_164.jpg  

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.09.2005
    Beiträge
    276
    Schon mal mit Licht ausschalten probiert ob der Lo wird ?
    Oder was sagt ein Multimeter ?

    Gento

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    02.11.2005
    Ort
    Bayern
    Alter
    48
    Beiträge
    310
    Ja,
    erst eiinmal die Pegel messen, um zu überprüfen ob die Schaltung arbeitet. Dann kannst den Fototransistor von V+ nehmen, um das Programm zu testen. Da sollten ja am Eingang GND anliegen... "ciao"
    Poste beim nächste mal den Code so:
    Code:
    Config Pinc.3 = Input      'nicht Config Portc.3 sondern Pinc.3
    Portc.3 = 1                    'eventuell den PullUp noch ausschalten
    Do 
    If Pinc.3 = 1 Then 
    Print "hi" 
    Else 
    Print "ciao" 
    End If 
    Loop 
    End
    Eventuell muß du deine Schaltung noch ändern.
    Der PullUp hat ca.10k. Dein Widerstand hat 20k. Bedeutet, du hast bei eingeschalteten PullUp und Low-Pegel(Dunkel) ca. 3,3V am Eingang anliegen. Das kann schon Hi bedeuten...
    Besser wäre es, wenn du den Widerstand und FotoTransistor tauscht.
    Dann mußt du zwar deine abfrage umdrehen, aber du hast saubere Pegel.
    ### Silvio ###

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Laut Datenblatt erkennt der ATmega8 ab 0,6*Vcc den Eingangspegel als HIGH. Bei 5V sind das 3V... also ist bei aktiviertem Pullup der Pin immer HIGH. Das Programm funktioniert also so wie es soll.
    Ich würde den internen Pullup ausschalten und den externen Widerstand mit dem Fototransistor trauschen, wie robo_wolf auch gesagt hat. Aber ich bin der Meinung, daß du das Programm dann nicht ändern musst:
    Wenn kein Licht auf den Transistor scheint dann leitet dieser auch nicht ->
    Am Pullup (nicht der interne) fällt deshalb keine Spannung ab und der Pin liegt auf HIGH. Wenn der Transistor beleuchtet wird fängt dieser an zu leiten und zieht den Portpin auf GND.

    Gruß,
    SIGINT

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    02.11.2005
    Ort
    Bayern
    Alter
    48
    Beiträge
    310
    wenn das Programm bleibt, wird die Printausgabe bei Licht an "ciao" sein.
    Der durchgesteuerte Fototransistor zieht das Potential auf GND, in dem Fall ist Pinc.3 = 0.
    Wenn ich keha richtig verstanden habe, sollte die Printausgabe bei beleuchteten Transistor "hi" sein.

    Mit dem PullUp hat SIGINT natürlich Recht.
    Den kannst du auch ausschalten, oder die Zeile ganz weg lassen, da nach dem Tausch der Teile durch den externen 20k schon eine PullUpbeschaltung besteht.
    Wäre doppelt gemoppelt.
    ### Silvio ###

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    12.02.2006
    Beiträge
    39
    danke, ich werde es demnächst mal ausprobieren. ich hab dann noch ne frage woran unterscheiden sich beide befehle Config Portc.3 von Config Pinc.3??
    danke

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •