PIC18F2550 mit Taster LED ansteuern

OP #2947242
Lesenswert?

Hallo,

ich habe mir eine kleine Controllerplatine aufgebaut mit einem 
PIC18F2550.
Nun möchte ich eine LED ansteuern die am Pin RB4 liegt mit einem Taster 
der am Pin RB3 liegt.

Habe dieses Programm geschrieben:
1
#include <stdio.h>
2
#include <stdlib.h>
3
#include <p18f2550.h>
4

5
void main() {
6
    int taster;
7
      TRISBbits.TRISB4=1;      
8
        TRISBbits.TRISB3=0;
9

10
    while(1){
11
        taster=PORTBbits.RB4;
12

13
        if(taster == 1){
14
            LATBbits.LATB3 = 1;
15

16
        }else
17
            LATBbits.LATB3 =0;
18
    };
19
    
20

21
    return (0);
22
}

Jedoch funktioniert mein vorhaben nicht.
Wäre sehr toll wenn Ihr mir helfen könntet!!
Danke schon mal im Vorraus!
OP #2947425
Lesenswert?

Hey,
vielen Dank für eure Antworten.
Der Taster besitz einen externen Pull-Down-Widerstand.
Trotz der Verbesserung klappt es noch immer nicht.. :/
Habe noch eine Delay-Funktion gefunden...

Hier nochmals das korrigierte Programm:
1
#include <stdio.h>
2
#include <stdlib.h>
3
#include <p18f2550.h>
4
#include <delays.h>
5

6

7
void main() {
8

9

10
      TRISBbits.TRISB4=0;
11
        TRISBbits.TRISB3=1;
12

13
    while(1){
14

15
        if(PORTBbits.RB3 == 0){
16
            LATBbits.LATB4 = 1;
17
            Delay10KTCYx(100);
18
        }else
19
            LATBbits.LATB4 =0;
20

21
    };
22
    
23

24
    return (0);
25
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren