DSPRelated.com
Forums

data flash without sdk

Started by Paul Dalluge September 4, 2003
HI,

I am using 56801 with limited memory space and want to save constants
into a certain data flash area while flash programming.
I am able to do it using the sdk, but unfortunately this takes up to much
space.
Does anyone have an example of writing to the data flash without using the
sdk?
Thanks.

Paul

Paul Dalluge
Senior Engineering Technician
Control Concepts, Inc.
952-474-6200



Hi Paul,

Attached is an example of how to program the data flash without using the SDK
driver. This project was written by Daniel Malik from Motorola.

Best Regards,

Fabio Estevam -----Original Message-----
From: Paul Dalluge [mailto:]
Sent: quinta-feira, 4 de setembro de 2003 15:58
To:
Subject: [motoroladsp] data flash without sdk HI,

I am using 56801 with limited memory space and want to save constants
into a certain data flash area while flash programming.
I am able to do it using the sdk, but unfortunately this takes up to much
space.
Does anyone have an example of writing to the data flash without using the
sdk?
Thanks.

Paul

Paul Dalluge
Senior Engineering Technician
Control Concepts, Inc.
952-474-6200
_____________________________________
Note: If you do a simple "reply" with your email client, only the author of this
message will receive your answer. You need to do a "reply all" if you want your
answer to be distributed to the entire group.

_____________________________________
About this discussion group:

To Join:

To Post:

To Leave:

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/


Attachment (not stored)
flashprg_new.zip
Type: application/octet-stream


Fabio,

Yahoo no longer distributes attachments nor stores them on their
servers, can you please upload the file to the files section of the
message board or provide a link to its location.

Thanks,

Jacob

--- In , Estevam Fabio-R49496
<Fabio.Estevam@m...> wrote:
> Hi Paul,
>
> Attached is an example of how to program the data flash without
using the SDK driver. This project was written by Daniel Malik from
Motorola.
>
> Best Regards,
>
> Fabio Estevam > -----Original Message-----
> From: Paul Dalluge [mailto:pdalluge@c...]
> Sent: quinta-feira, 4 de setembro de 2003 15:58
> To:
> Subject: [motoroladsp] data flash without sdk > HI,
>
> I am using 56801 with limited memory space and want to save
constants
> into a certain data flash area while flash programming.
> I am able to do it using the sdk, but unfortunately this takes up
to much
> space.
> Does anyone have an example of writing to the data flash without
using the
> sdk?
> Thanks.
>
> Paul >
>
> Paul Dalluge
> Senior Engineering Technician
> Control Concepts, Inc.
> 952-474-6200 >
> _____________________________________
> Note: If you do a simple "reply" with your email client, only the
author of this message will receive your answer. You need to do
a "reply all" if you want your answer to be distributed to the entire
group.
>
> _____________________________________
> About this discussion group:
>
> To Join:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/



RE: [motoroladsp] Re: data flash without sdk

Jacob,

Are you sure?

I, for one, received Fabios EMail complete with ZIP file attachment.

Regards,

Steve.

Steve Chaplin
Principal Engineer
Zero 88 Lighting Ltd

> -----Original Message-----
> From: Jacob Christ [mailto:j...@pontech.com]
> Sent: 07 September 2003 17:33
> To: m...@yahoogroups.com
> Subject: [motoroladsp] Re: data flash without sdk
>
>
> Fabio,
>
> Yahoo no longer distributes attachments nor stores them on their
> servers, can you please upload the file to the files section of the
> message board or provide a link to its location.
>
> Thanks,
>
> Jacob
>
> --- In m...@yahoogroups.com, Estevam Fabio-R49496
> <Fabio.Estevam@m...> wrote:
> > Hi Paul,
> >
> > Attached is an example of how to program the data flash without
> using the SDK driver. This project was written by Daniel Malik from
> Motorola.
> >
> > Best Regards,
> >
> > Fabio Estevam
> >
> >
> > -----Original Message-----
> > From: Paul Dalluge [mailto:pdalluge@c...]
> > Sent: quinta-feira, 4 de setembro de 2003 15:58
> > To: m...@yahoogroups.com
> > Subject: [motoroladsp] data flash without sdk
> >
> >
> > HI,
> >
> > I am using 56801 with limited memory space and want to save
> constants
> > into a certain data flash area while flash programming.
> > I am able to do it using the sdk, but unfortunately this takes up
> to much
> > space.
> > Does anyone have an example of writing to the data flash without
> using the
> > sdk?
> > Thanks.
> >
> > Paul
> >
> >
> >
> >
> > Paul Dalluge
> > Senior Engineering Technician
> > Control Concepts, Inc.
> > 952-474-6200
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the
> author of this message will receive your answer.  You need to do
> a "reply all" if you want your answer to be distributed to the entire
> group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join:  m...@yahoogroups.com
> >
> > To Post:  m...@yahoogroups.com
> >
> > To Leave: m...@yahoogroups.com
> >
> > Archives: http://www.yahoogroups.com/group/motoroladsp
> >
> > More Groups: http://www.dsprelated.com/groups.php3
> > 
> >
> > " TARGET="_blank">http://docs.yahoo.com/info/terms/
>
>
>
> ------------------------ Yahoo! Groups Sponsor
> ---------------------~-->
> Buy Ink Cartridges or Refill Kits for Your HP, Epson, Canon or Lexmark
> Printer at Myinks.com. Free s/h on orders $50 or more to the
> US & Canada. http://www.c1tracking.com/l.asp?cidU11
> http://us.click.yahoo.com/l.m7sD/LIdGAA/qnsNAA/PNArlB/TM
> --------------------------
> -------~->
>
> _____________________________________
> Note: If you do a simple "reply" with your email client, only
> the author of this message will receive your answer.  You
> need to do a "reply all" if you want your answer to be
> distributed to the entire group.
>
> _____________________________________
> About this discussion group:
>
> To Join:  m...@yahoogroups.com
>
> To Post:  m...@yahoogroups.com
>
> To Leave: m...@yahoogroups.com
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3

>
> " TARGET="_blank">http://docs.yahoo.com/info/terms/



intY has scanned this email for all known viruses (www.inty.com)

intY has scanned this email for all known viruses (www.inty.com)


On second thought I think maybe I didn't get it file because I just
get a daily digest. I'm going to switch to individual e-mails and
maybe I'll get them in the future.

Thanks to Fabio and every one who did get the file and sent it to me,
I now have pleanty of copies.

Jacob

--- In , "Jacob Christ" <jacob@p...> wrote:
> Fabio,
>
> Yahoo no longer distributes attachments nor stores them on their
> servers, can you please upload the file to the files section of the
> message board or provide a link to its location.
>
> Thanks,
>
> Jacob
>
> --- In , Estevam Fabio-R49496
> <Fabio.Estevam@m...> wrote:
> > Hi Paul,
> >
> > Attached is an example of how to program the data flash without
> using the SDK driver. This project was written by Daniel Malik from
> Motorola.
> >
> > Best Regards,
> >
> > Fabio Estevam
> >
> >
> > -----Original Message-----
> > From: Paul Dalluge [mailto:pdalluge@c...]
> > Sent: quinta-feira, 4 de setembro de 2003 15:58
> > To:
> > Subject: [motoroladsp] data flash without sdk
> >
> >
> > HI,
> >
> > I am using 56801 with limited memory space and want to save
> constants
> > into a certain data flash area while flash programming.
> > I am able to do it using the sdk, but unfortunately this takes up
> to much
> > space.
> > Does anyone have an example of writing to the data flash without
> using the
> > sdk?
> > Thanks.
> >
> > Paul
> >
> >
> >
> >
> > Paul Dalluge
> > Senior Engineering Technician
> > Control Concepts, Inc.
> > 952-474-6200
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the
> author of this message will receive your answer. You need to do
> a "reply all" if you want your answer to be distributed to the
entire
> group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join:
> >
> > To Post:
> >
> > To Leave:
> >
> > Archives: http://www.yahoogroups.com/group/motoroladsp
> >
> > More Groups: http://www.dsprelated.com/groups.php3
> >
> >
> > ">http://docs.yahoo.com/info/terms/




Okay Fabio,

I'm using your routine for programming flash and it's working great.
Problem is when I try to erase the board hangs. If I'm in debug mode
sometimes the program will break on an unhanded interrupt. If I
single step through the erase function it works great. My gut
feeling is that I'm out of stack space, but when do a dflash_program
call I'm using more stack space (due to my parse routine) so I'm
pretty sure that's not the problem.

Changes I'm made:
I changed the var names to use the arch.h naming convention.
I added setting the ControlReg back to zero (though I don't think
it's needed due to the while loop just above, the UM said to do so).

Jacob ---------

void dflash_erase(unsigned int addr)
{
unsigned int readsyscntl;
ArchIO.DataFlash.IntSourceReg = 0;
ArchIO.DataFlash.ProgramReg = 0;
ArchIO.DataFlash.EraseReg = 0;
ArchIO.DataFlash.ControlReg = 0;
while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
ArchIO.DataFlash.EraseReg = 0x4000 + ( ( addr >> 8) & 0x007f);
*(unsigned int *)addr=0;
while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
ArchIO.DataFlash.EraseReg = 0;
ArchIO.DataFlash.ControlReg = 0;
} --- In , Estevam Fabio-R49496
<Fabio.Estevam@m...> wrote:
> Hi Paul,
>
> Attached is an example of how to program the data flash without
using the SDK driver. This project was written by Daniel Malik from
Motorola.
>
> Best Regards,
>
> Fabio Estevam > -----Original Message-----
> From: Paul Dalluge [mailto:pdalluge@c...]
> Sent: quinta-feira, 4 de setembro de 2003 15:58
> To:
> Subject: [motoroladsp] data flash without sdk > HI,
>
> I am using 56801 with limited memory space and want to save
constants
> into a certain data flash area while flash programming.
> I am able to do it using the sdk, but unfortunately this takes up
to much
> space.
> Does anyone have an example of writing to the data flash without
using the
> sdk?
> Thanks.
>
> Paul >
>
> Paul Dalluge
> Senior Engineering Technician
> Control Concepts, Inc.
> 952-474-6200 >
> _____________________________________
> Note: If you do a simple "reply" with your email client, only the
author of this message will receive your answer. You need to do
a "reply all" if you want your answer to be distributed to the entire
group.
>
> _____________________________________
> About this discussion group:
>
> To Join:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/


Fabio / group,

I'm using your (Fabio's) routine for programming flash and it's
working great. Problem is when I try to erase the board hangs. If
I'm in debug mode sometimes the program will break on an unhanded
interrupt. If I single step through the erase function it works
great. My gut feeling is that I'm out of stack space, but when do a
dflash_program call I'm using more stack space (due to my parse
routine) so I'm pretty sure that's not the problem.

Changes I'm made:
I changed the var names to use the arch.h naming convention.
I added setting the ControlReg back to zero (though I don't think
it's needed due to the while loop just above, the UM said to do so).

Jacob
--------
void dflash_erase(unsigned int addr)
{
unsigned int readsyscntl;
ArchIO.DataFlash.IntSourceReg = 0;
ArchIO.DataFlash.ProgramReg = 0;
ArchIO.DataFlash.EraseReg = 0;
ArchIO.DataFlash.ControlReg = 0;
while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
ArchIO.DataFlash.EraseReg = 0x4000 + ( ( addr >> 8) & 0x007f);
*(unsigned int *)addr=0;
while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
ArchIO.DataFlash.EraseReg = 0;
ArchIO.DataFlash.ControlReg = 0;
}
--- In , Estevam Fabio-R49496
<Fabio.Estevam@m...> wrote:
> Hi Paul,
>
> Attached is an example of how to program the data flash without
using the SDK driver. This project was written by Daniel Malik from
Motorola.
>
> Best Regards,
>
> Fabio Estevam > -----Original Message-----
> From: Paul Dalluge [mailto:pdalluge@c...]
> Sent: quinta-feira, 4 de setembro de 2003 15:58
> To:
> Subject: [motoroladsp] data flash without sdk > HI,
>
> I am using 56801 with limited memory space and want to save
constants
> into a certain data flash area while flash programming.
> I am able to do it using the sdk, but unfortunately this takes up
to much
> space.
> Does anyone have an example of writing to the data flash without
using the
> sdk?
> Thanks.
>
> Paul >
>
> Paul Dalluge
> Senior Engineering Technician
> Control Concepts, Inc.
> 952-474-6200 >
> _____________________________________
> Note: If you do a simple "reply" with your email client, only the
author of this message will receive your answer. You need to do
a "reply all" if you want your answer to be distributed to the entire
group.
>
> _____________________________________
> About this discussion group:
>
> To Join:
>
> To Post:
>
> To Leave:
>
> Archives: http://www.yahoogroups.com/group/motoroladsp
>
> More Groups: http://www.dsprelated.com/groups.php3 > ">http://docs.yahoo.com/info/terms/



I think I found my answer in some of Art Johnsons's old posts. I'm
not sure what's being accesed, but when I disable interrupts prior to
erasing the flash every thing works great. So I'm assuming that
there is some constant data that CW is putting into xFlash that is
being accessed in one of my interrupts, and that this access durring
the erase is what was casing my program to crash. This may also
explain why when I single stepped through the erase code the program
didn't crash.

Jacob

--- In , "Jacob Christ" <jacob@p...> wrote:
> Fabio / group,
>
> I'm using your (Fabio's) routine for programming flash and it's
> working great. Problem is when I try to erase the board hangs. If
> I'm in debug mode sometimes the program will break on an unhanded
> interrupt. If I single step through the erase function it works
> great. My gut feeling is that I'm out of stack space, but when do
a
> dflash_program call I'm using more stack space (due to my parse
> routine) so I'm pretty sure that's not the problem.
>
> Changes I'm made:
> I changed the var names to use the arch.h naming convention.
> I added setting the ControlReg back to zero (though I don't think
> it's needed due to the while loop just above, the UM said to do so).
>
> Jacob
> --------
> void dflash_erase(unsigned int addr)
> {
> unsigned int readsyscntl;
> ArchIO.DataFlash.IntSourceReg = 0;
> ArchIO.DataFlash.ProgramReg = 0;
> ArchIO.DataFlash.EraseReg = 0;
> ArchIO.DataFlash.ControlReg = 0;
> while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
> ArchIO.DataFlash.EraseReg = 0x4000 + ( ( addr >> 8) & 0x007f);
> *(unsigned int *)addr=0;
> while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
> ArchIO.DataFlash.EraseReg = 0;
> ArchIO.DataFlash.ControlReg = 0;
> } >
> --- In , Estevam Fabio-R49496
> <Fabio.Estevam@m...> wrote:
> > Hi Paul,
> >
> > Attached is an example of how to program the data flash without
> using the SDK driver. This project was written by Daniel Malik from
> Motorola.
> >
> > Best Regards,
> >
> > Fabio Estevam
> >
> >
> > -----Original Message-----
> > From: Paul Dalluge [mailto:pdalluge@c...]
> > Sent: quinta-feira, 4 de setembro de 2003 15:58
> > To:
> > Subject: [motoroladsp] data flash without sdk
> >
> >
> > HI,
> >
> > I am using 56801 with limited memory space and want to save
> constants
> > into a certain data flash area while flash programming.
> > I am able to do it using the sdk, but unfortunately this takes up
> to much
> > space.
> > Does anyone have an example of writing to the data flash without
> using the
> > sdk?
> > Thanks.
> >
> > Paul
> >
> >
> >
> >
> > Paul Dalluge
> > Senior Engineering Technician
> > Control Concepts, Inc.
> > 952-474-6200
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the
> author of this message will receive your answer. You need to do
> a "reply all" if you want your answer to be distributed to the
entire
> group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join:
> >
> > To Post:
> >
> > To Leave:
> >
> > Archives: http://www.yahoogroups.com/group/motoroladsp
> >
> > More Groups: http://www.dsprelated.com/groups.php3
> >
> >
> > ">http://docs.yahoo.com/info/terms/




Fabio,

I am using the SDK quad timer. I think that is pretty much the only
interrupt I am using that would fire during the flash erase. I think I was
just getting lucky that programming was working, takes less time so I guess
less likely to have an interrupt during the write. I also have an array of
that is being accessed during the interrupt, but suspect that it should be
in ram because it's not const.

I'll check it out. Thanks,

Jacob

-----Original Message-----
From: Estevam Fabio-R49496 [mailto:]
Sent: Tuesday, September 30, 2003 12:17 PM
To: 'Jacob Christ'
Subject: RE: [motoroladsp] Re: data flash without sdk Hi Jacob,

Are you using quad timer from SDK? If I remember correctly SDK places some
data in data flash and maybe this can be the cause for the problem you have
seen.

Thanks,

Fabio

-----Original Message-----
From: Jacob Christ [mailto:]
Sent: ter-feira, 30 de setembro de 2003 15:43
To:
Subject: [motoroladsp] Re: data flash without sdk I think I found my answer in some of Art Johnsons's old posts. I'm
not sure what's being accesed, but when I disable interrupts prior to
erasing the flash every thing works great. So I'm assuming that
there is some constant data that CW is putting into xFlash that is
being accessed in one of my interrupts, and that this access durring
the erase is what was casing my program to crash. This may also
explain why when I single stepped through the erase code the program
didn't crash.

Jacob

--- In , "Jacob Christ" <jacob@p...> wrote:
> Fabio / group,
>
> I'm using your (Fabio's) routine for programming flash and it's
> working great. Problem is when I try to erase the board hangs. If
> I'm in debug mode sometimes the program will break on an unhanded
> interrupt. If I single step through the erase function it works
> great. My gut feeling is that I'm out of stack space, but when do
a
> dflash_program call I'm using more stack space (due to my parse
> routine) so I'm pretty sure that's not the problem.
>
> Changes I'm made:
> I changed the var names to use the arch.h naming convention.
> I added setting the ControlReg back to zero (though I don't think
> it's needed due to the while loop just above, the UM said to do so).
>
> Jacob
> --------
> void dflash_erase(unsigned int addr)
> {
> unsigned int readsyscntl;
> ArchIO.DataFlash.IntSourceReg = 0;
> ArchIO.DataFlash.ProgramReg = 0;
> ArchIO.DataFlash.EraseReg = 0;
> ArchIO.DataFlash.ControlReg = 0;
> while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
> ArchIO.DataFlash.EraseReg = 0x4000 + ( ( addr >> 8) & 0x007f);
> *(unsigned int *)addr=0;
> while ((readsyscntl = ArchIO.DataFlash.ControlReg) & 0x8000 );
> ArchIO.DataFlash.EraseReg = 0;
> ArchIO.DataFlash.ControlReg = 0;
> } >
> --- In , Estevam Fabio-R49496
> <Fabio.Estevam@m...> wrote:
> > Hi Paul,
> >
> > Attached is an example of how to program the data flash without
> using the SDK driver. This project was written by Daniel Malik from
> Motorola.
> >
> > Best Regards,
> >
> > Fabio Estevam
> >
> >
> > -----Original Message-----
> > From: Paul Dalluge [mailto:pdalluge@c...]
> > Sent: quinta-feira, 4 de setembro de 2003 15:58
> > To:
> > Subject: [motoroladsp] data flash without sdk
> >
> >
> > HI,
> >
> > I am using 56801 with limited memory space and want to save
> constants
> > into a certain data flash area while flash programming.
> > I am able to do it using the sdk, but unfortunately this takes up
> to much
> > space.
> > Does anyone have an example of writing to the data flash without
> using the
> > sdk?
> > Thanks.
> >
> > Paul
> >
> >
> >
> >
> > Paul Dalluge
> > Senior Engineering Technician
> > Control Concepts, Inc.
> > 952-474-6200
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the
> author of this message will receive your answer. You need to do
> a "reply all" if you want your answer to be distributed to the
entire
> group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join:
> >
> > To Post:
> >
> > To Leave:
> >
> > Archives: http://www.yahoogroups.com/group/motoroladsp
> >
> > More Groups: http://www.dsprelated.com/groups.php3
> >
> >
> > ">http://docs.yahoo.com/info/terms/
_____________________________________
Note: If you do a simple "reply" with your email client, only the author of
this message will receive your answer. You need to do a "reply all" if you
want your answer to be distributed to the entire group.

_____________________________________
About this discussion group:

To Join:

To Post:

To Leave:

Archives: http://www.yahoogroups.com/group/motoroladsp

More Groups: http://www.dsprelated.com/groups.php3 ">http://docs.yahoo.com/info/terms/