Hej Kasper ...
Arbejder selv med AVR til daglig på arbejdet (arbejder i et udviklings firma
som laver hardware/software til industri) og så at du også roder en del med
det så jeg har lige at par spørgsmål af nysgerrighed
> jeg sidder igen og leger med min atmega og imagecraft...
Hvilken ATm bruger du, kører du med extern memory ?
Hvad er dit forhold til Imagecraft's compiler ?
vi købte 9 licenser til compileren men syntes den var alt for "akav" og
skiftede til CodeVision med stor glæde ... en dyr affære hehe
> Jeg har fået muret et netværksinterface sammen, og kan nu pinge etc...
Hvilken kreds ? RTL eller Crystal ? måske noget helt tredje ?
er det et evaluation board eller noget hjemme strikket fusk ? (har selv
atmel's EIT kit)
> men så vil jeg gerne have en hjemmeside på... der er lavet dertil.. men
ikke
> lige til imagecraft..
Hvad har du af storage memory til at gemme sådant i, extern data flash ?
> min compiler kommer med fejl på dette :
>
> const struct fsdata_file file_cgi_stats[] = {{NULL, data_cgi_stats,
> data_cgi_stats + 11, sizeof(data_cgi_stats) - 11}};
>
> Fejlen er :
>
> C:\icc\bin\imakew -f nic.mak
>
iccavr -c -IC:\icc\include\ -e -D__IMAGECRAFT__ -DATMEGA -l -g -Mavr_enhance
> d D:\UIP6.0\fs.c
>
iccavr -c -IC:\icc\include\ -e -D__IMAGECRAFT__ -DATMEGA -l -g -Mavr_enhance
> d D:\UIP6.0\fsdata.c
> !E D:\UIP6.0\fsdata.c(667): cannot initialize undefined `incomplete struct
> fsdata_file defined at D:\UIP6.0\fsdata.c(667)'
> !E D:\UIP6.0\fsdata.c(667): skipping `{' `NULL' `,' `data_cgi_stats' `,'
> `data_cgi_stats' `+' `11' ... up to `;'
> !E D:\UIP6.0\fsdata.c(667): syntax error; found `;' expecting `}'
> An integer divide by zero was encountered at address 0x00425364.iccavr:
> can't execute `C:\icc\bin\iccomavr.exe'
> C:\icc\bin\imakew.exe: Error code 100
> Done: there are error(s). Exit code: 100
>
> declaration (er i en H fil) :
>
> struct fsdata_file {
> const struct fsdata_file *next;
> const char *name;
> const char *data;
> const int len;
> #ifdef FS_STATISTICS
> #if FS_STATISTICS == 1
> u16_t count;
> #endif /* FS_STATISTICS */
> #endif /* FS_STATISTICS */
> };
Ved ikke 100% om det er derfor ...
men din const struct fsdata_file *next; kan ihvertfald i CVAVR ikke laves
når din structure ikke er i samme memory område altså også en const i flash
f.eks .
const struct fsdata_file
{
const struct fsdata_file *next;
const char *name;
const char *data;
const int len;
#ifdef FS_STATISTICS
#if FS_STATISTICS == 1
u16_t count;
#endif /* FS_STATISTICS */
#endif /* FS_STATISTICS */
};
M.v.h.
Lasse Madsen
H-TECH AS
www.h-tech.dk