- Labornetzteil AliExpress         
Ergebnis 1 bis 5 von 5

Thema: Startschwierigkeiten bei PIC in C programmieren

  1. #1

    Startschwierigkeiten bei PIC in C programmieren

    Anzeige

    Praxistest und DIY Projekte
    Hallo zusammen,

    versuche gerade die ersten Schritte im PIC in C programmieren.
    Habe einen Schließer an den PIN RA5 angeschlossen, der Pin hat 4,78 V wenn ich den Taster drücke und 0 V (über Pulldown Widerstand) wenn er nicht gedrückt ist.

    Leider passiert nichts wenn ich den Taster drücke, das Programm bleibt immer im else Teil ...

    Könnt ihr mir da weiterhelfen ?

    Danke im voraus.

    Gruß Tobias



    Code:
    #pragma config |= 0b.1111.1111.0010 // Konfigurationswort
    
    
    
    void main (void) // Start des Hauptprogramms
    
    {
    
      TRISC = 0b.1111.1110; 
    
      TRISA = 0b.0010.0000; 
    
    
    
      bit LED @ PORTC.0 ;
    
      bit T @ PORTA.3 ;
    
    
    
      while(1)  // endlos-schleife
    
      {
    
        if(T)   // Taste=1?
    
        {
    
          LED=0;
    
        }   
    
        else
    
        {
    
          LED=1;
    
        }
    
      }
    
    }

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Bin mit den PIC's etwas entwöhnt, also irre ich mich vielleicht.
    Aber bei TRISA hast du doch PIN.3 als Output gesetzt ?
    (von rechts zählen und mit 0 beginnen)
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Danke für die schnelle Antwort

    Klar da hast absolut recht.
    Hab mich da auch etwas vertan sorry.

    Jetzt der neue Code das gleiche Problem

    Gruß Tobias

    Code:
    #pragma config |= 0b.1111.1111.0010 // Konfigurationswort
    
    
    
    void main (void) // Start des Hauptprogramms
    
    {
    
      TRISC = 0b.1111.1110; // Led DS1 als Ausgang
    
      TRISA = 0b.0010.0000; // SW 1 als Eingang
    
    
    
      bit LED @ PORTC.0 ;
    
      bit T @ PORTA.5 ;
    
    
    
      while(1)  // endlos-schleife
    
      {
    
        if(T)   // Taste=1?
    
        {
    
          LED=0;
    
        }   
    
        else
    
        {
    
          LED=1;
    
        }
    
      }
    
    }

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.10.2007
    Ort
    Bayern
    Alter
    35
    Beiträge
    116
    Hallo,

    normalerweise ist RA5 der MCLR. Wenn dieser auf Low ist resetest Du deinen PIC ständig.
    Nimm mal einen anderen Pin und versuch es nochmal.

    mfg
    Benny
    cooming soon...

  5. #5
    Hi,

    danke, ja daran habe ich auch erst gedacht. Scheint aber nicht so zu sein, hab es an RC7 auch schon probiert. Kommt das gleiche raus.

    Gruß Tobias
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken 16f690.jpg  

Berechtigungen

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

LiFePO4 Speicher Test