We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
i try to read out CFI Information from the flash. The Problem is, my Program runs from the Flash. So i think it will not be possible and i have to move the code for reading the cfi Info to the RAM? How can i do this? I fount different flash drivers in c-code on the net. How can they work? How can i compile it using keil to run them from RAM?
no no,
i am talking about an external flash memory device. my c167 has no build in flash.
cfi means common flash interface, you can ask external flash devices for information about them. you write therefor a spezial code to a spezial adress -> the flash gives you information about it under special adresses, but you cannot read the normal data until you malke a flash reset. the problem is you now cant run the program from this flash to the same time ;-).
Ah, ok, maybe your code helps me, thanks, i will look if i can get it run.
hm, no, it will not work...
any other hints?
What can't work? The concept is the same just the location of RAM would be different. For the C167 you can use internal RAM for example XRAM (0xE000) or IRAM (0xF600).
Basically your code needs to be copied from ROM (Flash) to RAM. The linker locates the code so the addresses are at the final location but since RAM is volatile you need to copy if from ROM to RAM.
If you state clearly what problem you are having then others could try to help.
Yes, but i am not allowed to disable Interrupts, i have a komplex Software with realtime OS working.
But it is working now, i do it in start167.a66 using asm. Just a simple failure prevented this from running yesterday.
thanks.