Forum: Mikrocontroller und Digitale Elektronik PIC18F25J10 mit MCC18


von Thomas Harasek (Gast)


Lesenswert?

Hallo,

ich mache meine ersten Gehversuche mit C (MCC18) mit einem PICF18F25J.

Mit folgendem Assembler-Programm kann ich mit dem Oszilloskop
am entsprechenden Port die Änderungen sehen
(ist nichts Weltbewegendes - sollte nur zum Einstieg in C helfen).
1
LIST P=PIC18F25J10
2
INCLUDE P18F25J10.INC
3
4
;code protect disabled
5
CONFIG     CP0=OFF
6
;Oscillator switch enabled, RC oscillator with OSC2 as I/O pin.
7
CONFIG     FOSC=HS
8
9
CONFIG     XINST=OFF
10
11
CONFIG     WDTEN=OFF
12
13
org  00h
14
15
    movlw  b'00001111'
16
    movwf  BSR
17
18
    clrf  PORTC
19
    clrf  LATC
20
    clrf  TRISC
21
22
23
MAIN
24
    bsf    LATC,6
25
    nop
26
    bcf    LATC,6
27
    nop
28
    goto  MAIN
29
30
end



Mit folgendem C-Programm kann ich mit dem Oszilloskop
überhaupt nichts sehen
(Compelieren, Linken und Programmieren des Prozessors
sind ohne Probleme durchgelaufen).
Eigentlich sollte dieses C-Programm dasselbe tun,
wie das Assembler-Programm.
1
 
2
#include <p18f25j10.h>
3
4
//code protect disabled
5
#pragma  config     CP0=OFF
6
7
//Oscillator switch enabled, RC oscillator with OSC2 as I/O pin.
8
#pragma  config     FOSC=HS
9
10
#pragma  config     XINST=OFF
11
12
#pragma  config     WDTEN=OFF
13
14
15
void delay (int j)
16
{
17
  int i;
18
  for (i = 0; i < j; i++)
19
    ;
20
}
21
22
23
void main (void)
24
{
25
  BSR    = 0xF;
26
  PORTC  = 0x0;
27
  LATC  = 0x0;
28
  TRISC  = 0x0;
29
  
30
  while (1) {
31
    
32
    LATC  = 0x6;
33
    delay (1);
34
    LATC  = 0x0;
35
    delay (1);
36
37
  }
38
39
}


Über jeden Tipp bin ich sehr dankbar.

Kann mir jemand noch einen Tipp (Buchtipp, Internet, ...)
für Samplecodes mitteilen?


Vielen Dank
thomas

von w124Dennis (Gast)


Lesenswert?

Hallo Thomas
1
bsf    LATC,6
!=
1
LATC  = 0x6;

im asm setzt du das 6te bit
im c code schreibst du 6 in das LATC Register -> d.h. das 2te und 3te 
bit wird high.


Gruß Dennis

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.