- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 11

Thema: mit dip schalter PORTD 0-1-2-3 Abfragen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Benutzer Stammmitglied Avatar von Der bastler
    Registriert seit
    09.05.2011
    Ort
    Langenhorn, Hamburg, Germany, Germany
    Beiträge
    72
    Blog-Einträge
    1
    Ja kann mir jemand da helfen?
    liege ich mit den Case einstellungen richtig????
    danke

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    es geht ja auch nur um die Case einstellungen wie wann und wie viel man da so braucht......
    Klingt, als ob Du nach einer Schätzung suchst, vielleicht ist das verhandelbar - ich denke nicht, es geht grundsätzlich nur um Fakten und Tatsachen.

    Leider kenne ich die Programmiersprache nicht, deshalb kann ich dazu nichts sagen. Ich weiß nicht ob die Syntax stimmt oder ob die Befehle richtig angewendet werden.

    Searcher wirft indirekt eine Frage auf, er vermutet dass es Bascom ist.

    Vielleicht könnten wir uns einigen, dass es Bascom ist.
    Dann muss jetzt jemand schauen, der sich mit Bascom auskennt, ob das alles richtig ist.

    Ich für meinen Teil weiß auch nicht, was nicht funktionieren soll. Es sind keine Fehlermeldungen zu sehen.
    Dazu wäre es gut, einen Programmablaufplan zu haben und hier rein zu stellen, damit man sieht, was Du vor hast und ob das Programm das von der Logik her auch tut oder ob da Fehler sind.

    Da die gesamte Doku fehlt und der gesamte Quellcode, scheint das hier in Open Source Software Projekte falsch zu sein.


    MfG
    Geändert von Moppi (18.06.2020 um 13:03 Uhr)

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von Der bastler Beitrag anzeigen
    Ja kann mir jemand da helfen?
    Wenn man wüßte, wo genau Dein Problem liegt ... Im Bascom Simulator läuft das Programm. Bei welchen DIP Schalter Einstellungen soll denn welches Unterprogramm angesprungen werden?

    liege ich mit den Case einstellungen richtig????
    Wie gesagt, es würde funktionieren so wie es dort steht. Ob die Einstellungen richtig sind, kannst doch nur Du entscheiden.

    Gruß
    Searcher


    PS Es gibt hier im Roboternetz auch ein Unterforum für BASCOM
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    17.09.2020
    Beiträge
    11
    Ich stehe gerade vor einem ähnlichen Problem. Gibt es schon eine Lösung Der Bastler?

  5. #5
    Benutzer Stammmitglied Avatar von Der bastler
    Registriert seit
    09.05.2011
    Ort
    Langenhorn, Hamburg, Germany, Germany
    Beiträge
    72
    Blog-Einträge
    1
    Zitat Zitat von Robzilla Beitrag anzeigen
    Ich stehe gerade vor einem ähnlichen Problem. Gibt es schon eine Lösung Der Bastler?
    Ja Moin Robzilla

    Ich habe es Ausprobiert mit einen ATtin2313 und 4 eingänge
    PORTD0 bis 3 als eingang genommen
    PORTB0 Bis 7 Led als ausgänge genommen

    Hier ein ausschnitt von mein programm
    Code:
    im Kodierschalter As Byte
    Dim B As Byte
    
    Declare Sub Prog_0
    Declare Sub Prog_1
    Declare Sub Prog_2
    Declare Sub Prog_3
    Declare Sub Prog_4
    Declare Sub Prog_5
    Declare Sub Prog_6
    Declare Sub Prog_7
    Declare Sub Prog_8
    Declare Sub Prog_9
    Declare Sub Prog_10
    Declare Sub Prog_11
    Declare Sub Prog_12
    Declare Sub Prog_13
    Declare Sub Prog_14
    Declare Sub Fehler
    
    
    Do
    Kodierschalter = Pind And &B0000_1111
    Select Case Kodierschalter
      Case 0 : Gosub Prog_0                                     'LEER
      Case 1 : Gosub Prog_1                                     'LEER
      Case 2 : Gosub Prog_2                                     'LEER
      Case 3 : Gosub Prog_3                                     'PORTD.0 und PORTD.1 = LICHT
      Case 4 : Gosub Prog_4                                     'LEER
      Case 5 : Gosub Prog_5                                     'LEER
      Case 6 : Gosub Prog_6                                     'PORTD.0 und PORTD.3 = LED TEST
      Case 7 : Gosub Prog_7                                     'PORTD.3 = FEIL LINKS
      Case 8 : Gosub Prog_8                                     'LEER
      Case 9 : Gosub Prog_9                                     'LEER
      Case 10 : Gosub Prog_10                                   'LEER
      Case 11 : Gosub Prog_11                                   'PORTD.2 = FEIL RECHTS
      Case 12 : Gosub Prog_12                                   'LEER
      Case 13 : Gosub Prog_13                                   'PORTD.1 = KTEUTZ
      Case 14 : Gosub Prog_14                                   'PORTD.0 = LEER LASSEN Weil Platine keine led hat
      Case Else : Gosub Fehler                                  'Ohne Funktion
    End Select
    Loop
    Hier werden wenn ich richtig liege, 15 Programme gebraucht und wenn du siehst welchen
    Prog_xx Welcher Port liegt. wenn ich richtig erklärt habe...

    Den es wird nicht nur Portd >Taster< Gnd
    Sondern auch
    Portd > Taster< 5V+ ausgwertet

    Hier kannst du es auch noch mal lesen--->
    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

Ähnliche Themen

  1. ATTiny13A Schalter abfragen/entprellung mit Variablen
    Von Denn Is im Forum C - Programmierung (GCC u.a.)
    Antworten: 19
    Letzter Beitrag: 01.07.2014, 11:21
  2. Kann Schalter nicht abfragen
    Von Icon2k im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 30.07.2010, 17:51
  3. portd.0 und portd.1
    Von Carlos31 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 07.12.2008, 14:22
  4. portd.5 toggeln mit 6 herz
    Von sechsrad im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 06.02.2008, 18:24
  5. Problem mit PortD
    Von bader357 im Forum PIC Controller
    Antworten: 2
    Letzter Beitrag: 14.10.2007, 18:45

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress