Anzeige:

7Segment anzeige an Atmega8

Hier finden sie die archivierten Beiträge des alten PHPBB Forums von www.loetstelle.net

7Segment anzeige an Atmega8

Von RuSsFiGhTeR am 19.02.2009 20:46

Gutten Abend an alle ich habe eine 7Segment anzeige ans Atmega8 gehängt und Schaltplan dazu erstellt und dazu gehörige Programm geschrieben .
Es zählt einfach nur von 0 bis 9 und wieder von anfang an.
Bei mir tauchen aber paar Fragen auf die ich euch Fragen wolte.
Hier Erstmal das Programm in Bascom:

'es handelt sich um einen ATmega8
$regfile = "M8def.dat"

'der eingebaute RC-Oszillator läuft mit 1 Mhz
$crystal = 1000000

'im Speicher werden für den Hardware-Stack 32 Byte reserviert
$hwstack = 32

'im Speicher werden für den Software-Stack 10 Byte reserviert
$swstack = 10

'im Speicher werden für den Frame 40 Byte reserviert
$framesize = 40

Config Portd = Output
Portd = 255

Dim I As Byte

Dim X(16) As Byte

Restore Value_table

For I = 1 To 10
Read X(i)

Next

Do

For I = 1 To 10
Portd = X(i)
Waitms 250
Waitms 250

Next

Loop

End

Value_table:
Data &H40 , &H79 , &H24 , &H30 , &H19 , &H12 , &H02 , &H78
Data &H00 , &H10

Hier der Schaltplan:http://img147.imageshack.us/img147/536/7segmenthc2.th.jpg

Also jetzt zu den Fragen laut der seite hier
http://www.mikrocontroller.net/articles/AVR-Tutorial:_7-Segment-Anzeige
müssten an dei anschlüße von 7Segment anzeige widerstände dran ich habe jetzt einen einfach ans VCC von anzeige gehängt ist das so in ordnung ?
Und könnte mir einer paar Links geben oder sagen wie das Multiplitex von 4 segment anzeigen funktioniert?

Von BellaD am 19.02.2009 21:09

Moin

mit einem R gehts - wie du ja bemerkt hast - aber ich würde doch lieber 7 nehmen und gemeinsame Anode direkt an +
Beim multiplexen musste ja eh die gemeinsamen anschlüsse steuern und kommst dann um die 7 R's oder einen Treiber nicht drumrum.

Und Tutorial - da warste doch schon - da wird auch das multiplexen beschrieben aber wohl nicht in BASCOM .
Vielleicht bei MCS auf der Seite suchen oder www.gidf.de
oder Gerold fragen, dann aber bitte unter Bascom.

mfg

Von RuSsFiGhTeR am 19.02.2009 21:56

Ja auf der Seite gibt es auch aber leider nur für Assembler.
Und ich arbeite nur mit Bascom und wolte wissen obs hier auch so funktioniert ohne speziele treiber?
Wolte noch mal das Bild uppen :

Von BellaD am 19.02.2009 22:08

Ja , ohne spezielle Treiber gehts auch , du brauchst dann 7 R's für die Segmente und 4 Transistoren für die Anoden (gleiche Schaltung wie in dem Tutorial).
Du musst also immer für jede ziffer erst die Portpins für die entsprechenden Segmente einschalten und dann den Tr. für die Anzeige .
Dann ein bischen warten und dann die nächste Ziffer und so reihum weiter.

Von pcprofi am 20.02.2009 10:20

Hab das Thema mal verschoben nach BASCOM - scheint ja was mit BASCOM zu sein....

Übrigens das mit dem Widerstand ist so nicht gut... Du brauchst in jeder Segmentleitung einen, nicht einen in der gemeinsamen Anode... Die Gemeinsame Anode bei dir im Schaltplan hängt aber auf der Leitung des Dezimalpunktes - nur kurz angemerkt, hab den Fred nur überflogen...

Von RuSsFiGhTeR am 20.02.2009 15:43

Danke fürs verschieben hab keine andere 7segment Anzeige in Eagle gefunden habe einfach nur die eingefügt und wusste da net wo der anschluß fürs VCC ist werde dann mal ändern.
Kann mir vieleicht eine sagen wie ich nen Taster mit einprogrammier damit die Anzeige auf Knopfdruck zahlen zählt also von 0 bis 9 auf knopfdruck 1 knopfdruck 2 usw.

Anzeige: