This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Is the SPIS TXDPTR register unable to point to Flash above 0xFFFF?

I have written some code that uses the SPIS to transmit data. One of the bursts is constant, for example I have a fixed sequence to send using the SPIS and so if I define it as a static const array. The compiler/linker places at 0x2xxxx, i.e. above the SoftDevice in flash. It appears though that the TXDPTR register only has the bottom 16 bits and a top bit that can be set in this register. This means that I cannot use fixed buffers, and that I must maintain these buffers in ram so that the TXDPTR register can contain a pointer to them.

Is this correct?

I have tried in the debugger writing 0xFFFFFFFF to the TXDPTR register and I get 0x2000FFFF, implying I can only point to 0x00000000 - 0x0000FFFF, and 0x20000000 - 0x2000FFFF. Is this correct?

Related