- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 22

Thema: Brauche dringend Hilfe!! Multiplexer

  1. #11
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.02.2005
    Alter
    35
    Beiträge
    470
    Anzeige

    Praxistest und DIY Projekte
    Also nochmal von Vorn:
    Mein Projekt
    Mit einem puls an einem pin soll der timer1 starten.
    mit einem weiteren soll der timer stoppen.
    Ich lese den timer aus und erhalte dadurch eine Zahl ( 6 stellen ).
    diese zahl möchte ich mit einer Multiplex-7 Segmentanzeige anzeigen.
    Noch fragen?
    Gut.
    also das Problem:
    Das mit dem timer klappt einwandfrei aber wie zeige ich die Variable mit
    einer Multiplex an, davon hab ich keine Peilung, helft mir bitte.
    Danke

  2. #12
    Erfahrener Benutzer Roboter Genie Avatar von darwin.nuernberg
    Registriert seit
    08.08.2004
    Ort
    A, A
    Alter
    59
    Beiträge
    1.305
    Blog-Einträge
    1
    Ich schau mal was isch machen kann.
    Habe etwas Geduld.
    Gruss
    Darwin (meine Projekte sind auf meiner Pinnwand zu finden)

  3. #13
    Erfahrener Benutzer Roboter Genie Avatar von darwin.nuernberg
    Registriert seit
    08.08.2004
    Ort
    A, A
    Alter
    59
    Beiträge
    1.305
    Blog-Einträge
    1
    Ich hoffe das Dir das so passt.
    Ein bisschen darfst Du auch noch machen


    Code:
    ' Bascom
    ' 7-Segment Multiplexer
    ' by darwin.nuernberg (roboternetz.de)
    ' Nicht vergessen entweder die Compiler Direktiven oder den Chip und Oszillatorfequenz einstellen.
    
    Const Dekaden = 4                                           ' Anzahl der Anzeigen (dekaden)
    Const Pulsdauer = 10000                                     ' Dauer eines Impulses
    
    
    Declare Function Segmentdecoder(byval C As String) As Byte
    Declare Sub Selector(byval Wert As Integer)
    
    
    Dim Segment(dekaden) As Byte                                ' Array für die Fertig berecheten Segmente
    Dim Demo As Byte
    
    ' Hauptprogramm
    ' -----------------------------------------------------------------------------
    
    Call Selector(1234)                                         ' Berechnet die Segmente der einzelnen Dekaden
                                                                 ' und legt diese im Array Segment() ab.
    
    
    ' Die folgenden Zeilen Zeigen Dir was rauskommt und können gelöscht werden.
    
    For Demo = 1 To Dekaden
       Print Bin(segment(demo))
    Next Demo
    
    
    ' Ein bisschen darfst Du auch naoch was tun...
    ' Jetzt muß noch die Ausgabe erfolgen.
    ' Frage das Array ab, weise dem Port den Wert Zu
    ' z.B. Portb = segment(1)
    '      pulseout portd, 1 pulsdauer
    '      Portb = segment(2)
    '      pulseout portd, 2 pulsdauer
    ' usw.
    
    
    
    End                                                         'end program
    
    ' -----------------------------------------------------------------------------
    ' -----------------------------------------------------------------------------
    
    
    
    
    Sub Selector(byval Wert As Integer)
       Dim S As String * Dekaden                                ' Stringvariable Länge = Anzeige
       Dim L As Byte                                            ' Variable für Länge des Strings
       Dim X As Byte                                            ' Zählervariable
       Dim Pos As Byte                                          ' Variable für MID Funktion
       Dim Z As String * 1
       Dim Segcode As Byte
    
    
    
        S = Str(wert)                                           ' Wandle Wert in String
        L = Len(s)                                              ' ermittle Länge des Strings
        If L > Dekaden Then L = Dekaden                         ' Verhindern dass mehr Anzeigen berechent werden
                                                                ' als definiert und vorhanden sind.
    
    
        For X = 1 To L
          Pos = L - X
          Pos = Pos + 1                                            ' Beginne mit den Einer Stellen (rechts)
          Z = Mid(s , Pos , 1)                                     ' Picke eine einzelnes Zeichen heraus
    
          Segcode = Segmentdecoder(z)                              ' Ermittle den Portcode für die Segmente
          Segment(x) = Segmentdecoder(z)
        Next X
    
    End Sub
    
    ' -----------------------------------------------------------------------------
    
    Function Segmentdecoder(byval C As String) As Byte
       Select Case C
          Case "0" : Segmentdecoder = &B00111111                ' Bit 0 = Segment A
          Case "1" : Segmentdecoder = &B00000110                ' Bit 1 = Segment B
          Case "2" : Segmentdecoder = &B01011011                ' Bit 2 = Segment C
          Case "3" : Segmentdecoder = &B01001111                ' Bit 3 = Segment D
          Case "4" : Segmentdecoder = &B01100110                ' Bit 4 = Segment E
          Case "5" : Segmentdecoder = &B01101101                ' Bit 5 = Segment F
          Case "6" : Segmentdecoder = &B01111101                ' Bit 6 = Segment G
          Case "7" : Segmentdecoder = &B00000111                ' Bit 7 = Segment dp
          Case "8" : Segmentdecoder = &B01111111
          Case "9" : Segmentdecoder = &B01101111
          Case "." : Segmentdecoder = &B10000000
          Case Else : Segmentdecoder = &B000000000              ' unerwartes Zeichen keine Ausgabe
       End Select
    
                                                 'Bit   Segmente
    
                                                 '   || G | F | E | D | C | B | A |
                                                 ' --||---+---+---+---+---+---+---|
                                                 ' 0 || 0 | 1 | 1 | 1 | 1 | 1 | 1 |
                                                 ' 1 || 0 | 0 | 0 | 0 | 1 | 1 | 0 |
                                                 ' 2 || 1 | 0 | 1 | 1 | 0 | 1 | 1 |
                                                 ' 3 || 1 | 0 | 0 | 1 | 1 | 1 | 1 |
                                                 ' 4 || 1 | 1 | 0 | 0 | 1 | 1 | 0 |
                                                 ' 5 || 1 | 1 | 0 | 1 | 1 | 0 | 1 |
                                                 ' 6 || 1 | 1 | 1 | 1 | 1 | 0 | 1 |
                                                 ' 7 || 0 | 0 | 0 | 0 | 1 | 1 | 1 |
                                                 ' 8 || 0 | 1 | 1 | 1 | 1 | 1 | 1 |
                                                 ' 9 || 1 | 1 | 0 | 1 | 1 | 1 | 1 |
    End Function
    ' -----------------------------------------------------------------------------
    
    
    End
    Gruss
    Darwin (meine Projekte sind auf meiner Pinnwand zu finden)

  4. #14
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.02.2005
    Alter
    35
    Beiträge
    470

    Dank für diese Guten QC, danke für diesen tollen Tipp

    Das war das Was mir gefehlt hatte:

    Code:
    S = Str(wert)                                           ' Wandle Wert in String
        L = Len(s)                                              ' ermittle Länge des Strings
        If L > Dekaden Then L = Dekaden                         ' Verhindern dass mehr Anzeigen berechent werden
                                                                ' als definiert und vorhanden sind.
    
    
        For X = 1 To L
          Pos = L - X
          Pos = Pos + 1                                         ' Beginne mit den Einer Stellen (rechts)
          Z = Mid(s , Pos , 1)
    Vielen Dank [-o<
    Grüßle

  5. #15
    Erfahrener Benutzer Roboter Genie Avatar von darwin.nuernberg
    Registriert seit
    08.08.2004
    Ort
    A, A
    Alter
    59
    Beiträge
    1.305
    Blog-Einträge
    1
    Schön, dass ich Dir helfen konnte,

    ABER


    Mit Deiner Fragestellung hättest Du noch lange auf die richtige Antwort warten dürfen.

    Das meine Lösung gerade getroffen hat dürfte wohl eher ein Glückstreffer sein.


    Überleg mal anhand dieses Beispiels:

    Kommt ein Mann zum Arzt.

    Mann: "Mir tut was weh."
    Arzt: "Was tut ihnen denn weh?"
    Mann: "Sind Sie der Arzt oder ich?!"
    Gruss
    Darwin (meine Projekte sind auf meiner Pinnwand zu finden)

  6. #16
    ELO_noob
    Gast

    HELP

    hi an alle,
    ich hab da 'n problem, und zwar soll ich so'n elo-projekt fertig stellen, und hab NULL ahnung von elektronik!!! bitte kann mir jmd helfen...

  7. #17
    ELO-noob
    Gast

    bitte um hilfe

    und darum geht es...

    durch eine 2 oder 3stellige 7segm.Anzeige auf einer platine wird die vergangene Zeit angezeigt, welche seit dem start eines
    programms (z.B: C++) vergangen ist. Das Startsignal erfolgt über die Druckerschnittstelle.
    also eine arbeitszeiterfassung.

    BITTE um hilfe, wie sieht der Schaltplan aus und welche bauteile brauche ich alle dafür ?? muss nämlich bald bestellen und löten...

    thx thx thx

  8. #18
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.02.2005
    Alter
    35
    Beiträge
    470
    hmm die sache ist wojhl etwas schwieriger als Eltrik-Noop.
    Also das ist der schaltplan meines Frequenz zählers, den müsste man etwas abändern:

    http://teslanikola.te.funpic.de/Bild...quenzcount.png

    Du musst nur deinen Druckerport mit PinD.5 Verbinden und das ganze was am PinD.5 sonst hängt weglassen.

    Tut mir leid aber fürs Programmen von µC habe ich leider keine Zeit sonst hätte ich dir gerne geholfen.

  9. #19
    Gast
    danke für den schaltplan teslanikola,

    hmm, dieser plan ist ja mit nem microcontroller realisiert worden..
    so wirklich weiter bringt mir das nicht, sry.
    der schaltplan sollte zähler,timer und optokoppler(3x) beinhalten, hatte ich vergessen zu sagen, mein fehler.
    ich hab mal ne skizze in paint angefertigt, wie ich mir das vorgestellt hatte...würd sie dir (teslanikola) schicken wenn ich email hätte..

    meine mail: Christopher.85@hotmail.de

    wäre echt nett wenn du oder irgendjmd. mir so einen schaltplan schicken würde (kann auch ne skizze sein, hauptsache man erkennt die einzellnen leitungen+bauteile)
    und/oder mir bitte sagen könnte welche hardware-teile ich alles bestellen muss (ich denke mal zumindest: 3x optokoppler,1x centronic,
    3x 7segmentanzeige,21+3x widerstäne,3xkondensatoren...........???...

  10. #20
    Gast
    rufe hiermit noch mal um dringende hilfe auf!!!!

    PLEASE HELP ELO_NOOB (or GAST)

    lehrer will am FR schon erste ansätze sehen....

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad