Electronic Components Datasheet Search
  New Zealand  ▼
ALLDATASHEET.CO.NZ

X  

NRF52820-QDAA-R Datasheet(PDF) 265 Page - Nordic Semiconductor

Part # NRF52820-QDAA-R
Description  nRF52820
PDF  437 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
Manufacturer  NORDIC [Nordic Semiconductor]
Direct Link  https://www.nordicsemi.com/
Logo NORDIC - Nordic Semiconductor

NRF52820-QDAA-R Datasheet(HTML) 265 Page - Nordic Semiconductor

Back Button NRF52820-QDAA-R Datasheet HTML 261Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 262Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 263Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 264Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 265Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 266Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 267Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 268Page - Nordic Semiconductor NRF52820-QDAA-R Datasheet HTML 269Page - Nordic Semiconductor Next Button
Zoom Inzoom in Zoom Outzoom out
 265 / 437 page
background image
Peripherals
Channel
Type
Register Cluster
TXD
READER
TXD
RXD
WRITER
RXD
Table 81: SPIS EasyDMA Channels
For detailed information regarding the use of EasyDMA, see EasyDMA on page 37.
If RXD.MAXCNT is larger than TXD.MAXCNT, the remaining transmitted bytes will contain the value defined
in the ORC register.
The END event indicates that EasyDMA has finished accessing the buffer in RAM.
6.17.3 SPI slave operation
SPI slave uses two memory pointers, RXD.PTR and TXD.PTR, that point to the RXD buffer (receive buffer)
and TXD buffer (transmit buffer) respectively. Since these buffers are located in RAM, which can be
accessed by both the SPI slave and the CPU, a hardware based semaphore mechanism is implemented to
enable safe sharing.
See SPI transaction when shortcut between END and ACQUIRE is enabled on page 266.
Before the CPU can safely update the RXD.PTR and TXD.PTR pointers, it must first acquire the SPI
semaphore. The CPU can acquire the semaphore by triggering the ACQUIRE task and then receiving the
ACQUIRED event. When the CPU has updated the RXD.PTR and TXD.PTR pointers the CPU must release the
semaphore before the SPI slave will be able to acquire it. The CPU releases the semaphore by triggering
the RELEASE task. This is illustrated in SPI transaction when shortcut between END and ACQUIRE is
enabled on page 266. Triggering the RELEASE task when the semaphore is not granted to the CPU will
have no effect.
The semaphore mechanism does not, at any time, prevent the CPU from performing read or write access
to the RXD.PTR register, the TXD.PTR registers, or the RAM that these pointers are pointing to. The
semaphore is only telling when these can be updated by the CPU so that safe sharing is achieved.
The semaphore is by default assigned to the CPU after the SPI slave is enabled. No ACQUIRED event will be
generated for this initial semaphore handover. An ACQUIRED event will be generated immediately if the
ACQUIRE task is triggered while the semaphore is assigned to the CPU.
The SPI slave will try to acquire the semaphore when CSN goes low. If the SPI slave does not manage to
acquire the semaphore at this point, the transaction will be ignored. This means that all incoming data on
MOSI will be discarded, and the DEF (default) character will be clocked out on the MISO line throughout
the whole transaction. This will also be the case even if the semaphore is released by the CPU during the
transaction. In case of a race condition where the CPU and the SPI slave try to acquire the semaphore at
the same time, as illustrated in lifeline item 2 in SPI transaction when shortcut between END and ACQUIRE
is enabled on page 266, the semaphore will be granted to the CPU.
If the SPI slave acquires the semaphore, the transaction will be granted. The incoming data on MOSI will
be stored in the RXD buffer and the data in the TXD buffer will be clocked out on MISO.
When a granted transaction is completed and CSN goes high, the SPI slave will automatically release the
semaphore and generate the END event.
As long as the semaphore is available, the SPI slave can be granted multiple transactions one after the
other. If the CPU is not able to reconfigure the TXD.PTR and RXD.PTR between granted transactions, the
same TX data will be clocked out and the RX buffers will be overwritten. To prevent this from happening,
the END_ACQUIRE shortcut can be used. With this shortcut enabled, the semaphore will be handed over
to the CPU automatically after the granted transaction has completed. This enables the CPU to update the
TXPTR and RXPTR between every granted transaction.
4463_156 v1.0
265



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


Datasheet Download

Go To PDF Page


Link URL



Does ALLDATASHEET help your business so far?  [ DONATE ] 

About Alldatasheet   |   Advertisement   |   Contact us   |   Privacy Policy   |   Link to Datasheet    |   Link Exchange   |   Manufacturer List
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com