Hallo Leute, Ich habe ein kleines Problem mit Bascom. Unzware habe ich mittels "Split" ein String vom Uart aufgeteilt. Wenn ich die Teile jetzt auf das Compare1a und 1b Register gebe funktioniert natürlich nichts. Er kompilliert es zwar aber es funktioniert nicht weil compare nunmal Integer haben möchte. Meine Frage: Wie kann ich einen String nach Integer Konvertieren.
Funktioniert leider nicht. Dann gibt der Compiler ne Fehlermeldung raus.
Robin Tönniges wrote: > > Meine Frage: Wie kann ich einen String nach Integer Konvertieren. Mit Integer=Val(String) sollte es gehen. Gruß Rolf
Hier mal der Code:
1 | $regfile "m8def.dat" |
2 | $crystal = 8000000 |
3 | $baud = 9600 |
4 | Config Portb.1 = Output |
5 | Config Portb.2 = Output |
6 | Config Portb.3 = Output |
7 | Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down , Prescale = 1 |
8 | Config Timer2 = Pwm , Pwm = On , Compare Pwm = Clear Up , Prescale = 1 |
9 | Dim Wert As String * 20 'Die Variable wo der Eingelesene Wert vom UART reinkommt |
10 | Dim Farbe(3) As String * 20 'Das Array mit den durch SPLIT einzelnen Farben |
11 | Dim Rot As Integer 'Die Farben als Integer wo die String rein sollen |
12 | Dim Gruen As Integer |
13 | Dim Blau As Integer |
14 | Dim Bcount As Byte |
15 | |
16 | Print "RGB-LED Farbwechsler von Robin T." |
17 | Print "Verbindung hergestellt" |
18 | Do |
19 | Input "" , Wert 'Hier wird der UART gelesen |
20 | Bcount = Split(wert , Farbe(1) , ".") 'Hier wird der eingelesene String in 3 Teile nämlich R, G und B gesplittet |
21 | Rot = Cint(farbe(1)) 'Die Versuche einen String in ein Integer zu konvertieren |
22 | Gruen = Cint(farbe(2)) |
23 | Blau = Cint(farbe(3)) |
24 | Compare1a = Rot 'Die PWM Kanäle |
25 | Compare1b = Gruen |
26 | Compare2 = Blau |
27 | Loop |
28 | End |
Juhu! Es funktioniert. Bis auf ein kleinen Manko das immer nur eine Farbe schnell und schön gesteuert werden kann. Bei 2 oder 3 flackern die anderen. Aber das sit erstmal egal. Das gefragte ist gelöst. Danke
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.