Zweistellige Zahl in Zehner und Einser zerlegen.
Hallo!
Ich wollte eine zweistellige Zahl über zwei siebensegment Anzeigen ausgeben.
Dazu könnte ich jedes Segment an einen Port hängen und dann in einer Liste für jeden Port die Zahlen 0-9 einspeichern. Allerdings müsste ich in Bascom dann die Zahl zerlegen, damit er weiß das er z.B bei 45 über den ersten Port die vier und über den zweiten Port die fünf darstellen soll. Hatjemand eine idee wie sowas geht?
Gruss
Alex
Re: Zweistellige Zahl in Zehner und Einser zerlegen.
Zitat:
Zitat von Brantiko
Allerdings müsste ich in Bascom dann die Zahl zerlegen, damit er weiß das er z.B bei 45 über den ersten Port die vier und über den zweiten Port die fünf darstellen soll.
Hallo Alex!
Wenn du die Zahl in einen Text umwandelst, dann kannst du mit dem Befehl MID die einzelnen Zeichen rausholen.
Nachtrag:
Das ist nicht besonders effizient, aber darüber können sich wieder die Anderen streiten. ;-) Mir ist erst mal wichtig, dass es funktioniert.
Code:
$regfile = "m8def.dat"
$crystal = 8000000
$hwstack = 100
$swstack = 100
$framesize = 100
$baud = 4800
Dim Zahl As Byte
Dim S As String * 2
Dim Bt As Byte
Dim Ein_zeichen As String * 1
Dim Eine_zahl As Byte
Zahl = 45
S = Str(zahl)
For Bt = 1 To Len(s)
Ein_zeichen = Mid(s , Bt , 1)
Eine_zahl = Val(ein_zeichen)
Print Eine_zahl
Print Bin(eine_zahl)
Print
Next Bt
End
mfg
Gerold
:-)