Startschwierigkeiten mit C-Compiler

OP #3472519
Lesenswert?
• ▲
▼
Hi
Ich habe ich habe versucht einen PIC mal mit C zu Programmieren. Dabei 
trat allerdings das Problem auf, dass ein Eingang immer "0" ausgibt.

Die Hardware, die ich benutze ist die Versuchsplatine aus dem Buch 
"Mikrocontroller für Einsteiger", auf der ein PIC 16F876A ist. Das ganze 
möchte ich nun mit C programmieren, da es für mich wesentlich einfacher 
ist als Assembler neu zu lernen.
Als Compiler nutze ich den von HI-TECH (lite Version).

Hier der Code ...
1
#include  <htc.h>
2
#include  <pic16f876a.h>
3

4
#ifndef _XTAL_FREQ
5
 #define _XTAL_FREQ 4000000
6
#endif
7

8
__CONFIG(CP_OFF & WDTE_OFF & BOREN_OFF & PWRTE_OFF & FOSC_XT & WRT_OFF & LVP_OFF & DEBUG_OFF & CPD_OFF);
9

10
#define T1 PORTAbits.RA4
11
#define T2 PORTAbits.RA5
12
#define T3 PORTCbits.RC0
13
#define T4 PORTCbits.RC1
14

15
#define LED1 PORTAbits.RA2
16
#define LED2 PORTAbits.RA3
17
#define LED3 PORTBbits.RB4
18
#define LED4 PORTBbits.RB5
19

20
main(void){
21
  PORTA = 0x00;
22
  PORTB = 0x00;
23
  PORTC = 0x00;  
24

25
  TRISAbits.TRISA4 = 1;
26
  TRISAbits.TRISA5 = 1;
27
  TRISCbits.TRISC0 = 1;
28
  TRISCbits.TRISC1 = 1;
29

30
  TRISAbits.TRISA2 = 0;
31
  TRISAbits.TRISA3 = 0;
32
  TRISBbits.TRISB4 = 0;
33
  TRISBbits.TRISB5 = 0;
34

35
  while(1){
36
    
37
    LED1 = !T1;
38
    LED2 = !T2;
39
    LED3 = !T3;
40
    LED4 = !T4;
41
  }
42
}

Das Programm, welches eigentlich nur Eingänge auf Ausgänge schaltet 
funktioniert soweit, außer das die LED2 dauerhaft leuchtet und somit T2 
vermutlich immer 0 ausgibt.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.