- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 10 von 10

Thema: Hilfe bei 7Segmentanzeige

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    20.06.2010
    Beiträge
    22

    Hilfe bei 7Segmentanzeige

    Anzeige

    E-Bike
    Hallo ,
    ich will mir eine Positionsanzeige basteln . Schaltplan und Platine habe ich .
    Einen Code für die Anzeige mit einem LCD-Display habe ich auch gefunden .
    Das LCD-Display lässt sich nur schlecht lesen , deshalb will ich es mal mit
    einer 7-Segmentanzeige probieren . Gibt es eine Anleitung , Bascombefehl
    oder Routine z. B. :7seg " Ausgabewert " ?
    Ich habe im www gesucht aber leider die entsprechenden Beiträge nicht kapiert .

    MfG

    Hans

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Ist das mehr als ein 7-Segment zur Anzeige einer einzigen Ziffer? Dann wird da irgendein Controller oben sein, der auf eine spezielle Art angesprochen werden will, hmm? Wie wird das Ding angeschlossen?

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    20.06.2010
    Beiträge
    22
    Hallo ,
    es geht um 4 Siebensegmente , die Hardware habe ich kapiert ? ? ?
    Es geht um die Software .

    MfG

    Hans

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    33
    Beiträge
    1.192
    Hallo,
    4 Siebensegmentanzeigen werden wahrscheinlich über Multiplexing angesteuert, da man sonst zu viele Pins braucht.
    Zeige doch bitte deinen Schaltplan oder zumindest den Ausschnitt mit den Anzeigen, dann haben wir eine Gesprächsgrundlage.
    Grüße, Bernhard

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Hallo Hans,
    es gibt verschiedene Siebensegmentanzeigen und Anschlußmöglichkeiten: http://www.rn-wissen.de/index.php/Siebensegmentanzeige

    Danach richtet sich die Software. Im Allgemeinen schaltet ein Bit ein Segment in einer Anzeige. Man legt also mehrere Bits gleichzeitig so an eine Anzeige, daß die aufleuchtenden Segmente ein sinnvolles Zeichen ergeben. Diese Bits für ein Zeichen werden oft auch Bitpattern genannt. Also ein Muster von 0 und 1, die eben die Segmente für das gewünschte Zeichen aufleuchten lassen.

    Um näher auf Deine Frage eingehen zu können, braucht man also den genauen Anzeigetyp und Deine Schaltung bzw ein Hinweis, bei welcher SW Du was nicht verstehst. Bei Bascom kenne ich gerade nichts spezielles für 7-Segment . Ist aber nicht so schwer umzusetzen und das Pattern kann man sich auch einfach selbst erstellen.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    20.06.2010
    Beiträge
    22
    Hallo ,
    das größte Problem ist für mich der Zahlenwert in einen String umzuwandeln
    und die 4 Zeichen nacheinenander für die Ausgabe zu selektieren .

    MfG

    Hans

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Das hatten wir neulich schonmal.

    Aber die einzelnen Stellen bekommst auch mit %10, /10 raus. Bei Integern liefert %10 die jeweils kleinste Stelle und /10 schneidet sie weg.

  8. #8
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Hey,

    die Umwandlung einer Zahl ist doch ganz einfach.
    Du hast die Zahl und machst jedesmal eine Modulo Operation mit den 10er Potenzen.
    Ein Beispiel mit der Zahl 27:

    Zahl = 27
    Teil1 = 27 % 10 -> Teil1 = 7
    Zahl = 27 / 10 -> Zahl = 2,77, da Bytevariable wird der Kommateil abgeschnitten und Zahl = 2
    Teil2 = Zahl % 10 -> Teil2 = 2

    Dein Zahlenstring generierst du nun so:

    String_Zahl = chr(Teil2) + chr(Teil1)

    Ausgeben kannst du das dann z.B. so:

    Dim String_Zahl as String * 4
    Dim String_Zahl_Overlay as Byte at String_Zahl Overlay
    Dim Index as Byte

    For Index = 1 to Len(String_Zahl)
    Zahl = Hexval(String_Zahl_Overlay(Index))
    PortX = Zahl

    Der Code definiert einen String mit Namen "String_Zahl" mit einer Länge von 4. Dieser String beinhaltet deine Zahl als String.
    Auf diesen String wird ein Array gelegt, so kannst du auf jedes Element des Strings mit den Regeln eines Arrays zugreifen (sprich das erste Element kannst du mit "String_Zahl_Overlay(1)" auslesen etc.)
    Anschließend läuft eine Schleife los, die von 1 bis zur Stringlänge zählt (Abschlussbyte des Strings nicht vergessen!!!!!) und bei jedem Durchlauf das Zeichen mit der aktuellen Zählernummer ausließt, speichert und am PortX ausgibt.
    Getestet ist das nicht, ist nur zusammen geschrieben. Evtl. ist die Syntax nicht korrekt aber es soll dir auch erstmal nur den Weg zeigen
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Naja, wenns ein string sein muss, dann lieber gleich mit Str(Zahl) umwandeln, oder? Ist wahrscheinlich nicht effizienter, aber zumindest lesbarer. Auch wenn das bei Bascom eh niemanden interessieren dürfte

  10. #10
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    34
    Beiträge
    3.501
    Blog-Einträge
    9
    Zitat Zitat von ichbinsisyphos Beitrag anzeigen
    Naja, wenns ein string sein muss, dann lieber gleich mit Str(Zahl) umwandeln, oder? Ist wahrscheinlich nicht effizienter, aber zumindest lesbarer. Auch wenn das bei Bascom eh niemanden interessieren dürfte
    Da hast du nicht ganz unrecht
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

Ähnliche Themen

  1. 7Segmentanzeige auslösen durch zwei Tasten in bestimmter Zeitfolge / Attiny 24
    Von Joschi1711 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 20.02.2012, 15:51
  2. Hilfe bei 3D-BS
    Von RobbyFan im Forum Sensoren / Sensorik
    Antworten: 0
    Letzter Beitrag: 30.08.2010, 17:19
  3. Gleitpunktzahl auf 7Segmentanzeige ausgeben
    Von Daniel2412 im Forum Software, Algorithmen und KI
    Antworten: 2
    Letzter Beitrag: 25.09.2008, 20:46
  4. Antworten: 9
    Letzter Beitrag: 02.01.2008, 22:05
  5. Hilfe bei Fusebits bei einen Mega16
    Von PsychoElvis64 im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 25.12.2006, 19:24

Berechtigungen

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

Labornetzteil AliExpress