SmartSnippets DA1459x SDK
Data Structures | Functions
mcif.h File Reference

Monitor and Control I/F API. More...

#include "osal.h"

Go to the source code of this file.

Data Structures

struct  mcif_ascii_parse_element_s
 MCIF-ASCII command description structure. More...
 

Macros

CONFIGURATION

Configuration of MCIF

#define MCIF_CLIENTS_NR   1
 Maximum number of MCIF clients. More...
 
#define MCIF_USE_TASK_NOTIFICATIONS   0
 Use task notifications to indicate a new frame. More...
 
#define MCIF_MAX_ARGS   2
 Maximum number of arguments to use. More...
 
#define MCIF_UART   HW_UART1
 MCIF UART. More...
 
#define MCIF_GPIO_PORT_UART_RX   HW_GPIO_PORT_1
 MCIF UART RX GPIO PORT. More...
 
#define MCIF_GPIO_PIN_UART_RX   HW_GPIO_PIN_5
 MCIF UART RX GPIO PIN. More...
 
#define MCIF_GPIO_PORT_UART_TX   HW_GPIO_PORT_1
 MCIF UART TX GPIO PORT. More...
 
#define MCIF_GPIO_PIN_UART_TX   HW_GPIO_PIN_0
 MCIF UART TX GPIO PIN. More...
 
#define MCIF_UART_BAUDRATE   HW_UART_BAUDRATE_115200
 MCIF UART baudrate. More...
 
#define MCIF_UART_DATABITS   HW_UART_DATABITS_8
 MCIF UART databits. More...
 
#define MCIF_UART_STOPBITS   HW_UART_STOPBITS_1
 MCIF UART stopbits. More...
 
#define MCIF_UART_PARITY   HW_UART_PARITY_NONE
 MCIF UART parity. More...
 
#define MCIF_LOG_TAG   30
 MCIF LOG TAG. More...
 
#define MCIF_ASCII_MAX_LINE   80
 MCIF ASCII max line. More...
 
#define MCIF_UART_DMA_BUFFER   MCIF_ASCII_MAX_LINE
 MCIF MAX DMA Buffer. More...
 
#define MCIF_ASCII_PROMPT   "\r\nEnter command (or ?/help for help) > "
 MCIF ASCII prompt. More...
 

Functions

void mcif_setup_queues (int cli_id, OS_QUEUE txq, OS_QUEUE rxq)
 Setup the MCIF queues. More...
 
OS_BASE_TYPE mcif_queue_send (int cli_id, const void *item, OS_TICK_TIME wait_ticks)
 Send a message to MCIF. More...
 
void mcif_init (void)
 Initialize MCIF framework. More...
 

MCIF ASCII Specific Definitions

The following definitions are specific to the MCIF ASCII backend. The MCIF ASCII backend can be used to provide a simple terminal-like interface to the application through the UART.

#define MCIF_ASCII_FLAGS_MASK   0x3
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG1_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG2_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG3_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG4_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG5_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG6_NA   0x0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG1_INT   0x1
 ASCII command-set integer argument X. More...
 
#define MCIF_ASCII_FLAGS_ARG2_INT   0x4
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG3_INT   0x10
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG4_INT   0x40
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG5_INT   0x100
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG6_INT   0x400
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG1_STR   0x2
 ASCII command-set string argument X. More...
 
#define MCIF_ASCII_FLAGS_ARG2_STR   0x8
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG3_STR   0x20
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG4_STR   0x80
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG5_STR   0x200
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG6_STR   0x800
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG1_STR_NO_WHITE   0x3
 ASCII command-set string with no whitespace argument X. More...
 
#define MCIF_ASCII_FLAGS_ARG2_STR_NO_WHITE   0xc
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG3_STR_NO_WHITE   0x30
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG4_STR_NO_WHITE   0xc0
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG5_STR_NO_WHITE   0x300
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_ARG6_STR_NO_WHITE   0xc00
 ASCII command-set argument X not-applicable flag. More...
 
#define MCIF_ASCII_FLAGS_AUTO_REPLY   0x80
 ASCII command-set auto-reply flag. More...
 
typedef void(* cmd_cb_t) (xQueueHandle txq, void *arg1, void *arg2)
 ASCII command-set argument X not-applicable flag. More...
 
void mcif_ascii_parse_message (const struct mcif_ascii_parse_element_s *parse_table, xQueueHandle txq, struct mcif_message_s *msg)
 Parse the received message. More...
 
void mcif_ascii_print_prompt (const struct mcif_ascii_parse_element_s *parse_table, xQueueHandle txq, struct mcif_message_s *msg) __WEAK
 Print a prompt. More...
 
void mcif_ascii_print_unknown (const struct mcif_ascii_parse_element_s *parse_table, xQueueHandle txq, struct mcif_message_s *msg) __WEAK
 Print the unknown command message. More...
 
void mcif_ascii_send_response (const struct mcif_ascii_parse_element_s *parse_table, xQueueHandle txq, struct mcif_message_s *msg, bool show_prompt)
 Send a response to the terminal. More...
 

Detailed Description

Monitor and Control I/F API.

Copyright (C) 2015-2023 Renesas Electronics Corporation and/or its affiliates. All rights reserved. Confidential Information.

This software ("Software") is supplied by Renesas Electronics Corporation and/or its affiliates ("Renesas"). Renesas grants you a personal, non-exclusive, non-transferable, revocable, non-sub-licensable right and license to use the Software, solely if used in or together with Renesas products. You may make copies of this Software, provided this copyright notice and disclaimer ("Notice") is included in all such copies. Renesas reserves the right to change or discontinue the Software at any time without notice.

THE SOFTWARE IS PROVIDED "AS IS". RENESAS DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. TO THE MAXIMUM EXTENT PERMITTED UNDER LAW, IN NO EVENT SHALL RENESAS BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE, EVEN IF RENESAS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. USE OF THIS SOFTWARE MAY BE SUBJECT TO TERMS AND CONDITIONS CONTAINED IN AN ADDITIONAL AGREEMENT BETWEEN YOU AND RENESAS. IN CASE OF CONFLICT BETWEEN THE TERMS OF THIS NOTICE AND ANY SUCH ADDITIONAL LICENSE AGREEMENT, THE TERMS OF THE AGREEMENT SHALL TAKE PRECEDENCE. BY CONTINUING TO USE THIS SOFTWARE, YOU AGREE TO THE TERMS OF THIS NOTICE.IF YOU DO NOT AGREE TO THESE TERMS, YOU ARE NOT PERMITTED TO USE THIS SOFTWARE.