Re: SRAM mit C programmieren Kategorie: Programmierung C (von Franz-Peter - 8.05.2013 10:59) | ||
Als Antwort auf Re: SRAM mit C programmieren von bierbach - 7.05.2013 22:43 | ||
| ||
> > > > > > > > Hallo, guten Tag. > > > > > Wer kann mir diesen "C-Code" mal umsetzen in dem "C-Code" von der C-Control Pro mit M128? > > > > > Es zeigt, wie man das extern SRam vom Mege128 lesen und beschreiben kann: > > > > > > > > > > ---------------------------------------------------------------------------------------------- > > > > > Initialisierung: > > > > > > > > > > MCUCR |= (1 << SRE); external RAM enable > > > > > XMCRA |= (1 << SRW00) | (1 << SRW01) | (1 << SRW11); Waitstates enable > > > > > XMCRB |= (0 << XMM0) | (0 << XMM1) | (0 < XMM2); Alle Addressleitungen > > > > > gueltig > > > > > > > > > > Zugriff: > > > > > unsigned char *p,v; > > > > > p = 0x2000; Gewuenschte RAM Addresse 0x12000 ist nur Beispiel > > > > > *p = 0x55; Schreiben ins RAM > > > > > v = *p; Lesen aus dem RAM > > > > > ---------------------------------------------------------------------------------------------- > > > > > > > > > > Danke. > > > > > > > > > > Gruss > > > > > peter > > > > > > > > > > > > > > > > > Es kommen viele Fehlermeldungen , ich dachte in "C" wäre es Kompatibel : > > > > --------------------------------------------------- > > > > void main(void) > > > > { > > > > MCUCR |= (1 << SRE) ; > > > > XMCRA |= (1 << SRW00) | (1 << SRW01) | (1 << SRW11) ; > > > > XMCRB |= (0 << XMM0) | (0 << XMM1) | (0 < XMM2) ; > > > > > > > > unsigned char *p,v ; > > > > p=0x2000 ; > > > > *p=0x55 ; > > > > v=*p; > > > > } > > > > ----------------------------------------------------- > > > > > > > > �bersetze Projekt sram > > > > C-Control Pro Compiler (C) 2011 Conrad Electronic > > > > Durchlaufe Pass 1 > > > > D:C-Control-Propebi-ccsramsram.cc(4,11): Syntax Fehler - unerwartetes Symbol: '|=' > > > > D:C-Control-Propebi-ccsramsram.cc(4,23): Syntax Fehler - erwartete ';' , gefunden ')' > > > > D:C-Control-Propebi-ccsramsram.cc(5,11): Syntax Fehler - unerwartetes Symbol: '|=' > > > > D:C-Control-Propebi-ccsramsram.cc(5,25): Syntax Fehler - erwartete ';' , gefunden ')' > > > > D:C-Control-Propebi-ccsramsram.cc(6,11): Syntax Fehler - unerwartetes Symbol: '|=' > > > > D:C-Control-Propebi-ccsramsram.cc(6,24): Syntax Fehler - erwartete ';' , gefunden ')' > > > > D:C-Control-Propebi-ccsramsram.cc(8,19): Syntax Fehler - erwartete 'Symbolnamen' , gefunden '*' > > > > D:C-Control-Propebi-ccsramsram.cc(10,5): Syntax Fehler - erwartete '}' , gefunden '*' > > > > D:C-Control-Propebi-ccsramsram.cc(10,7): Syntax Fehler - unerwartetes Symbol: '=' > > > > D:C-Control-Propebi-ccsramsram.cc(11,6): Syntax Fehler - unerwartetes Symbol: '=' > > > > D:C-Control-Propebi-ccsramsram.cc(11,9): Syntax Fehler - unerwartetes Symbol: ';' > > > > 11 Fehler - Kompilation abgebrochen. > > > > Schreibe Symboldaten - 8903 bytes.. > > > > > > > > Wie kann ich den Zeiger ersetzen und wie dise Symbole : '|=' ? > > > > > > > > Danke. > > > > > > > > Gruss > > > > peter > > > > > > Wo finde ich die Liste für die Pinbezeichnung, damit ich die in CC benutzen kann: > > > zb : MCUCR |= (1 << SRE) > > > > > > Danke. > > > > > > Gruss > > > peter > > > > So ich habe jetzt mal weiter geforscht und dieses in der WinAVR-C gefunden : > > #define MCUCR _SFR_IO8(0x35) > > #define XMCRB _SFR_MEM8(0x6C) > > #define XMCRA _SFR_MEM8(0x6D) > > #define SRW00 2 > > #define SRW01 3 > > #define SRW11 1 > > #define XMM2 2 > > #define XMM1 1 > > #define XMM0 0 > > #define SRE 7 > > > > > > Nur wie setze ich das für einen Aufruf um ? > > #define MCUCR _SFR_IO8(0x35) > > #define XMCRB _SFR_MEM8(0x6C) > > #define XMCRA _SFR_MEM8(0x6D) > > > > > > Danke. > > > > Gruss > > peter > > > > So ich bin wieder etwas weiter : > ---------------------------------------------------------------- > void MCUCR $opc(0x35)(void); > void XMCRB $opc(0x6C)(void); > void XMCRA $opc(0x6D)(void); > #define SRW00 2 > #define SRW01 3 > #define SRW11 1 > #define XMM2 2 > #define XMM1 1 > #define XMM0 0 > #define SRE 7 > > void main(void) > { > unsigned char *p,v ; > MCUCR = MCUCR |(1 << SRE) ; > XMCRA = XMCRA |(1 << SRW00) | (1 << SRW01) | (1 << SRW11) ; > XMCRB = XMCRB | (0 << XMM0) | (0 << XMM1) | (0 < XMM2) ; > > > p=0x2000 ; > *p=0x55 ; > v=*p ; > } > --------------------------------------------------------------------------- > > Jetzt kommen noch Fehler beim Pointer. > Ist der Code dann so lauffähig ? > Vielleich gibt es hier CC-Kenner für den M128-Pro ? > > > Danke. > > Gruss > peter Hallo Peter, vielleicht solltest Du auch mal die Doku lesen, bevor Du hier das Forum bombardierst. In der Hilfe steht gleich am Anfang zum CompactC Compiler, dass er u.a. keine Zeiger unterstützt. Franz-Peter | ||
Antwort schreiben Antworten: Re: SRAM mit C programmieren (von bierbach - 8.05.2013 13:00) Re: SRAM mit C programmieren (von PeterS - 8.05.2013 13:47) Re: SRAM mit C programmieren (von bierbach - 8.05.2013 14:40) Re: SRAM mit C programmieren (von PeterS - 8.05.2013 14:54) Re: SRAM mit C programmieren (von bierbach - 8.05.2013 15:55) Re: SRAM mit C programmieren (von bierbach - 8.05.2013 17:23) Re: SRAM mit C programmieren (von bierbach - 8.05.2013 17:28) Re: SRAM mit C programmieren (von PeterS - 8.05.2013 18:38) Re: SRAM mit C programmieren (von bierbach - 8.05.2013 20:19) Re: SRAM mit C programmieren (von PeterS - 8.05.2013 16:27) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum