forked from xuos/xiuos
fix Ubiquitous/XiZi/board/ok1052-c compile error
This commit is contained in:
parent
73d10380ea
commit
31697c14f2
|
@ -66,11 +66,21 @@ int MountSDCard(void)
|
||||||
#include "fsl_gpio.h"
|
#include "fsl_gpio.h"
|
||||||
#include "fsl_lpuart.h"
|
#include "fsl_lpuart.h"
|
||||||
|
|
||||||
|
#ifdef BSP_USING_LWIP
|
||||||
#include <connect_ethernet.h>
|
#include <connect_ethernet.h>
|
||||||
|
#endif
|
||||||
|
#ifdef BSP_USING_LPUART
|
||||||
#include <connect_uart.h>
|
#include <connect_uart.h>
|
||||||
|
#endif
|
||||||
|
#ifdef BSP_USING_ADC
|
||||||
#include <connect_adc.h>
|
#include <connect_adc.h>
|
||||||
|
#endif
|
||||||
|
#ifdef BSP_USING_SPI
|
||||||
#include <connect_spi.h>
|
#include <connect_spi.h>
|
||||||
|
#endif
|
||||||
|
#ifdef BSP_USING_RTC
|
||||||
#include <connect_rtc.h>
|
#include <connect_rtc.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#define NVIC_PRIORITYGROUP_0 0x00000007U /*!< 0 bits for pre-emption priority
|
#define NVIC_PRIORITYGROUP_0 0x00000007U /*!< 0 bits for pre-emption priority
|
||||||
4 bits for subpriority */
|
4 bits for subpriority */
|
||||||
|
|
|
@ -22,7 +22,7 @@ menuconfig BSP_USING_GPIO
|
||||||
|
|
||||||
menuconfig BSP_USING_I2C
|
menuconfig BSP_USING_I2C
|
||||||
bool "Using I2C device"
|
bool "Using I2C device"
|
||||||
default y
|
default n
|
||||||
select RESOURCES_I2C
|
select RESOURCES_I2C
|
||||||
|
|
||||||
if BSP_USING_I2C
|
if BSP_USING_I2C
|
||||||
|
@ -31,7 +31,7 @@ menuconfig BSP_USING_I2C
|
||||||
|
|
||||||
menuconfig BSP_USING_ADC
|
menuconfig BSP_USING_ADC
|
||||||
bool "Using ADC device"
|
bool "Using ADC device"
|
||||||
default y
|
default n
|
||||||
select RESOURCES_ADC
|
select RESOURCES_ADC
|
||||||
|
|
||||||
if BSP_USING_ADC
|
if BSP_USING_ADC
|
||||||
|
@ -40,7 +40,7 @@ menuconfig BSP_USING_ADC
|
||||||
|
|
||||||
menuconfig BSP_USING_SPI
|
menuconfig BSP_USING_SPI
|
||||||
bool "Using SPI device"
|
bool "Using SPI device"
|
||||||
default y
|
default n
|
||||||
select RESOURCES_SPI
|
select RESOURCES_SPI
|
||||||
|
|
||||||
if BSP_USING_SPI
|
if BSP_USING_SPI
|
||||||
|
|
|
@ -28,7 +28,6 @@ ifeq ($(CONFIG_BSP_USING_RTC),y)
|
||||||
SRC_DIR += rtc
|
SRC_DIR += rtc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
ifeq ($(CONFIG_BSP_USING_SDIO),y)
|
ifeq ($(CONFIG_BSP_USING_SDIO),y)
|
||||||
SRC_DIR += sdio
|
SRC_DIR += sdio
|
||||||
endif
|
endif
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_adc.h
|
* @file connect_adc.h
|
||||||
* @brief define stm32f407-st-discovery adc function and struct
|
* @brief define imxrt1052-baord adc function and struct
|
||||||
* @version 1.1
|
* @version 1.1
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2021-12-28
|
* @date 2021-12-28
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_gpio.h
|
* @file connect_gpio.h
|
||||||
* @brief define ok1052-c gpio function and struct
|
* @brief define imxrt1052-baord gpio function and struct
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2022-03-01
|
* @date 2022-03-01
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_i2c.h
|
* @file connect_i2c.h
|
||||||
* @brief define stm32f407-st-discovery-board i2c function and struct
|
* @brief define imxrt1052-baord i2c function and struct
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2021-04-25
|
* @date 2021-04-25
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_rtc.h
|
* @file connect_rtc.h
|
||||||
* @brief define ok1052-c rtc function and structure
|
* @brief define imxrt1052-baord rtc function and structure
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2022-03-01
|
* @date 2022-03-01
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_sdio.h
|
* @file connect_sdio.h
|
||||||
* @brief define OK1052-board sdio function and struct
|
* @brief define imxrt1052-baord sdio function and struct
|
||||||
* @version 2.0
|
* @version 2.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2022-01-24
|
* @date 2022-01-24
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_spi.h
|
* @file connect_spi.h
|
||||||
* @brief define stm32f407-st-discovery-board spi function and struct
|
* @brief define imxrt1052-baord spi function and struct
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2021-04-25
|
* @date 2021-04-25
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_usb.h
|
* @file connect_usb.h
|
||||||
* @brief define ok1052-board usb function and struct
|
* @brief define imxrt1052-baord usb function and struct
|
||||||
* @version 2.0
|
* @version 2.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2022-02-09
|
* @date 2022-02-09
|
||||||
|
|
|
@ -1,213 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (c) 2013 - 2015, Freescale Semiconductor, Inc.
|
|
||||||
* Copyright 2016-2018 NXP
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
*
|
|
||||||
* Debug console shall provide input and output functions to scan and print formatted data.
|
|
||||||
* o Support a format specifier for PRINTF follows this prototype "%[flags][width][.precision][length]specifier"
|
|
||||||
* - [flags] :'-', '+', '#', ' ', '0'
|
|
||||||
* - [width]: number (0,1...)
|
|
||||||
* - [.precision]: number (0,1...)
|
|
||||||
* - [length]: do not support
|
|
||||||
* - [specifier]: 'd', 'i', 'f', 'F', 'x', 'X', 'o', 'p', 'u', 'c', 's', 'n'
|
|
||||||
* o Support a format specifier for SCANF follows this prototype " %[*][width][length]specifier"
|
|
||||||
* - [*]: is supported.
|
|
||||||
* - [width]: number (0,1...)
|
|
||||||
* - [length]: 'h', 'hh', 'l','ll','L'. ignore ('j','z','t')
|
|
||||||
* - [specifier]: 'd', 'i', 'u', 'f', 'F', 'e', 'E', 'g', 'G', 'a', 'A', 'o', 'c', 's'
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _FSL_DEBUGCONSOLE_H_
|
|
||||||
#define _FSL_DEBUGCONSOLE_H_
|
|
||||||
|
|
||||||
#include "fsl_common.h"
|
|
||||||
#include "serial_manager.h"
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @addtogroup debugconsole
|
|
||||||
* @{
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Definitions
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
extern serial_handle_t g_serialHandle; /*!< serial manager handle */
|
|
||||||
|
|
||||||
/*! @brief Definition select redirect toolchain printf, scanf to uart or not. */
|
|
||||||
#define DEBUGCONSOLE_REDIRECT_TO_TOOLCHAIN 0U /*!< Select toolchain printf and scanf. */
|
|
||||||
#define DEBUGCONSOLE_REDIRECT_TO_SDK 1U /*!< Select SDK version printf, scanf. */
|
|
||||||
#define DEBUGCONSOLE_DISABLE 2U /*!< Disable debugconsole function. */
|
|
||||||
|
|
||||||
/*! @brief Definition to select sdk or toolchain printf, scanf. The macro only support
|
|
||||||
* to be redefined in project setting.
|
|
||||||
*/
|
|
||||||
#ifndef SDK_DEBUGCONSOLE
|
|
||||||
#define SDK_DEBUGCONSOLE 1U
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Definition to select redirect toolchain printf, scanf to uart or not. */
|
|
||||||
#ifndef SDK_DEBUGCONSOLE_UART
|
|
||||||
/* mcux will handle this macro, not define it here */
|
|
||||||
#if (!defined(__MCUXPRESSO))
|
|
||||||
#define SDK_DEBUGCONSOLE_UART
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(SDK_DEBUGCONSOLE) && !(SDK_DEBUGCONSOLE)
|
|
||||||
#include <stdio.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Definition to select redirect toolchain printf, scanf to uart or not.
|
|
||||||
*
|
|
||||||
* if SDK_DEBUGCONSOLE defined to 0,it represents select toolchain printf, scanf.
|
|
||||||
* if SDK_DEBUGCONSOLE defined to 1,it represents select SDK version printf, scanf.
|
|
||||||
* if SDK_DEBUGCONSOLE defined to 2,it represents disable debugconsole function.
|
|
||||||
*/
|
|
||||||
#if SDK_DEBUGCONSOLE == DEBUGCONSOLE_DISABLE /* Disable debug console */
|
|
||||||
#define PRINTF
|
|
||||||
#define SCANF
|
|
||||||
#define PUTCHAR
|
|
||||||
#define GETCHAR
|
|
||||||
#elif SDK_DEBUGCONSOLE == DEBUGCONSOLE_REDIRECT_TO_SDK /* Select printf, scanf, putchar, getchar of SDK version. */
|
|
||||||
#define PRINTF DbgConsole_Printf
|
|
||||||
#define SCANF DbgConsole_Scanf
|
|
||||||
#define PUTCHAR DbgConsole_Putchar
|
|
||||||
#define GETCHAR DbgConsole_Getchar
|
|
||||||
#elif SDK_DEBUGCONSOLE == DEBUGCONSOLE_REDIRECT_TO_TOOLCHAIN /* Select printf, scanf, putchar, getchar of toolchain. \ \
|
|
||||||
*/
|
|
||||||
#define PRINTF printf
|
|
||||||
#define SCANF scanf
|
|
||||||
#define PUTCHAR putchar
|
|
||||||
#define GETCHAR getchar
|
|
||||||
#endif /* SDK_DEBUGCONSOLE */
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Prototypes
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
extern "C" {
|
|
||||||
#endif /* __cplusplus */
|
|
||||||
|
|
||||||
/*! @name Initialization*/
|
|
||||||
/* @{ */
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Initializes the peripheral used for debug messages.
|
|
||||||
*
|
|
||||||
* Call this function to enable debug log messages to be output via the specified peripheral
|
|
||||||
* initialized by the serial manager module.
|
|
||||||
* After this function has returned, stdout and stdin are connected to the selected peripheral.
|
|
||||||
*
|
|
||||||
* @param instance The instance of the module.
|
|
||||||
* @param baudRate The desired baud rate in bits per second.
|
|
||||||
* @param device Low level device type for the debug console, can be one of the following.
|
|
||||||
* @arg kSerialPort_Uart,
|
|
||||||
* @arg kSerialPort_UsbCdc
|
|
||||||
* @arg kSerialPort_UsbCdcVirtual.
|
|
||||||
* @param clkSrcFreq Frequency of peripheral source clock.
|
|
||||||
*
|
|
||||||
* @return Indicates whether initialization was successful or not.
|
|
||||||
* @retval kStatus_Success Execution successfully
|
|
||||||
*/
|
|
||||||
status_t DbgConsole_Init(uint8_t instance, uint32_t baudRate, serial_port_type_t device, uint32_t clkSrcFreq);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief De-initializes the peripheral used for debug messages.
|
|
||||||
*
|
|
||||||
* Call this function to disable debug log messages to be output via the specified peripheral
|
|
||||||
* initialized by the serial manager module.
|
|
||||||
*
|
|
||||||
* @return Indicates whether de-initialization was successful or not.
|
|
||||||
*/
|
|
||||||
status_t DbgConsole_Deinit(void);
|
|
||||||
|
|
||||||
#if SDK_DEBUGCONSOLE
|
|
||||||
/*!
|
|
||||||
* @brief Writes formatted output to the standard output stream.
|
|
||||||
*
|
|
||||||
* Call this function to write a formatted output to the standard output stream.
|
|
||||||
*
|
|
||||||
* @param formatString Format control string.
|
|
||||||
* @return Returns the number of characters printed or a negative value if an error occurs.
|
|
||||||
*/
|
|
||||||
int DbgConsole_Printf(const char *formatString, ...);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Writes a character to stdout.
|
|
||||||
*
|
|
||||||
* Call this function to write a character to stdout.
|
|
||||||
*
|
|
||||||
* @param ch Character to be written.
|
|
||||||
* @return Returns the character written.
|
|
||||||
*/
|
|
||||||
int DbgConsole_Putchar(int ch);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Reads formatted data from the standard input stream.
|
|
||||||
*
|
|
||||||
* Call this function to read formatted data from the standard input stream.
|
|
||||||
*
|
|
||||||
* @note Due the limitation in the BM OSA environment (CPU is blocked in the function,
|
|
||||||
* other tasks will not be scheduled), the function cannot be used when the
|
|
||||||
* DEBUG_CONSOLE_TRANSFER_NON_BLOCKING is set in the BM OSA environment.
|
|
||||||
* And an error is returned when the function called in this case. The suggestion
|
|
||||||
* is that polling the non-blocking function DbgConsole_TryGetchar to get the input char.
|
|
||||||
*
|
|
||||||
* @param formatString Format control string.
|
|
||||||
* @return Returns the number of fields successfully converted and assigned.
|
|
||||||
*/
|
|
||||||
int DbgConsole_Scanf(char *formatString, ...);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Reads a character from standard input.
|
|
||||||
*
|
|
||||||
* Call this function to read a character from standard input.
|
|
||||||
*
|
|
||||||
* @note Due the limitation in the BM OSA environment (CPU is blocked in the function,
|
|
||||||
* other tasks will not be scheduled), the function cannot be used when the
|
|
||||||
* DEBUG_CONSOLE_TRANSFER_NON_BLOCKING is set in the BM OSA environment.
|
|
||||||
* And an error is returned when the function called in this case. The suggestion
|
|
||||||
* is that polling the non-blocking function DbgConsole_TryGetchar to get the input char.
|
|
||||||
*
|
|
||||||
* @return Returns the character read.
|
|
||||||
*/
|
|
||||||
int DbgConsole_Getchar(void);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Debug console flush.
|
|
||||||
*
|
|
||||||
* Call this function to wait the tx buffer empty.
|
|
||||||
* If interrupt transfer is using, make sure the global IRQ is enable before call this function
|
|
||||||
* This function should be called when
|
|
||||||
* 1, before enter power down mode
|
|
||||||
* 2, log is required to print to terminal immediately
|
|
||||||
* @return Indicates whether wait idle was successful or not.
|
|
||||||
*/
|
|
||||||
status_t DbgConsole_Flush(void);
|
|
||||||
|
|
||||||
#ifdef DEBUG_CONSOLE_TRANSFER_NON_BLOCKING
|
|
||||||
/*!
|
|
||||||
* @brief Debug console try to get char
|
|
||||||
* This function provides a API which will not block current task, if character is
|
|
||||||
* available return it, otherwise return fail.
|
|
||||||
* @param ch the address of char to receive
|
|
||||||
* @return Indicates get char was successful or not.
|
|
||||||
*/
|
|
||||||
status_t DbgConsole_TryGetchar(char *ch);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* SDK_DEBUGCONSOLE */
|
|
||||||
|
|
||||||
/*! @} */
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
}
|
|
||||||
#endif /* __cplusplus */
|
|
||||||
|
|
||||||
/*! @} */
|
|
||||||
|
|
||||||
#endif /* _FSL_DEBUGCONSOLE_H_ */
|
|
|
@ -1,158 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2017 - 2019 NXP
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
*/
|
|
||||||
#ifndef _FSL_DEBUG_CONSOLE_CONF_H_
|
|
||||||
#define _FSL_DEBUG_CONSOLE_CONF_H_
|
|
||||||
|
|
||||||
/****************Debug console configuration********************/
|
|
||||||
|
|
||||||
/*! @brief If Non-blocking mode is needed, please define it at project setting,
|
|
||||||
* otherwise blocking mode is the default transfer mode.
|
|
||||||
* Warning: If you want to use non-blocking transfer,please make sure the corresponding
|
|
||||||
* IO interrupt is enable, otherwise there is no output.
|
|
||||||
* And non-blocking is combine with buffer, no matter bare-metal or rtos.
|
|
||||||
* Below shows how to configure in your project if you want to use non-blocking mode.
|
|
||||||
* For IAR, right click project and select "Options", define it in "C/C++ Compiler->Preprocessor->Defined symbols".
|
|
||||||
* For KEIL, click "Options for Target…", define it in "C/C++->Preprocessor Symbols->Define".
|
|
||||||
* For ARMGCC, open CmakeLists.txt and add the following lines,
|
|
||||||
* "SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -DDEBUG_CONSOLE_TRANSFER_NON_BLOCKING")" for debug target.
|
|
||||||
* "SET(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DDEBUG_CONSOLE_TRANSFER_NON_BLOCKING")" for release target.
|
|
||||||
* For MCUxpresso, right click project and select "Properties", define it in "C/C++ Build->Settings->MCU C
|
|
||||||
* Complier->Preprocessor".
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifdef DEBUG_CONSOLE_TRANSFER_NON_BLOCKING
|
|
||||||
/*! @brief define the transmit buffer length which is used to store the multi task log, buffer is enabled automatically
|
|
||||||
* when
|
|
||||||
* non-blocking transfer is using,
|
|
||||||
* This value will affect the RAM's ultilization, should be set per paltform's capability and software requirement.
|
|
||||||
* If it is configured too small, log maybe missed , because the log will not be
|
|
||||||
* buffered if the buffer is full, and the print will return immediately with -1.
|
|
||||||
* And this value should be multiple of 4 to meet memory alignment.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_TRANSMIT_BUFFER_LEN
|
|
||||||
#define DEBUG_CONSOLE_TRANSMIT_BUFFER_LEN (512U)
|
|
||||||
#endif /* DEBUG_CONSOLE_TRANSMIT_BUFFER_LEN */
|
|
||||||
|
|
||||||
/*! @brief define the receive buffer length which is used to store the user input, buffer is enabled automatically when
|
|
||||||
* non-blocking transfer is using,
|
|
||||||
* This value will affect the RAM's ultilization, should be set per paltform's capability and software requirement.
|
|
||||||
* If it is configured too small, log maybe missed, because buffer will be overwrited if buffer is too small.
|
|
||||||
* And this value should be multiple of 4 to meet memory alignment.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_RECEIVE_BUFFER_LEN
|
|
||||||
#define DEBUG_CONSOLE_RECEIVE_BUFFER_LEN (1024U)
|
|
||||||
#endif /* DEBUG_CONSOLE_RECEIVE_BUFFER_LEN */
|
|
||||||
|
|
||||||
/*!@ brief Whether enable the reliable TX function
|
|
||||||
* If the macro is zero, the reliable TX function of the debug console is disabled.
|
|
||||||
* When the macro is zero, the string of PRINTF will be thrown away after the transmit buffer is full.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_TX_RELIABLE_ENABLE
|
|
||||||
#define DEBUG_CONSOLE_TX_RELIABLE_ENABLE (1U)
|
|
||||||
#endif /* DEBUG_CONSOLE_RX_ENABLE */
|
|
||||||
|
|
||||||
#else
|
|
||||||
#define DEBUG_CONSOLE_TRANSFER_BLOCKING
|
|
||||||
#endif /* DEBUG_CONSOLE_TRANSFER_NON_BLOCKING */
|
|
||||||
|
|
||||||
/*!@ brief Whether enable the RX function
|
|
||||||
* If the macro is zero, the receive function of the debug console is disabled.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_RX_ENABLE
|
|
||||||
#define DEBUG_CONSOLE_RX_ENABLE (1U)
|
|
||||||
#endif /* DEBUG_CONSOLE_RX_ENABLE */
|
|
||||||
|
|
||||||
/*!@ brief define the MAX log length debug console support , that is when you call printf("log", x);, the log
|
|
||||||
* length can not bigger than this value.
|
|
||||||
* This macro decide the local log buffer length, the buffer locate at stack, the stack maybe overflow if
|
|
||||||
* the buffer is too big and current task stack size not big enough.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_PRINTF_MAX_LOG_LEN
|
|
||||||
#define DEBUG_CONSOLE_PRINTF_MAX_LOG_LEN (128U)
|
|
||||||
#endif /* DEBUG_CONSOLE_PRINTF_MAX_LOG_LEN */
|
|
||||||
|
|
||||||
/*!@ brief define the buffer support buffer scanf log length, that is when you call scanf("log", &x);, the log
|
|
||||||
* length can not bigger than this value.
|
|
||||||
* As same as the DEBUG_CONSOLE_BUFFER_PRINTF_MAX_LOG_LEN.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_SCANF_MAX_LOG_LEN
|
|
||||||
#define DEBUG_CONSOLE_SCANF_MAX_LOG_LEN (20U)
|
|
||||||
#endif /* DEBUG_CONSOLE_SCANF_MAX_LOG_LEN */
|
|
||||||
|
|
||||||
/*! @brief Debug console synchronization
|
|
||||||
* User should not change these macro for synchronization mode, but add the
|
|
||||||
* corresponding synchronization mechanism per different software environment.
|
|
||||||
* Such as, if another RTOS is used,
|
|
||||||
* add:
|
|
||||||
* #define DEBUG_CONSOLE_SYNCHRONIZATION_XXXX 3
|
|
||||||
* in this configuration file and implement the synchronization in fsl.log.c.
|
|
||||||
*/
|
|
||||||
/*! @brief synchronization for baremetal software */
|
|
||||||
#define DEBUG_CONSOLE_SYNCHRONIZATION_BM 0
|
|
||||||
/*! @brief synchronization for freertos software */
|
|
||||||
#define DEBUG_CONSOLE_SYNCHRONIZATION_FREERTOS 1
|
|
||||||
|
|
||||||
/*! @brief RTOS synchronization mechanism disable
|
|
||||||
* If not defined, default is enable, to avoid multitask log print mess.
|
|
||||||
* If other RTOS is used, you can implement the RTOS's specific synchronization mechanism in fsl.log.c
|
|
||||||
* If synchronization is disabled, log maybe messed on terminal.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_DISABLE_RTOS_SYNCHRONIZATION
|
|
||||||
#ifdef DEBUG_CONSOLE_TRANSFER_NON_BLOCKING
|
|
||||||
#ifdef FSL_RTOS_FREE_RTOS
|
|
||||||
#define DEBUG_CONSOLE_SYNCHRONIZATION_MODE DEBUG_CONSOLE_SYNCHRONIZATION_FREERTOS
|
|
||||||
#else
|
|
||||||
#define DEBUG_CONSOLE_SYNCHRONIZATION_MODE DEBUG_CONSOLE_SYNCHRONIZATION_BM
|
|
||||||
#endif /* FSL_RTOS_FREE_RTOS */
|
|
||||||
#else
|
|
||||||
#define DEBUG_CONSOLE_SYNCHRONIZATION_MODE DEBUG_CONSOLE_SYNCHRONIZATION_BM
|
|
||||||
#endif /* DEBUG_CONSOLE_TRANSFER_NON_BLOCKING */
|
|
||||||
#endif /* DEBUG_CONSOLE_DISABLE_RTOS_SYNCHRONIZATION */
|
|
||||||
|
|
||||||
/*! @brief echo function support
|
|
||||||
* If you want to use the echo function,please define DEBUG_CONSOLE_ENABLE_ECHO
|
|
||||||
* at your project setting.
|
|
||||||
*/
|
|
||||||
#ifndef DEBUG_CONSOLE_ENABLE_ECHO
|
|
||||||
#define DEBUG_CONSOLE_ENABLE_ECHO_FUNCTION 0
|
|
||||||
#else
|
|
||||||
#define DEBUG_CONSOLE_ENABLE_ECHO_FUNCTION 1
|
|
||||||
#endif /* DEBUG_CONSOLE_ENABLE_ECHO */
|
|
||||||
|
|
||||||
/*********************************************************************/
|
|
||||||
|
|
||||||
/***************Debug console other configuration*********************/
|
|
||||||
/*! @brief Definition to printf the float number. */
|
|
||||||
#ifndef PRINTF_FLOAT_ENABLE
|
|
||||||
#define PRINTF_FLOAT_ENABLE 0U
|
|
||||||
#endif /* PRINTF_FLOAT_ENABLE */
|
|
||||||
|
|
||||||
/*! @brief Definition to scanf the float number. */
|
|
||||||
#ifndef SCANF_FLOAT_ENABLE
|
|
||||||
#define SCANF_FLOAT_ENABLE 0U
|
|
||||||
#endif /* SCANF_FLOAT_ENABLE */
|
|
||||||
|
|
||||||
/*! @brief Definition to support advanced format specifier for printf. */
|
|
||||||
#ifndef PRINTF_ADVANCED_ENABLE
|
|
||||||
#define PRINTF_ADVANCED_ENABLE 0U
|
|
||||||
#endif /* PRINTF_ADVANCED_ENABLE */
|
|
||||||
|
|
||||||
/*! @brief Definition to support advanced format specifier for scanf. */
|
|
||||||
#ifndef SCANF_ADVANCED_ENABLE
|
|
||||||
#define SCANF_ADVANCED_ENABLE 0U
|
|
||||||
#endif /* SCANF_ADVANCED_ENABLE */
|
|
||||||
|
|
||||||
/*! @brief Definition to select virtual com(USB CDC) as the debug console. */
|
|
||||||
#ifndef BOARD_USE_VIRTUALCOM
|
|
||||||
#define BOARD_USE_VIRTUALCOM 0U
|
|
||||||
#endif
|
|
||||||
/*******************************************************************/
|
|
||||||
|
|
||||||
#endif /* _FSL_DEBUG_CONSOLE_CONF_H_ */
|
|
|
@ -1,548 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 NXP
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __SERIAL_MANAGER_H__
|
|
||||||
#define __SERIAL_MANAGER_H__
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @addtogroup serialmanager
|
|
||||||
* @{
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Definitions
|
|
||||||
******************************************************************************/
|
|
||||||
#ifdef DEBUG_CONSOLE_TRANSFER_NON_BLOCKING
|
|
||||||
/*! @brief Enable or disable serial manager non-blocking mode (1 - enable, 0 - disable) */
|
|
||||||
#define SERIAL_MANAGER_NON_BLOCKING_MODE (1U)
|
|
||||||
#else
|
|
||||||
#ifndef SERIAL_MANAGER_NON_BLOCKING_MODE
|
|
||||||
#define SERIAL_MANAGER_NON_BLOCKING_MODE (0U)
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Enable or disable uart port (1 - enable, 0 - disable) */
|
|
||||||
#ifndef SERIAL_PORT_TYPE_UART
|
|
||||||
#define SERIAL_PORT_TYPE_UART (1U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Enable or disable USB CDC port (1 - enable, 0 - disable) */
|
|
||||||
#ifndef SERIAL_PORT_TYPE_USBCDC
|
|
||||||
#define SERIAL_PORT_TYPE_USBCDC (0U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Enable or disable SWO port (1 - enable, 0 - disable) */
|
|
||||||
#ifndef SERIAL_PORT_TYPE_SWO
|
|
||||||
#define SERIAL_PORT_TYPE_SWO (0U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Enable or disable USB CDC virtual port (1 - enable, 0 - disable) */
|
|
||||||
#ifndef SERIAL_PORT_TYPE_USBCDC_VIRTUAL
|
|
||||||
#define SERIAL_PORT_TYPE_USBCDC_VIRTUAL (0U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief Set serial manager write handle size */
|
|
||||||
#if (defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
#define SERIAL_MANAGER_WRITE_HANDLE_SIZE (44U)
|
|
||||||
#define SERIAL_MANAGER_READ_HANDLE_SIZE (44U)
|
|
||||||
#else
|
|
||||||
#define SERIAL_MANAGER_WRITE_HANDLE_SIZE (4U)
|
|
||||||
#define SERIAL_MANAGER_READ_HANDLE_SIZE (4U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_UART) && (SERIAL_PORT_TYPE_UART > 0U))
|
|
||||||
#include "serial_port_uart.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_USBCDC) && (SERIAL_PORT_TYPE_USBCDC > 0U))
|
|
||||||
|
|
||||||
#if !(defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
#error The serial manager blocking mode cannot be supported for USB CDC.
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "serial_port_usb.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_SWO) && (SERIAL_PORT_TYPE_SWO > 0U))
|
|
||||||
#include "serial_port_swo.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_USBCDC_VIRTUAL) && (SERIAL_PORT_TYPE_USBCDC_VIRTUAL > 0U))
|
|
||||||
|
|
||||||
#if !(defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
#error The serial manager blocking mode cannot be supported for USB CDC.
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "serial_port_usb_virtual.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE_TEMP 0U
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_UART) && (SERIAL_PORT_TYPE_UART > 0U))
|
|
||||||
|
|
||||||
#if (SERIAL_PORT_UART_HANDLE_SIZE > SERIAL_MANAGER_HANDLE_SIZE_TEMP)
|
|
||||||
#undef SERIAL_MANAGER_HANDLE_SIZE_TEMP
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE_TEMP SERIAL_PORT_UART_HANDLE_SIZE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_USBCDC) && (SERIAL_PORT_TYPE_USBCDC > 0U))
|
|
||||||
|
|
||||||
#if (SERIAL_PORT_USB_CDC_HANDLE_SIZE > SERIAL_MANAGER_HANDLE_SIZE_TEMP)
|
|
||||||
#undef SERIAL_MANAGER_HANDLE_SIZE_TEMP
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE_TEMP SERIAL_PORT_USB_CDC_HANDLE_SIZE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_SWO) && (SERIAL_PORT_TYPE_SWO > 0U))
|
|
||||||
|
|
||||||
#if (SERIAL_PORT_SWO_HANDLE_SIZE > SERIAL_MANAGER_HANDLE_SIZE_TEMP)
|
|
||||||
#undef SERIAL_MANAGER_HANDLE_SIZE_TEMP
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE_TEMP SERIAL_PORT_SWO_HANDLE_SIZE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_PORT_TYPE_USBCDC_VIRTUAL) && (SERIAL_PORT_TYPE_USBCDC_VIRTUAL > 0U))
|
|
||||||
|
|
||||||
#if (SERIAL_PORT_USB_VIRTUAL_HANDLE_SIZE > SERIAL_MANAGER_HANDLE_SIZE_TEMP)
|
|
||||||
#undef SERIAL_MANAGER_HANDLE_SIZE_TEMP
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE_TEMP SERIAL_PORT_USB_VIRTUAL_HANDLE_SIZE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief SERIAL_PORT_UART_HANDLE_SIZE/SERIAL_PORT_USB_CDC_HANDLE_SIZE + serial manager dedicated size */
|
|
||||||
#if ((defined(SERIAL_MANAGER_HANDLE_SIZE_TEMP) && (SERIAL_MANAGER_HANDLE_SIZE_TEMP > 0U)))
|
|
||||||
#else
|
|
||||||
#error SERIAL_PORT_TYPE_UART, SERIAL_PORT_TYPE_USBCDC, SERIAL_PORT_TYPE_SWO and SERIAL_PORT_TYPE_USBCDC_VIRTUAL should not be cleared at same time.
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE (SERIAL_MANAGER_HANDLE_SIZE_TEMP + 120U)
|
|
||||||
#else
|
|
||||||
#define SERIAL_MANAGER_HANDLE_SIZE (SERIAL_MANAGER_HANDLE_SIZE_TEMP + 12U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define SERIAL_MANAGER_USE_COMMON_TASK (1U)
|
|
||||||
#define SERIAL_MANAGER_TASK_PRIORITY (2U)
|
|
||||||
#define SERIAL_MANAGER_TASK_STACK_SIZE (1000U)
|
|
||||||
|
|
||||||
typedef void *serial_handle_t;
|
|
||||||
typedef void *serial_write_handle_t;
|
|
||||||
typedef void *serial_read_handle_t;
|
|
||||||
|
|
||||||
/*! @brief serial port type*/
|
|
||||||
typedef enum _serial_port_type
|
|
||||||
{
|
|
||||||
kSerialPort_Uart = 1U, /*!< Serial port UART */
|
|
||||||
kSerialPort_UsbCdc, /*!< Serial port USB CDC */
|
|
||||||
kSerialPort_Swo, /*!< Serial port SWO */
|
|
||||||
kSerialPort_UsbCdcVirtual, /*!< Serial port USB CDC Virtual */
|
|
||||||
} serial_port_type_t;
|
|
||||||
|
|
||||||
/*! @brief serial manager config structure*/
|
|
||||||
typedef struct _serial_manager_config
|
|
||||||
{
|
|
||||||
uint8_t *ringBuffer; /*!< Ring buffer address, it is used to buffer data received by the hardware.
|
|
||||||
Besides, the memory space cannot be free during the lifetime of the serial
|
|
||||||
manager module. */
|
|
||||||
uint32_t ringBufferSize; /*!< The size of the ring buffer */
|
|
||||||
serial_port_type_t type; /*!< Serial port type */
|
|
||||||
void *portConfig; /*!< Serial port configuration */
|
|
||||||
} serial_manager_config_t;
|
|
||||||
|
|
||||||
/*! @brief serial manager error code*/
|
|
||||||
typedef enum _serial_manager_status
|
|
||||||
{
|
|
||||||
kStatus_SerialManager_Success = kStatus_Success, /*!< Success */
|
|
||||||
kStatus_SerialManager_Error = MAKE_STATUS(kStatusGroup_SERIALMANAGER, 1), /*!< Failed */
|
|
||||||
kStatus_SerialManager_Busy = MAKE_STATUS(kStatusGroup_SERIALMANAGER, 2), /*!< Busy */
|
|
||||||
kStatus_SerialManager_Notify = MAKE_STATUS(kStatusGroup_SERIALMANAGER, 3), /*!< Ring buffer is not empty */
|
|
||||||
kStatus_SerialManager_Canceled =
|
|
||||||
MAKE_STATUS(kStatusGroup_SERIALMANAGER, 4), /*!< the non-blocking request is canceled */
|
|
||||||
kStatus_SerialManager_HandleConflict = MAKE_STATUS(kStatusGroup_SERIALMANAGER, 5), /*!< The handle is opened */
|
|
||||||
kStatus_SerialManager_RingBufferOverflow =
|
|
||||||
MAKE_STATUS(kStatusGroup_SERIALMANAGER, 6), /*!< The ring buffer is overflowed */
|
|
||||||
} serial_manager_status_t;
|
|
||||||
|
|
||||||
/*! @brief Callback message structure */
|
|
||||||
typedef struct _serial_manager_callback_message
|
|
||||||
{
|
|
||||||
uint8_t *buffer; /*!< Transferred buffer */
|
|
||||||
uint32_t length; /*!< Transferred data length */
|
|
||||||
} serial_manager_callback_message_t;
|
|
||||||
|
|
||||||
/*! @brief callback function */
|
|
||||||
typedef void (*serial_manager_callback_t)(void *callbackParam,
|
|
||||||
serial_manager_callback_message_t *message,
|
|
||||||
serial_manager_status_t status);
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* API
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
extern "C" {
|
|
||||||
#endif /* _cplusplus */
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Initializes a serial manager module with the serial manager handle and the user configuration structure.
|
|
||||||
*
|
|
||||||
* This function configures the Serial Manager module with user-defined settings. The user can configure the
|
|
||||||
* configuration
|
|
||||||
* structure. The parameter serialHandle is a pointer to point to a memory space of size #SERIAL_MANAGER_HANDLE_SIZE
|
|
||||||
* allocated by the caller.
|
|
||||||
* The Serial Manager module supports two types of serial port, UART (includes UART, USART, LPSCI, LPUART, etc) and USB
|
|
||||||
* CDC.
|
|
||||||
* Please refer to #serial_port_type_t for serial port setting. These two types can be set by using
|
|
||||||
* #serial_manager_config_t.
|
|
||||||
*
|
|
||||||
* Example below shows how to use this API to configure the Serial Manager.
|
|
||||||
* For UART,
|
|
||||||
* @code
|
|
||||||
* #define SERIAL_MANAGER_RING_BUFFER_SIZE (256U)
|
|
||||||
* static uint8_t s_serialHandleBuffer[SERIAL_MANAGER_HANDLE_SIZE];
|
|
||||||
* static serial_handle_t s_serialHandle = &s_serialHandleBuffer[0];
|
|
||||||
* static uint8_t s_ringBuffer[SERIAL_MANAGER_RING_BUFFER_SIZE];
|
|
||||||
*
|
|
||||||
* serial_manager_config_t config;
|
|
||||||
* serial_port_uart_config_t uartConfig;
|
|
||||||
* config.type = kSerialPort_Uart;
|
|
||||||
* config.ringBuffer = &s_ringBuffer[0];
|
|
||||||
* config.ringBufferSize = SERIAL_MANAGER_RING_BUFFER_SIZE;
|
|
||||||
* uartConfig.instance = 0;
|
|
||||||
* uartConfig.clockRate = 24000000;
|
|
||||||
* uartConfig.baudRate = 115200;
|
|
||||||
* uartConfig.parityMode = kSerialManager_UartParityDisabled;
|
|
||||||
* uartConfig.stopBitCount = kSerialManager_UartOneStopBit;
|
|
||||||
* uartConfig.enableRx = 1;
|
|
||||||
* uartConfig.enableTx = 1;
|
|
||||||
* config.portConfig = &uartConfig;
|
|
||||||
* SerialManager_Init(s_serialHandle, &config);
|
|
||||||
* @endcode
|
|
||||||
* For USB CDC,
|
|
||||||
* @code
|
|
||||||
* #define SERIAL_MANAGER_RING_BUFFER_SIZE (256U)
|
|
||||||
* static uint8_t s_serialHandleBuffer[SERIAL_MANAGER_HANDLE_SIZE];
|
|
||||||
* static serial_handle_t s_serialHandle = &s_serialHandleBuffer[0];
|
|
||||||
* static uint8_t s_ringBuffer[SERIAL_MANAGER_RING_BUFFER_SIZE];
|
|
||||||
*
|
|
||||||
* serial_manager_config_t config;
|
|
||||||
* serial_port_usb_cdc_config_t usbCdcConfig;
|
|
||||||
* config.type = kSerialPort_UsbCdc;
|
|
||||||
* config.ringBuffer = &s_ringBuffer[0];
|
|
||||||
* config.ringBufferSize = SERIAL_MANAGER_RING_BUFFER_SIZE;
|
|
||||||
* usbCdcConfig.controllerIndex = kSerialManager_UsbControllerKhci0;
|
|
||||||
* config.portConfig = &usbCdcConfig;
|
|
||||||
* SerialManager_Init(s_serialHandle, &config);
|
|
||||||
* @endcode
|
|
||||||
*
|
|
||||||
* @param serialHandle Pointer to point to a memory space of size #SERIAL_MANAGER_HANDLE_SIZE allocated by the caller.
|
|
||||||
* @param config Pointer to user-defined configuration structure.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
* @retval kStatus_SerialManager_Success The Serial Manager module initialization succeed.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_Init(serial_handle_t serialHandle, serial_manager_config_t *config);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief De-initializes the serial manager module instance.
|
|
||||||
*
|
|
||||||
* This function de-initializes the serial manager module instance. If the opened writing or
|
|
||||||
* reading handle is not closed, the function will return kStatus_SerialManager_Busy.
|
|
||||||
*
|
|
||||||
* @param serialHandle The serial manager module handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success The serial manager de-initialization succeed.
|
|
||||||
* @retval kStatus_SerialManager_Busy Opened reading or writing handle is not closed.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_Deinit(serial_handle_t serialHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Opens a writing handle for the serial manager module.
|
|
||||||
*
|
|
||||||
* This function Opens a writing handle for the serial manager module. If the serial manager needs to
|
|
||||||
* be used in different tasks, the task should open a dedicated write handle for itself by calling
|
|
||||||
* #SerialManager_OpenWriteHandle. Since there can only one buffer for transmission for the writing
|
|
||||||
* handle at the same time, multiple writing handles need to be opened when the multiple transmission
|
|
||||||
* is needed for a task.
|
|
||||||
*
|
|
||||||
* @param serialHandle The serial manager module handle pointer.
|
|
||||||
* @param writeHandle The serial manager module writing handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
* @retval kStatus_SerialManager_HandleConflict The writing handle was opened.
|
|
||||||
* @retval kStatus_SerialManager_Success The writing handle is opened.
|
|
||||||
*
|
|
||||||
* Example below shows how to use this API to write data.
|
|
||||||
* For task 1,
|
|
||||||
* @code
|
|
||||||
* static uint8_t s_serialWriteHandleBuffer1[SERIAL_MANAGER_WRITE_HANDLE_SIZE];
|
|
||||||
* static serial_write_handle_t s_serialWriteHandle1 = &s_serialWriteHandleBuffer1[0];
|
|
||||||
* static uint8_t s_nonBlockingWelcome1[] = "This is non-blocking writing log for task1!\r\n";
|
|
||||||
* SerialManager_OpenWriteHandle(serialHandle, s_serialWriteHandle1);
|
|
||||||
* SerialManager_InstallTxCallback(s_serialWriteHandle1, Task1_SerialManagerTxCallback, s_serialWriteHandle1);
|
|
||||||
* SerialManager_WriteNonBlocking(s_serialWriteHandle1, s_nonBlockingWelcome1, sizeof(s_nonBlockingWelcome1) - 1);
|
|
||||||
* @endcode
|
|
||||||
* For task 2,
|
|
||||||
* @code
|
|
||||||
* static uint8_t s_serialWriteHandleBuffer2[SERIAL_MANAGER_WRITE_HANDLE_SIZE];
|
|
||||||
* static serial_write_handle_t s_serialWriteHandle2 = &s_serialWriteHandleBuffer2[0];
|
|
||||||
* static uint8_t s_nonBlockingWelcome2[] = "This is non-blocking writing log for task2!\r\n";
|
|
||||||
* SerialManager_OpenWriteHandle(serialHandle, s_serialWriteHandle2);
|
|
||||||
* SerialManager_InstallTxCallback(s_serialWriteHandle2, Task2_SerialManagerTxCallback, s_serialWriteHandle2);
|
|
||||||
* SerialManager_WriteNonBlocking(s_serialWriteHandle2, s_nonBlockingWelcome2, sizeof(s_nonBlockingWelcome2) - 1);
|
|
||||||
* @endcode
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_OpenWriteHandle(serial_handle_t serialHandle, serial_write_handle_t writeHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Closes a writing handle for the serial manager module.
|
|
||||||
*
|
|
||||||
* This function Closes a writing handle for the serial manager module.
|
|
||||||
*
|
|
||||||
* @param writeHandle The serial manager module writing handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success The writing handle is closed.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_CloseWriteHandle(serial_write_handle_t writeHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Opens a reading handle for the serial manager module.
|
|
||||||
*
|
|
||||||
* This function Opens a reading handle for the serial manager module. The reading handle can not be
|
|
||||||
* opened multiple at the same time. The error code kStatus_SerialManager_Busy would be returned when
|
|
||||||
* the previous reading handle is not closed. And There can only be one buffer for receiving for the
|
|
||||||
* reading handle at the same time.
|
|
||||||
*
|
|
||||||
* @param serialHandle The serial manager module handle pointer.
|
|
||||||
* @param readHandle The serial manager module reading handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
* @retval kStatus_SerialManager_Success The reading handle is opened.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous reading handle is not closed.
|
|
||||||
*
|
|
||||||
* Example below shows how to use this API to read data.
|
|
||||||
* @code
|
|
||||||
* static uint8_t s_serialReadHandleBuffer[SERIAL_MANAGER_READ_HANDLE_SIZE];
|
|
||||||
* static serial_read_handle_t s_serialReadHandle = &s_serialReadHandleBuffer[0];
|
|
||||||
* SerialManager_OpenReadHandle(serialHandle, s_serialReadHandle);
|
|
||||||
* static uint8_t s_nonBlockingBuffer[64];
|
|
||||||
* SerialManager_InstallRxCallback(s_serialReadHandle, APP_SerialManagerRxCallback, s_serialReadHandle);
|
|
||||||
* SerialManager_ReadNonBlocking(s_serialReadHandle, s_nonBlockingBuffer, sizeof(s_nonBlockingBuffer));
|
|
||||||
* @endcode
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_OpenReadHandle(serial_handle_t serialHandle, serial_read_handle_t readHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Closes a reading for the serial manager module.
|
|
||||||
*
|
|
||||||
* This function Closes a reading for the serial manager module.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module reading handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success The reading handle is closed.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_CloseReadHandle(serial_read_handle_t readHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Transmits data with the blocking mode.
|
|
||||||
*
|
|
||||||
* This is a blocking function, which polls the sending queue, waits for the sending queue to be empty.
|
|
||||||
* This function sends data using an interrupt method. The interrupt of the hardware could not be disabled.
|
|
||||||
* And There can only one buffer for transmission for the writing handle at the same time.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_WriteBlocking and the function #SerialManager_WriteNonBlocking
|
|
||||||
* cannot be used at the same time.
|
|
||||||
* And, the function #SerialManager_CancelWriting cannot be used to abort the transmission of this function.
|
|
||||||
*
|
|
||||||
* @param writeHandle The serial manager module handle pointer.
|
|
||||||
* @param buffer Start address of the data to write.
|
|
||||||
* @param length Length of the data to write.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully sent all data.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous transmission still not finished; data not all sent yet.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_WriteBlocking(serial_write_handle_t writeHandle,
|
|
||||||
uint8_t *buffer,
|
|
||||||
uint32_t length);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Reads data with the blocking mode.
|
|
||||||
*
|
|
||||||
* This is a blocking function, which polls the receiving buffer, waits for the receiving buffer to be full.
|
|
||||||
* This function receives data using an interrupt method. The interrupt of the hardware could not be disabled.
|
|
||||||
* And There can only one buffer for receiving for the reading handle at the same time.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_ReadBlocking and the function #SerialManager_ReadNonBlocking
|
|
||||||
* cannot be used at the same time.
|
|
||||||
* And, the function #SerialManager_CancelReading cannot be used to abort the transmission of this function.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module handle pointer.
|
|
||||||
* @param buffer Start address of the data to store the received data.
|
|
||||||
* @param length The length of the data to be received.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully received all data.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous transmission still not finished; data not all received yet.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_ReadBlocking(serial_read_handle_t readHandle, uint8_t *buffer, uint32_t length);
|
|
||||||
|
|
||||||
#if (defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
/*!
|
|
||||||
* @brief Transmits data with the non-blocking mode.
|
|
||||||
*
|
|
||||||
* This is a non-blocking function, which returns directly without waiting for all data to be sent.
|
|
||||||
* When all data is sent, the module notifies the upper layer through a TX callback function and passes
|
|
||||||
* the status parameter @ref kStatus_SerialManager_Success.
|
|
||||||
* This function sends data using an interrupt method. The interrupt of the hardware could not be disabled.
|
|
||||||
* And There can only one buffer for transmission for the writing handle at the same time.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_WriteBlocking and the function #SerialManager_WriteNonBlocking
|
|
||||||
* cannot be used at the same time. And, the TX callback is mandatory before the function could be used.
|
|
||||||
*
|
|
||||||
* @param writeHandle The serial manager module handle pointer.
|
|
||||||
* @param buffer Start address of the data to write.
|
|
||||||
* @param length Length of the data to write.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully sent all data.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous transmission still not finished; data not all sent yet.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_WriteNonBlocking(serial_write_handle_t writeHandle,
|
|
||||||
uint8_t *buffer,
|
|
||||||
uint32_t length);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Reads data with the non-blocking mode.
|
|
||||||
*
|
|
||||||
* This is a non-blocking function, which returns directly without waiting for all data to be received.
|
|
||||||
* When all data is received, the module driver notifies the upper layer
|
|
||||||
* through a RX callback function and passes the status parameter @ref kStatus_SerialManager_Success.
|
|
||||||
* This function receives data using an interrupt method. The interrupt of the hardware could not be disabled.
|
|
||||||
* And There can only one buffer for receiving for the reading handle at the same time.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_ReadBlocking and the function #SerialManager_ReadNonBlocking
|
|
||||||
* cannot be used at the same time. And, the RX callback is mandatory before the function could be used.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module handle pointer.
|
|
||||||
* @param buffer Start address of the data to store the received data.
|
|
||||||
* @param length The length of the data to be received.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully received all data.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous transmission still not finished; data not all received yet.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_ReadNonBlocking(serial_read_handle_t readHandle,
|
|
||||||
uint8_t *buffer,
|
|
||||||
uint32_t length);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Tries to read data.
|
|
||||||
*
|
|
||||||
* The function tries to read data from internal ring buffer. If the ring buffer is not empty, the data will be
|
|
||||||
* copied from ring buffer to up layer buffer. The copied length is the minimum of the ring buffer and up layer length.
|
|
||||||
* After the data is copied, the actual data length is passed by the parameter length.
|
|
||||||
* And There can only one buffer for receiving for the reading handle at the same time.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module handle pointer.
|
|
||||||
* @param buffer Start address of the data to store the received data.
|
|
||||||
* @param length The length of the data to be received.
|
|
||||||
* @param receivedLength Length received from the ring buffer directly.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully received all data.
|
|
||||||
* @retval kStatus_SerialManager_Busy Previous transmission still not finished; data not all received yet.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_TryRead(serial_read_handle_t readHandle,
|
|
||||||
uint8_t *buffer,
|
|
||||||
uint32_t length,
|
|
||||||
uint32_t *receivedLength);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Cancels unfinished send transmission.
|
|
||||||
*
|
|
||||||
* The function cancels unfinished send transmission. When the transfer is canceled, the module notifies the upper layer
|
|
||||||
* through a TX callback function and passes the status parameter @ref kStatus_SerialManager_Canceled.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_CancelWriting cannot be used to abort the transmission of
|
|
||||||
* the function #SerialManager_WriteBlocking.
|
|
||||||
*
|
|
||||||
* @param writeHandle The serial manager module handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success Get successfully abort the sending.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_CancelWriting(serial_write_handle_t writeHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Cancels unfinished receive transmission.
|
|
||||||
*
|
|
||||||
* The function cancels unfinished receive transmission. When the transfer is canceled, the module notifies the upper
|
|
||||||
* layer
|
|
||||||
* through a RX callback function and passes the status parameter @ref kStatus_SerialManager_Canceled.
|
|
||||||
*
|
|
||||||
* @note The function #SerialManager_CancelReading cannot be used to abort the transmission of
|
|
||||||
* the function #SerialManager_ReadBlocking.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success Get successfully abort the receiving.
|
|
||||||
* @retval kStatus_SerialManager_Error An error occurred.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_CancelReading(serial_read_handle_t readHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Installs a TX callback and callback parameter.
|
|
||||||
*
|
|
||||||
* This function is used to install the TX callback and callback parameter for the serial manager module.
|
|
||||||
* When any status of TX transmission changed, the driver will notify the upper layer by the installed callback
|
|
||||||
* function. And the status is also passed as status parameter when the callback is called.
|
|
||||||
*
|
|
||||||
* @param writeHandle The serial manager module handle pointer.
|
|
||||||
* @param callback The callback function.
|
|
||||||
* @param callbackParam The parameter of the callback function.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully install the callback.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_InstallTxCallback(serial_write_handle_t writeHandle,
|
|
||||||
serial_manager_callback_t callback,
|
|
||||||
void *callbackParam);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Installs a RX callback and callback parameter.
|
|
||||||
*
|
|
||||||
* This function is used to install the RX callback and callback parameter for the serial manager module.
|
|
||||||
* When any status of RX transmission changed, the driver will notify the upper layer by the installed callback
|
|
||||||
* function. And the status is also passed as status parameter when the callback is called.
|
|
||||||
*
|
|
||||||
* @param readHandle The serial manager module handle pointer.
|
|
||||||
* @param callback The callback function.
|
|
||||||
* @param callbackParam The parameter of the callback function.
|
|
||||||
* @retval kStatus_SerialManager_Success Successfully install the callback.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_InstallRxCallback(serial_read_handle_t readHandle,
|
|
||||||
serial_manager_callback_t callback,
|
|
||||||
void *callbackParam);
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Prepares to enter low power consumption.
|
|
||||||
*
|
|
||||||
* This function is used to prepare to enter low power consumption.
|
|
||||||
*
|
|
||||||
* @param serialHandle The serial manager module handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success Successful operation.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_EnterLowpower(serial_handle_t serialHandle);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @brief Restores from low power consumption.
|
|
||||||
*
|
|
||||||
* This function is used to restore from low power consumption.
|
|
||||||
*
|
|
||||||
* @param serialHandle The serial manager module handle pointer.
|
|
||||||
* @retval kStatus_SerialManager_Success Successful operation.
|
|
||||||
*/
|
|
||||||
serial_manager_status_t SerialManager_ExitLowpower(serial_handle_t serialHandle);
|
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
/*! @} */
|
|
||||||
#endif /* __SERIAL_MANAGER_H__ */
|
|
|
@ -1,55 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright 2018 NXP
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __SERIAL_PORT_UART_H__
|
|
||||||
#define __SERIAL_PORT_UART_H__
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @addtogroup serial_port_uart
|
|
||||||
* @{
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Definitions
|
|
||||||
******************************************************************************/
|
|
||||||
/*! @brief serial port uart handle size*/
|
|
||||||
#if (defined(SERIAL_MANAGER_NON_BLOCKING_MODE) && (SERIAL_MANAGER_NON_BLOCKING_MODE > 0U))
|
|
||||||
#define SERIAL_PORT_UART_HANDLE_SIZE (166U)
|
|
||||||
#else
|
|
||||||
#define SERIAL_PORT_UART_HANDLE_SIZE (4U)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief serial port uart parity mode*/
|
|
||||||
typedef enum _serial_port_uart_parity_mode
|
|
||||||
{
|
|
||||||
kSerialManager_UartParityDisabled = 0x0U, /*!< Parity disabled */
|
|
||||||
kSerialManager_UartParityEven = 0x1U, /*!< Parity even enabled */
|
|
||||||
kSerialManager_UartParityOdd = 0x2U, /*!< Parity odd enabled */
|
|
||||||
} serial_port_uart_parity_mode_t;
|
|
||||||
|
|
||||||
/*! @brief serial port uart stop bit count*/
|
|
||||||
typedef enum _serial_port_uart_stop_bit_count
|
|
||||||
{
|
|
||||||
kSerialManager_UartOneStopBit = 0U, /*!< One stop bit */
|
|
||||||
kSerialManager_UartTwoStopBit = 1U, /*!< Two stop bits */
|
|
||||||
} serial_port_uart_stop_bit_count_t;
|
|
||||||
|
|
||||||
/*! @brief serial port uart config struct*/
|
|
||||||
typedef struct _serial_port_uart_config
|
|
||||||
{
|
|
||||||
uint32_t clockRate; /*!< clock rate */
|
|
||||||
uint32_t baudRate; /*!< baud rate */
|
|
||||||
serial_port_uart_parity_mode_t parityMode; /*!< Parity mode, disabled (default), even, odd */
|
|
||||||
serial_port_uart_stop_bit_count_t stopBitCount; /*!< Number of stop bits, 1 stop bit (default) or 2 stop bits */
|
|
||||||
uint8_t instance; /*!< Instance (0 - UART0, 1 - UART1, ...), detail information
|
|
||||||
please refer to the SOC corresponding RM. */
|
|
||||||
uint8_t enableRx; /*!< Enable RX */
|
|
||||||
uint8_t enableTx; /*!< Enable TX */
|
|
||||||
} serial_port_uart_config_t;
|
|
||||||
/*! @} */
|
|
||||||
#endif /* __SERIAL_PORT_UART_H__ */
|
|
|
@ -1,76 +0,0 @@
|
||||||
/*
|
|
||||||
* Copyright (c) 2015 - 2016, Freescale Semiconductor, Inc.
|
|
||||||
* Copyright 2016 - 2018 NXP
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __SERIAL_PORT_USB_H__
|
|
||||||
#define __SERIAL_PORT_USB_H__
|
|
||||||
|
|
||||||
#if defined(FSL_RTOS_FREE_RTOS)
|
|
||||||
#include "FreeRTOS.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*!
|
|
||||||
* @addtogroup serial_port_usb
|
|
||||||
* @{
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*******************************************************************************
|
|
||||||
* Definitions
|
|
||||||
******************************************************************************/
|
|
||||||
/*! @brief serial port usb handle size*/
|
|
||||||
#define SERIAL_PORT_USB_CDC_HANDLE_SIZE (72)
|
|
||||||
|
|
||||||
/*! @brief USB interrupt priority*/
|
|
||||||
#if defined(__GIC_PRIO_BITS)
|
|
||||||
#define USB_DEVICE_INTERRUPT_PRIORITY (25U)
|
|
||||||
#else
|
|
||||||
#if defined(configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY)
|
|
||||||
#define USB_DEVICE_INTERRUPT_PRIORITY (configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY)
|
|
||||||
#else
|
|
||||||
/* The default value 3 is used to support different ARM Core, such as CM0P, CM4, CM7, and CM33, etc.
|
|
||||||
* The minimum number of priority bits implemented in the NVIC is 2 on these SOCs. The value of mininum
|
|
||||||
* priority is 3 (2^2 - 1). So, the default value is 3.
|
|
||||||
*/
|
|
||||||
#define USB_DEVICE_INTERRUPT_PRIORITY (3U)
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*! @brief USB controller ID */
|
|
||||||
typedef enum _serial_port_usb_cdc_controller_index
|
|
||||||
{
|
|
||||||
kSerialManager_UsbControllerKhci0 = 0U, /*!< KHCI 0U */
|
|
||||||
kSerialManager_UsbControllerKhci1 = 1U, /*!< KHCI 1U, Currently, there are no platforms which have two KHCI IPs,
|
|
||||||
this is reserved to be used in the future. */
|
|
||||||
kSerialManager_UsbControllerEhci0 = 2U, /*!< EHCI 0U */
|
|
||||||
kSerialManager_UsbControllerEhci1 = 3U, /*!< EHCI 1U, Currently, there are no platforms which have two EHCI IPs,
|
|
||||||
this is reserved to be used in the future. */
|
|
||||||
|
|
||||||
kSerialManager_UsbControllerLpcIp3511Fs0 = 4U, /*!< LPC USB IP3511 FS controller 0 */
|
|
||||||
kSerialManager_UsbControllerLpcIp3511Fs1 = 5U, /*!< LPC USB IP3511 FS controller 1, there are no platforms which
|
|
||||||
have two IP3511 IPs, this is reserved to be used in the future. */
|
|
||||||
|
|
||||||
kSerialManager_UsbControllerLpcIp3511Hs0 = 6U, /*!< LPC USB IP3511 HS controller 0 */
|
|
||||||
kSerialManager_UsbControllerLpcIp3511Hs1 = 7U, /*!< LPC USB IP3511 HS controller 1, there are no platforms which
|
|
||||||
have two IP3511 IPs, this is reserved to be used in the future. */
|
|
||||||
|
|
||||||
kSerialManager_UsbControllerOhci0 = 8U, /*!< OHCI 0U */
|
|
||||||
kSerialManager_UsbControllerOhci1 = 9U, /*!< OHCI 1U, Currently, there are no platforms which have two OHCI IPs,
|
|
||||||
this is reserved to be used in the future. */
|
|
||||||
|
|
||||||
kSerialManager_UsbControllerIp3516Hs0 = 10U, /*!< IP3516HS 0U */
|
|
||||||
kSerialManager_UsbControllerIp3516Hs1 = 11U, /*!< IP3516HS 1U, Currently, there are no platforms which have two
|
|
||||||
IP3516HS IPs, this is reserved to be used in the future. */
|
|
||||||
} serial_port_usb_cdc_controller_index_t;
|
|
||||||
|
|
||||||
/*! @brief serial port usb config struct*/
|
|
||||||
typedef struct _serial_port_usb_cdc_config
|
|
||||||
{
|
|
||||||
serial_port_usb_cdc_controller_index_t controllerIndex; /*!< controller index */
|
|
||||||
} serial_port_usb_cdc_config_t;
|
|
||||||
|
|
||||||
/*! @} */
|
|
||||||
#endif /* __SERIAL_PORT_USB_H__ */
|
|
|
@ -1,3 +1,7 @@
|
||||||
SRC_FILES := fsl_lpspi.c connect_spi.c connect_flash_spi.c
|
SRC_FILES := fsl_lpspi.c connect_spi.c
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_RESOURCES_SPI_SFUD),y)
|
||||||
|
SRC_FILES += connect_flash_spi.c
|
||||||
|
endif
|
||||||
|
|
||||||
include $(KERNEL_ROOT)/compiler.mk
|
include $(KERNEL_ROOT)/compiler.mk
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @file connect_gpio.h
|
* @file connect_gpio.h
|
||||||
* @brief define ok1052-c gpio function and struct
|
* @brief define stm32f407-st-discovery-board gpio function and struct
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @author AIIT XUOS Lab
|
* @author AIIT XUOS Lab
|
||||||
* @date 2022-03-01
|
* @date 2022-03-01
|
||||||
|
|
Loading…
Reference in New Issue