- Labornetzteil AliExpress         
Ergebnis 1 bis 2 von 2

Thema: Problem mit Programm

  1. #1

    Problem mit Programm

    Anzeige

    Praxistest und DIY Projekte
    hallo, bei folgendem Code sollte eigentlich je nach gedrückter Taste ne
    LED unterschiedlich oft angehen. Tut sie aber nicht
    Was ist da los?

    Code:
    $regfile = "m32def.dat"
    $framesize = 32
    $swstack = 32
    $hwstack = 32
    $crystal = 1000000
    
    Config Portc.0 = Output
    Config Porta = Input
    Porta = 1
    Config Portb = Input
    Portb = 1
    
    Dim Taste As Integer
    Dim Taste2 AS Word
    Dim J AS Integer
    J = 0
    
    Declare Sub ausgeben(byval impulse As Integer) 
    
    
      Taste = 0
    Do
        
      if Pinb.0 = 1 Then    
        Portc.0 = 1
        Taste = 4
      elseif Pinb.1 = 1 Then
        Portc.0 = 1
        Taste = 3
      elseif Pinb.2 = 1 Then
        Portc.0 = 1
        Taste = 2
      elseif Pinb.3 = 1 Then
        Portc.0 = 1
        Taste = 1
      elseif Pinb.4 = 1 Then
        Portc.0 = 1
        Taste = 8
      elseif Pinb.5 = 1 Then
        Portc.0 = 1
        Taste = 7
      elseif Pinb.6 = 1 Then
        Portc.0 = 1
        Taste = 6
      elseif Pinb.7 = 1 Then
        Portc.0 = 1
        Taste = 5
      'elseif Pina.0 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "="
      'elseif Pina.1 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "C"
      elseif Pina.2 = 1 Then
        Portc.0 = 1
        Taste = 0
      elseif Pina.3 = 1 Then
        Portc.0 = 1
        Taste = 9
      'elseif Pina.4 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "+"
      'elseif Pina.5 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "-"
      'elseif Pina.6 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "*"
      'elseif Pina.7 = 1 Then
      '  Portc.0 = 1
      '  Taste2 = "/"
        
      end if
      
      if Taste = 0 then
        'des geits itt
      else
        call ausgeben (Taste)
      end if
    Loop
    
    
    
    End
    
    Sub ausgeben(byval Impulse As Byte) 'Schrittmotor links drehen
      For J = 1 To Impulse
        Portc.0 = 1
        waitms 200
        Portc.0 = 0
        waitms 200
      Next
    End Sub
    fat32

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    09.05.2007
    Beiträge
    202
    Hallo fat32,

    wie hast du denn die Taster angeschlossen? Wenn sie gegen Masse schließen, musst du die Abfrage invertieren (if pinb.0 = 0 u. s. w.) Wenn du Pulldowns hast und der Schalter gegen +5V schaltet musst du das Porta=1 und Portb=1 raus nehmen.
    Gruß, Stefan

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress