OK, Here's what I have done so far:
- I deleted mbed-src to hopefully get me back to where I was. I seem to be able to compile things OK still.
I'm now presented with varying versions of how the mbed library is depicted with each of my programs. On some the gear icon (or biscuit-with-a-hole-in-it icon) expands to one or two entries, on some I get everything:
Are these the mbed library thingamajigs I should delete?
What's the difference between the plain biscuit
and the one with the green arrow
on it?
I realise that this is turning into a random and unrelated question session on my part and I apologise. I should really explain where I'm coming from.
I have a Nucleo STM32 F411RE board I'm wanting to develop with. My language of choice is Pascal, and for that reason we got the MikroE ARM Pascal compiler. Having played with the mbed environment, it has made me more interested in the possibility of coding in C/C++ than I ever was however, particularly as I found out pretty quickly that the MikroE compiler doesn't support enumerated types, which pretty much renders the idea of directly reusing any of the code I have written over the last 40-odd years a no-show. I'm not sure they should be calling it a Pascal compiler when they don't fully adhere to the language spec.
Whatever. The combination of the MikroE compiler IDE and Nucleo board should still be a useful debugging environment if I can get it to work.
So I figure the first step is to get the embedded version of "Hello World" - the flashing LED - working. My first attempt was unsuccessful, and that would likely be for a variety of reasons, so I thought I would compare the assembler output generated by both approaches to see if I can spot where the differences lie, and whether I need to tweak some setting.
The MikroE compiler provides a mixed source/assembler/hex output file and (although the format is *appalling* for a file that is supposed to be human-readable!) it tells me what the setup and initialisation code does. I was hoping to see the same thing for the mbed compilation of Nucleo_blink_led.
I don't really want to go down the road of setting up a local build of the mbed tool chain - I just want to be able to generate Nucleo_blink_led.lst. I'll probably fall back on hand-disassembly of the binary file.
I appreciate your input, and thanks for reading this far. Any comments you have are welcomed.
Cheers,
Ross
I'm interested in getting the layout of the flash program memory for the STM32 F411RE microcontroller. I gather that an mbed compile and load does no more than generate a binary file and copy it to the ST board. I've done a bit of poking around the binary file produced by the Mbed compiler, and I also note that the binary file seems to be loaded verbatim into the flash memory code space.
My end game is to program in Pascal using MikroE tools. I have a program that compiles and produces a binary file, but it doesn't successfully run after loading into the ST board. I can see that the binary file is different in the first few bytes, and I think that the fifth byte is some sort of configuration byte for the particular micro variant. The next 380 bytes or so are some sort of vector table and then the code proper starts.
But these are all guesses. Is it documented somewhere?
I realise that what I'm asking is partly ST stuff, but their memory map for the device doesn't break it down any further than "512k bytes of code memory". I figure more people who are likely to know are looking at this forum.
(Migrated from the "Questions" section)