Firmware description
6.6.4
Acknowledgment Frames
These frames are particular data frames sent to an external device connected to the COMM
module, not allowed to be sent via PLM. They are used by the GUI interface to acknowledge
the commands sent to the module.
From the COMM interface module (SPI, USART, USB, etc.)
uint8_t *buffer;
buffer[0] = 12;
buffer[1] = APP_ACK_FRAME;
buffer[2,3] = target_module.group;
buffer[4,5,6,7] = target_module.address;
buffer[8] = (APP_ftype_t)ack_group_type;
buffer[9] = command_echo;
buffer[10,11] = CRC16;
From / to communication interface (PLM, SPI, USART, USB, etc.)
APP_userdata_t frame;
frame.source = SOURCE_PLM / ...;
frame.type = APP_ACK_FRAME;
frame.len = 2;
frame.broadcast = FALSE;
frame.group = target_module.group;
frame.address = target_module.address;
frame.data[0] = (APP_ftype_t)ack_group_type;
frame.data[1] = command_echo;
6.6.5
Programming Frames
Programming frames are used to program the PLM module parameters, as the static
address, the AESkey (if encryption is used), the data link stack working model and to clear
or read programming parameters. Normally these commands are sent locally to the module
from an external device connected to the COMM peripheral (SPI, USART, USB, etc.).
From the COMM interface module (SPI, USART, USB, etc.)
uint8_t *buffer;
buffer[0] = n + 11;
buffer[1] = APP_PROGRAMMING_FRAME;
buffer[2,3] = target_module.group;
buffer[4,5,6,7] = target_module.address;
buffer[8] = (APP_PROG_CMD_t)command;
buffer[9,..9+n-1] = programming_data[n];
buffer[9+n,9+n+1] = CRC16;
From / to communication interface (PLM, SPI, USART, USB, etc.)
APP_userdata_t frame;
frame.source = SOURCE_PLM / ...;
frame.type = APP_PROGRAMMING_FRAME;
frame.len = n + 1;
frame.broadcast = TRUE / FALSE;
frame.group = target_module.group;
frame.address = target_module.address;
frame.data[0] = (APP_PROG_CMD_t)command;
frame.data[n] = programming_data[n];
Programming commands list
0x01 = PROG_CMD_ENTER_PROG_MODE
36/56
// Error frame payload length (12)
// ACK frame type
// Target device group (2 bytes)
// Target device address (4 bytes)
// Frame type to acknowledge
// Acknowledged command echo
// CRC-16
// Data source PLM, ...
// ACK frame type
// ACK frame payload length
// ACK frames are sent in unicast
// Target device group (2 bytes)
// Target device address (4 bytes)
// Frame type to acknowledge
// Acknowledged command echo
(service, programming, ...)
// Programming frame payload length (n + 11)
// Programming frame type
// Target device group (2 bytes)
// Target device address (4 bytes)
// Programming command
// Programming data
// CRC-16
// Data source PLM, ...
// Programming frame type
// Programming frame payload length
// TRUE = broadcast, FALSE = unicast
// Programming device group (2 bytes)
// Programming device address (4 bytes)
// Programming command
// Programming data
DocID024383 Rev 1
UM1619
Need help?
Do you have a question about the STEVAL-IHP005V1 and is the answer not in the manual?