-         
Ergebnis 1 bis 10 von 10

Thema: Anteuerung einer 7-Segment LED (PIC16F876)

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    24.08.2005
    Beiträge
    21

    Anteuerung einer 7-Segment LED (PIC16F876)

    Anzeige

    Hallo, Leute

    mein erstes Projekt ist die Ansteuerung einer 7-Segment LED Anzeige mit gemeinsamer Anode.

    Ich habe einen PIC16F876 mit 28Pins. Pin 8 und 19 habe ich mit Masse verbunden. Pin 20 mit VCC also +Pol. Ausserdem habe ich den kompletten PortB also RB0-RB7 / Pin 21-28 mit der Anzeige verbunden. Davor hab ich 8 x 1k Widerstände geschaltet.
    Die Schaltung funktioniert ohne PIC tadellos (dh alle LEDs leuchten )

    Nun zur Hardware:

    Ich habe gelesen, dass JEDER PIC einen Quarz/Keramikschwinger benötigt. Ich habe einen geeigneten da, nur weiss ich nicht genau, wo und warum ich diesen anschliessen muss. Es hat wohl was mit dem Takt zu tun. Aber was ist, wenn ich den weglasse?

    Ausserdem weiss ich nicht, ob ich noch etwas vergessen habe. Oder kann ich schon jetzt ein Programm schreiben um Zahlen auf meiner Anzeige darzustellen???

    Zur Software komme ich später, da ich mich mit Assembler noch nich beschäftigt habe, dies aber in kürze tue.

    Soviel zuerst einmal. Danke für die Antworten die ihr mir hoffentlich geben werdet

    Cyah, tOSCh

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    33
    Beiträge
    456
    also, ich empfehle dir für die Grundlagen sprut.de. Da wird auch erklärt, wieso du ein Quarz, bzw. einen Taktgenerator, sei es ein Oscillator (relativ teuer, leich anzuschließen) oder ein R/C-Glied (billig, Frequenzstabilität ist ein Fremdwort bei dem).

    Naja, rein theoretisch braucht NICHT jeder PIC einen externen Takt. Z.B. der PIC16F63x hat einen internen 4 MHz Oscillator. Bei dem kannst du dann die Pins OSC1/OSC2 als normale I/O-Pin verwenden. Dies ist aber bei deinem PIC nicht gegeben und so, ja, du brauchst einen extrenen Takt, ansonsten läuft dein Programm einfach nicht (da ein Befehl bei jedem 4. Zyklus des Taktes ausgeführt wird).

    ansonsten findest du hier auf Seite 122 alles was du über den PIC-Clock findest. Natürlich in Englisch, doch solltest du dich daran gewöhnen (bzw. kein Problem darsellen). Den ohne den dazugehörigen Datasheet wirst du komplexere Aufgaben (A/D-Wandlung, etc.) kaum bewerkstelligen können...

    MfG
    Mobius

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    24.08.2005
    Beiträge
    21
    OH OH, ich hab mir grad ne Demon auf meinen PIC gemacht. Hab alles schön angeschlossen den Pic in die Schaltung 5V angelegt und da hat auch was geleuchtet. Aber!!!!!

    Der Pic wurde extrem heiss, hab sofort abgesteckt. Was hab ich jetz falsch gemacht?

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    09.05.2004
    Ort
    Bielefeld / Paderborn
    Beiträge
    1.253
    falschrum gepolt

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    24.08.2005
    Beiträge
    21
    hmm kann es sein, dass er da sofort kaputt geht, denn irgendwie geht er jetz nich mehr richtig. Cyah

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    03.09.2004
    Ort
    Hamburg
    Alter
    38
    Beiträge
    37
    Wahrscheinlich ist er kaputt.
    Zu deinem Problem.Könnte es sein das du zuviel Strom aus dem Pic gesogen hast. Pro Pin sind ja nur 25mA erlaubt glaube ich und gesamt 200mA veranschlagt. Vielleicht sind deine Vorwiederstände zu klein gewesen das du bei deiner 7 Segment über die 200mA gekommen bist!

    So long..

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    24.08.2005
    Beiträge
    21
    so nun ein erneutes MERKWÜRDIGES Verhalten meiner Schaltung.
    Ich habe alles schön Sauber verlötet. Wenn ich nun ohne PIC rumprobiere mit überbrücken der Kontakte im Sockel, dann kann ich alle LEDs zum leuchten bringen. Sobald ich aber den PIC mit nem LAUFLICHTPROGRAMM reinstecke leuchtet nix, obwohl was blinken müsste.

    NUN zum Merkwürdigen Teil. Und zwar leuchtet eben nichts! ABER wenn ich den PIC von oben ANFASSE, dann lecuhten ein paar LEDs auf. Es sind immer dieselben LEDs die leuchten. Ich hab auch mal versehentlich die Unterseite der Platine berührt, da lief mein Lauflicht für 2 Sekunden.

    Hat jemand irgendwelche Erklärungen??? Bin für jeden Tip dankbar.

    Das Programm läuft auf meinem Experimentierboard einwandfrei!

    Cyah

  8. #8
    Gast
    Die PIC sind heikel, daß die Reset Leitung auch schön auf Plus hängt (10k Pullup) Bei LVP muß auch der Prog-Pin versorgt sein
    mfg robert

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    24.08.2005
    Beiträge
    21
    aha, danke ... ich muss den PIN4 MLCR mit nem 10K Vorwiderstand und dem PlusPol verbinden, hab ich das richtig verstanden?

    cyah, tOSCh

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    24.02.2005
    Ort
    Köln
    Beiträge
    132
    Hallo

    Ja, das hast du richtig verstanden. Der MCLR ist der Master Clear- oder Reseteingang. Der Querstrich darüber bedeutet invertiert, also "umgekehrt". Bei einer logischen 1 (also +5V) läuft das Programm, bei 0 wird der Reset ausgelöst. Die 1k-Vorwiderstände für die sieben Segmente (also je 5mA) sind eigentlich gross genug bemessen. Also theoretisch solltest du loslegen können, wenn du den PIC nicht schon gegrillt hast.

    Es gibt übrigens auch fertige BCD (binär codierte Dezimalzahlen) zu 7-Segment-Decoder. Die haben vier Eingänge, auf die du einen Binärwert von 0-9 (0000-1001) geben kannst und an den 7 Ausgängen wird das entsprechende 7-Segmentmuster erzeugt. Damit kannst du die Segmente heller leuchten lassen, sparst Ausgänge am PIC und musst später im Programm keine entsprechende Tabelle anlegen. Wie wäre es denn übrigens für erste Experimente mit einem billigeren PIC-Modell? Ich experimentiere z.B. gerade mit dem 12F675. Hat zwar nur 8Pins, kostet aber nur gut ein viertel von deinem und hat eigentlich alles, was das Herz begehrt, inclusive eines internen 4MHz-Taktgebers.

    Gruss
    Skilltronic

Berechtigungen

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