Forum: Mikrocontroller und Digitale Elektronik Great Cow Basic


von Dieter (Gast)


Lesenswert?

Hallo,
ich habe von Velleman das K8048 PIC Programmierboard. Jetzt möchte ich 
für meinen PIC 16F819 Great Cow Basic ein Programm schreiben und dieses 
dann (natürlich in HEX) auf den PIC "brennen".
Jedoch bekomme ich immer Fehlermeldungen, bzw. WinPIC schreibt in alle 
Speicherzellen den gleichen Wert.

Wer kann mir helfen?
Was muss ich tun, bzw. welche Programme verwenden?

Dieter

PS: Ich bitte euch: bitte keine Grundsatzdiskussionen zu PIC, Basic und 
Assembler!

von Peter D. (peda)


Lesenswert?

Dieter schrieb:
> Jedoch bekomme ich immer Fehlermeldungen


Es wundert mich immer wieder, warum Fehlermeldungen einen Wortlaut 
haben.

Es würde doch den meisten völlig reichen, wenn sie lauten würden:
"Blaa bla bla bla bla bla bla blaa"

Da sie sich ja nicht die Mühe machen, sie zu lesen bzw. zu posten.


Peter

von Dieter (Gast)


Angehängte Dateien:

Lesenswert?

Also ganz  genau:
Ich benuze GCBIDE ==> Kompillieren (alles ok) ===> WinPIC (alle 
Speicherzellen gelicher Inhalt) ==> Schreiben geht schief

GCBIDE ==> asm-Datei ==> MPASMWIN (mi. 40 Syntaxerrors

Eine genaue Fehler beschreibung gibt es nie.Entweder Schreiben ging 
schief oder lapidar 40 Errors

Dieter

von Peter (Gast)


Lesenswert?

>Also ganz  genau:
>Eine genaue Fehler beschreibung gibt es nie.Entweder Schreiben ging
>schief oder lapidar 40 Errors

Ist es denn soooooo schwierig, diese 40 Syntaxerrors mittels Copy+Paste 
hier zu deponieren? So kann und wird Dir niemand helfen.

von Dieter (Gast)


Lesenswert?

s. Anhang

von ... .. (docean) Benutzerseite


Lesenswert?

nö nix dran...

von PeterF (Gast)


Angehängte Dateien:

Lesenswert?

Dann nochmal!
Anhang:
BlinkLED.ERR

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Aha.
1
Warning[215] C:\BLINKLED.ASM 8 : Processor superseded by command line.  Verify processor symbol.
2
Message[301] C:\PROGRAMME\MICROCHIP\MPASM SUITE\P16F819.INC 36 : MESSAGE: (Processor-header file mismatch.  Verify selected processor.)

Und was sagt uns das? Du verwendest P16F819.INC, hast aber in der 
Kommandozeile oder sonstwo einen anderen spezifiziert.
1
Error[126]   C:\BLINKLED.ASM 10 : Argument out of range (not a valid config register address)

Diese wie auch alle folgenden Fehlermeldungen enthält eine Zeilennummer. 
Und einen Dateinamen.

Mal in die Datei reingesehen, was an der betreffenden Stelle steht?

von Dieter (Gast)


Angehängte Dateien:

Lesenswert?

Also einmal alles:
1
;Program compiled by GCBASIC, which is the best language for PICs, ever!
2
;Something not working? Email me at hconsidine@bigpond.com
3
;GCBASIC Version: 0.9 29/10/2006
4
5
;********************************************************************************
6
7
;Set up the assembler options (Chip type, clock source, other bits and pieces)
8
 LIST p=16F819, r=DEC
9
#include <P16F819.inc>
10
 __CONFIG _HS_OSC & _WDT_OFF & _LVP_OFF
11
12
;********************************************************************************
13
14
;Set aside memory locations for variables
15
DELAYTEMP  equ  32
16
DELAYTEMP2  equ  33
17
DELAYTEMP4  equ  34
18
SysWaitTempMS  equ  35
19
SysWaitTempS  equ  36
20
21
;********************************************************************************
22
23
;Jump to initialisation code when PIC is reset
24
  ORG  0
25
  call  InitSys
26
  goto  SystemInitialise
27
28
;********************************************************************************
29
30
;Interrupt routine
31
  ORG  4
32
INTERRUPT
33
;Interrupt code will be inserted here in a later version
34
  retfie  
35
36
;********************************************************************************
37
38
;Various initialisation routines, automatically called by GCBASIC
39
SystemInitialise
40
41
;********************************************************************************
42
43
;Start of the main program
44
  banksel  TRISB
45
  bcf  TRISB,0
46
  bcf  TRISB,1
47
START    
48
  banksel  PORTB
49
  bsf  PORTB,0
50
  bcf  PORTB,1
51
  movlw  1
52
  movwf  SysWaitTempS
53
  call  Delay_S
54
  bcf  PORTB,0
55
  bsf  PORTB,1
56
  movlw  1
57
  movwf  SysWaitTempS
58
  call  Delay_S
59
  goto  START
60
BASPROGRAMEND    
61
  sleep  
62
  goto  $
63
    
64
;********************************************************************************
65
;Subroutines included in program
66
;********************************************************************************
67
    
68
Delay_MS    
69
DMS_START    
70
  movlw  10
71
  movwf  DELAYTEMP2
72
DMS_OUTER    
73
  movlw  166
74
  movwf  DELAYTEMP
75
DMS_INNER    
76
  decfsz  DELAYTEMP, F
77
  goto  DMS_INNER
78
  decfsz  DELAYTEMP2, F
79
  goto  DMS_OUTER
80
  decfsz  SysWaitTempMS, F
81
  goto  DMS_START
82
  return  
83
    
84
;********************************************************************************
85
    
86
Delay_S    
87
DS_START    
88
  movlw  10
89
  movwf  DELAYTEMP4
90
DS_OUTER    
91
  movlw  100
92
  movwf  SysWaitTempMS
93
  call  Delay_MS
94
  decfsz  DELAYTEMP4, F
95
  goto  DS_OUTER
96
  decfsz  SysWaitTempS, F
97
  goto  DS_START
98
  return  
99
    
100
;********************************************************************************
101
    
102
InitSys    
103
  clrf  PORTA
104
  clrf  PORTB
105
  bcf  ADCON0,ADON
106
  SET  ADFM  0
107
  SET  PCFG2  1
108
  SET  PCFG1  1
109
  SET  PCFG0  0
110
  return  
111
    
112
;********************************************************************************
113
114
 END

Der GCB-Code:
1
            'PIC Konfiguration
2
            #chip 16F819, 20
3
4
5
            'Bestimme PIN Richtung
6
            dir PORTB.0 OUT
7
8
9
            'Hauptprogramm
10
            do
11
             set PORTB.0 ON
12
             Wait 1 sec
13
             set PORTB.0 OFF
14
             Wait 1 sec
15
            loop

Die ERR-Datei ist schon mal vorher im Anhang, hier noch die LST-Datei

Peter

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.