Read/Write Single/Multiple Registers via SWD.
More...
Read/Write Single/Multiple Registers via SWD.
Register access is a single 32-bit register Read or Write. Register address depends on the DPBANKSEL/APBANKSEL and A3..2. The command can execute several read/write operations on DP/AP registers. Response is in the same order as request, but might be shorter in case of errors.
Transfer is aborted on the following errors:
- Protocol Error
- Target FAULT response
- Target WAIT responses exceed configured value
- Value Mismatch (Read Register with Value Match)
Command to request the SWD data transfer.
BYTE | BYTE **********| BYTE *************| WORD *********|
> 0x15 | Transfer Count | Transfer Request | Transfer Data |
******|****************|+++++++++++++++++++|+++++++++++++++|
Respons to the data transfer request.
BYTE | BYTE **********| BYTE *************| WORD *********|
< 0x15 | Transfer Count | Transfer Response | Transfer Data |
******|****************|*******************|+++++++++++++++|
Where
- Transfer Count: Number of transfers: 1..255
- Host requests the number of transfers.
- Target responds with actual number of transfers executed.
- Transfer Request: Contains information about requested access from host
- Bit0: APnDP 0 := DP (Debug Port) 1 := AP (Access Port)
- Bit1: RnW 0 := Write Register 1 := Read Register
- Bit2: A2 := Register Address bit 2
- Bit3: A3 := Register Address bit 3
- Bit4: Value Match (only valid for Read Register) 0 := Normal Read Register 1 := Read Register with Value Match
- Bit5: Match Mask (only valid for Write Register) 0 := Normal Write Register 1 := Write Match Mask (instead of Register)
- Transfer Response: Contains information about response from target
- Bit2..0: ACK (Acknowledge) 001B - OK (Success) 010B - WAIT 100B - FAULT
- Bit3: Protocol Error
- Bit4: Value Mismatch (Read Register with Value Match)
- Transfer Data: Register value and optional match items
- Write Register:
- Request:
WORD **********|
> Register Value |
****************|
- Response: No Data
- Read Register:
- Request: No Data
- Response:
WORD **********|
< Register Value |
***************|
- Write Match Mask:
- Request:
WORD ******|
> Match Mask |
************|
- Response: No Data
- Read Register with Value Match:
- Request:
WORD *******|
> Match Value |
*************|
- Response: No Data