Hallo bastler,
mit drei Dipschaltern, kann man 2^3=8 binäre Kombinationen einstellen.
1. 000
2. 001
3. 010
4. 011
5. 100
6. 101
7. 110
8. 111
Dezimal sind das die Zahlen von 0 bis 7. Deshalb würde ich die Dipschalter an einen Port des µCs, beginnend mit Portpin 0, anschließen. Durch kann man die Schalter recht einfach abfragen und mit der SELECT-CASE Anweisung weiterverarbeiten.
Im Code werden durch "and &B0000_0111" nur die Zustände der Dipschalter an PINB.0, PINB.1 und PINB.2 in die Variable Kodierschalter übernommen und Bit 3 bis Bit 7 in Kodierschalter auf 0 gesetzt.
Danach einfach mit SELECT-CASE die Unterprogramme anspringen.
Code:
Dim Kodierschalter As Byte
Kodierschalter = PINB And &B0000_0111
Select Case Kodierschalter
Case 0 : Gosub Prog_0
Case 1 : Gosub Prog_1
Case 2 : Gosub Prog_2
' Case 3 : Gosub Prog_3
' Case 4 : Gosub Prog_4
Case 7 : Gosub Testlauf
' Case Else: gosub xy
End Select
Gruß
Searcher
Lesezeichen