Moin, moin!
Hätte jemand einen kleine Code parat, mit dem ich meine 3stellige 7 Segmentanzeige testen könnte? Es geht erstmal darum ob alles richtig verlötet ist.
Gruß, Björn
Moin, moin!
Hätte jemand einen kleine Code parat, mit dem ich meine 3stellige 7 Segmentanzeige testen könnte? Es geht erstmal darum ob alles richtig verlötet ist.
Gruß, Björn
Nur tote Fische schwimmen mit dem Strom...
Der Code hängt doch von deiner Verschaltung ab.
Testen kannst du so:
An deinen Kathoden-Ports legtst du 0 wenn ein Einzelsegment leuchtet soll und 1, wenn es dunkel bleiben soll.
An einen Anoden-Port legst du 0 um ein Segment zu wählen.
Alle anderen Anoden-Ports musst du auf 1 legen, damit die anderen Segmente aus bleiben.
Das ich wichtig! Wenn du mehr als 1 Anodenport auf 0 legst, wird sonst über jeden Kathoden-Port, der 0 ist, ein zu großer Strom fliessen. Damit hast du ruck-zuck deine Ausgangstreiber frittiert.
Bevor du also deine Schaltung mit 'irgendeinem' Code grillst...
Also ich habe ja 3 Anode, der Rest Kathoden. Dann Schreibe ich PortC.3 = 0 und die ganzen anderen Anoden Pins = 1. Und bei den ganzen Kathoden - welche lege ich da auf 0? Ist doch eigentlich egal... da wähl ich doch quasi nur das Segment - oder?
Björn
Nur tote Fische schwimmen mit dem Strom...
Egal ist es nicht. Wenn du zB im ersten Display eine "1" anzeigen willst, sagt dir das Datenblatt, daß dann die Segmente 'b' und 'c' bestromt sein müssen.
Du legst:
Die c-Kathoden (Pin 12 der Displays) auf 0
Die d-Kathoden (Pin 10 der Displays) auf 0
Alle anderen Kathoden auf 1.
Die Basis des pnp-Trinsis zum Display legst du auf 0 (via Vorwiderstand).
Alle anderen Basen auf 1
So oder wie? Oder muss der Kram in die Hauptschleife?Code:$regfile = "m8def.dat" $crystal = 8000000 Config PortD = Output 'PortD ist mit den Kathoden belegt Config PortB = Output 'PortB sind die Transistoren PortD.4 = 0 'D.4 ist an Pin 10 PortD.5 = 0 'D.5 ist an Pin 12 PortD.6 = 1 PortD.7 = 1 PortD.0 = 1 PortD.1 = 1 PortD.2 = 1 PortD.3 = 1 PortB.5 = 0 'B.5 ist an der Basis des Transistors der ersten Displaystelle PortB.3 = 1 'B.3 ist an der Basis des Transistors der zweiten Stelle PortB.1 = 1 'B.1 ist an der Basis des Transistors der dritten Stelle Do Loop
Gruß, Björn
Nur tote Fische schwimmen mit dem Strom...
Hallo Björn,
Ich habe Dir doch schon ein vorschlag gemacht, Du sollst Dir eine Tabelle erstellen, mit den Ganzen Werten, die für die Zifern zuständig sind, je nachdem , wo Dein a,b,c,d,e,f,g vov Display dran hängt, und dann mit einem zeiger (geht das in Bascom überhaupt?) immer schön drauf zeigen.
Soweit ich weiß kennt Bascom keine Zeiger. Es geht mir aber erstmal um einen Grundsatztest - der Summer reagiert nähmlich nicht...
Gruß, Björn
Nur tote Fische schwimmen mit dem Strom...
Aber Arrays?Soweit ich weiß kennt Bascom keine Zeiger
dann würde ich ein array erstellen, mit den wertigkeiten von 0-9 bzw 9-0 .
Ich hoffe, Du verstehst was ich meine ...
Summer, ist deas ein piezo ? wenn ja hast Du ihm einfach an Spannung gelegt, oder ein Signal mit 1-4 kHz aufgelegt ?
Gruß Sebastian
Ich habe den einen Pin an +3.6V, den anderen an einen µC-Pin gelegt.
Dann den Bascom Befehl:
Gruß, BjörnCode:Sound PortC.2 , 400, 400
Nur tote Fische schwimmen mit dem Strom...
Ich habe den einen Pin an +3.6V, den anderen an einen µC-Pin gelegt.
Dann den Bascom Befehl:
Gruß, BjörnCode:Sound PortC.2 , 400, 400
Nur tote Fische schwimmen mit dem Strom...
Lesezeichen