Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Message

RE: [AVR-Chat] How To: declare an array of pointers in flash pointing to character arrays in flash

2006-03-08 by Chuck Hackett

> From: Mike Perks
> 
> Chuck Hackett wrote:
> 
> > I'm attempting to convert the AVR Butterfly demo program to WinAVR
> > from Atmel's
> > CodeVision version.  The program currently contains something like:
> >
> > __flash char foo_1[] =   { 0, 1 };
> > __flash char foo_2[] =   { 2, 3 };
> >
> > __flash char __flash *foobar[] = { foo_1, foo_2 };
> > ....
>
> I cut and pasted some working code and changed the names. It should work
> for you.
> 
> #include <avr/pgmspace.h>
> 
> static const prog_uint8_t foo_1[] = {0, 1 };
> static const prog_uint8_t foo_2[] = {2, 3 };
> 
> const prog_uint8_t *foobar[] PROGMEM = { foo_1, foo_2 };
> ....

Thanks Mike.  This, along with dozens of other changes and at least I have a
clean compile now.

I'm off to try loading the Butterfly now.

Cheers,

Chuck Hackett
"Good judgment comes from experience, experience comes from bad judgment"
7.5" gauge Union Pacific Northern (4-8-4) 844
http://www.whitetrout.net/Chuck

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.