DSPRelated.com
Forums

Changing the BOOTMAP bit on 56F805 or family member

Started by dsp_sense October 26, 2004

Does anyone have any experience with changing the bootmap bit in
SYS_CNTRL on the fly? I am trying to change it to 1 to access an
external peripheral in program space, but the processor appears to
reset/crash when I do this. I'd like to be able to change it to 1,
read the peripheral and then change it back to zero so I can still
access the bootflash.

Thanks for the help.




Try this:
 
#define BOOTMAP_A 0xFFEF
#define BOOTMAP_B 0x0010
#define SYS_BASE 0x0000
#define SYS_CNTL (volatile unsigned short*)(SYS_BASE+0x0)
To set bootmap B use:
*SYS_CNTL = *SYS_CNTL | BOOTMAP_B;
 
To re-set to bootmap A use:
*SYS_CNTL = *SYS_CNTL & BOOTMAP_A;
 
Hope this helps
 
J.K. Herrera
 
 
-------------- Original message --------------

Does anyone have any experience with changing the bootmap bit in
SYS_CNTRL on the fly? I am trying to change it to 1 to access an
external peripheral in program space, but the processor appears to
reset/crash when I do this. I'd like to be able to change it to 1,
read the peripheral and then change it back to zero so I can still
access the bootflash.

Thanks for the help.


_____________________________________
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



This is basically what I was trying, except that I was using a bit set/bit clear. I tried it your way and still have the same problem... the processor resets/crashes.
 
Also, I noticed you showed SYS_BASE defined as 0x0, I believe it should be 0xc00 or am I missing something?
 
Thanks.

j...@comcast.net wrote:
Try this:
 
#define BOOTMAP_A 0xFFEF
#define BOOTMAP_B 0x0010
#define SYS_BASE 0x0000
#define SYS_CNTL (volatile unsigned short*)(SYS_BASE+0x0)
To set bootmap B use:
*SYS_CNTL = *SYS_CNTL | BOOTMAP_B;
 
To re-set to bootmap A use:
*SYS_CNTL = *SYS_CNTL & BOOTMAP_A;
 
Hope this helps
 
J.K. Herrera
 
 
-------------- Original message --------------

Does anyone have any experience with changing the bootmap bit in
SYS_CNTRL on the fly? I am trying to change it to 1 to access an
external peripheral in program space, but the processor appears to
reset/crash when I do this. I'd like to be able to change it to 1,
read the peripheral and then change it back to zero so I can still
access the bootflash.

Thanks for the help.


_____________________________________
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



Post your free ad now! Yahoo! Canada Personals