Zitat Zitat von stardust19322 Beitrag anzeigen
Abgesehen vom Header wäre das dann auch schon das gesamte Einlese-Prozedere?
Eigentlich ja. Ich habe noch die blau gefärbten Kommentare eingefügt, die meiner Meinung nach besser passen. Für aktive Pullupwiderstände muß der Portpin als Eingang konfiguriert sein und im PORT Register das entsprechende Bit auf 1 gesetzt werden.


Code:
Programmwahl = PINA                       'Hier werden alle Pins mit der Variable "Programmwahl" definiert (benannt)
                                          'Hier wird der Zustand aller Pins von PortA in die Variable Programmwahl übertragen.
Programmwahl = Programmwahl AND &B00011111       'Die ersten 3 Bits sind gelöscht oder Ausgänge, während die letzten 5 als Eingänge anwählbar sind
                                                 'Die ersten 3, nicht zu beachtenden Bits werden auf 0 gesetzt.
PinA = &HFF         'Würde die internen PullUp-Widerstände aktivieren, alternative Schreibweise wäre "PinA = 1"???
PortA = &HFF        'Würde die internen PullUp-Widerstände aktivieren, alternative Schreibweise wäre "PortA.0 = 1 , PortA.1 = 1, ...

DIM Programm as Byte
Dim Programmwahl as Byte      'Kann ich diese Variablendeklaration auch weglassen???
                              'Nein. Wird dir der Compiler aber schon melden. Ist kein in Bascom vordefinierter String sondern eine Anwendervariable und muß vor erster Verwendung deklariert sein.
Do

Select Case Programmwahl
     Case &B00001 : Programm = 1     'Hier könnten jetzt schon Aufrufe von Unterprogrammen stehen. Das was "Programm" zugewiesen wird steht ja schon in "Programmwahl".
     Case &B00010 : Programm = 2
     Case &B00011 : Programm = 3
     Case &B00100 : Programm = 4
     etc.pp

Gruß
Searcher