Hallo,
Ich versuche gerade mein erstes C Programm für einen PIC 18F452 zu
schreiben, zu compilieren und mit Mplab zu simulieren.
Hier das C-Coding:
1 | //Erstes C Program fuer PIC 18f452
|
2 | // version 1
|
3 | // Compiler Aufruf:
|
4 | //sdcc -mpic16 -p18f452 -D__18f452 --use-non-free "E:\Entwicklung\test1.c"
|
5 |
|
6 | #include "pic18f452.h"
|
7 |
|
8 | // Setup chip configuration
|
9 | typedef unsigned int config;
|
10 | config at 0x2007 __CONFIG = _OSC_HS_1H &
|
11 | _PUT_ON_2L &
|
12 | _BODEN_OFF_2L &
|
13 | _WDT_OFF_2H &
|
14 | _LVP_OFF_4L;
|
15 |
|
16 | static unsigned char count;
|
17 |
|
18 | void main(void)
|
19 | {
|
20 |
|
21 | TRISD = 0x00; // Setzt PORTD auf Ausgang
|
22 |
|
23 | count = 0x00; //
|
24 |
|
25 | while(1) //
|
26 | {
|
27 | PORTD = count; //Ausgabe von Count an Port D
|
28 | count ++;
|
29 | }
|
30 |
|
31 | }
|
Dann setze ich folgenden Compiler Aufruf ab:
sdcc -mpic16 -p18f452 -D__18f452 --use-non-free "E:\Entwicklung\test1.c"
Es kommt dann folgende Meldung:
message: using default linker script
"C:\Programme\gputils\lkr\18f452.lkr"
Es werden .o, .asm, .cod, .hex generiert.
Die HEX datei importiere ich dann in MPLAB v8.60
Als debugger wähle ich MPLAB SIM und im watch fenster wähle ich PORTD
mit Add SFR aus.
Dann Starte ich den simulator und im Output Fenster hagelt es Meldungen:
>>CORE-W0005: An Invalid Programming mode was selected. No Programming operation
occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
ADC-W0008: No stimulus file attached to ADRESL for A/D.
ADC-W0011: The Go/Done bit must not be set in the same cycle as the
Enable bit.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0005: An Invalid Programming mode was selected. No Programming
operation occurred
UART-W0005: Synchronous mode is not implemented in USART. Use
Asynchronous mode only.
CORE-W0015: Out of bounds Memory Access (at address 0x008000 on 0x000001
bytes)<<
Stimmt mein Compiler/linker Aufruf nicht oder was mache ich falsch.
Hat jemand vielleicht ein PIC18F252 Grundgerüst?
Im Voraus schonmal vielen Dank.