A demo application for HXC900 LoRaWAN module using Nucleo-L053R8.

Dependencies:   mbed

Committer:
fahadmirza
Date:
Thu Jan 24 23:45:12 2019 +0000
Revision:
39:cb0e5a76ab15
Parent:
5:53302861bfea
Doxygen style header

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fahadmirza 0:a0c5877bd360 1 /******************************************************************************
fahadmirza 0:a0c5877bd360 2 * @file tiny_vsnprintf.h
fahadmirza 0:a0c5877bd360 3 * @author MCD Application Team
fahadmirza 0:a0c5877bd360 4 * @version V1.1.4
fahadmirza 0:a0c5877bd360 5 * @date 08-January-2018
fahadmirza 0:a0c5877bd360 6 * @brief Header for tiny_vsnprintf.c module
fahadmirza 0:a0c5877bd360 7 ******************************************************************************
fahadmirza 0:a0c5877bd360 8 * @attention
fahadmirza 0:a0c5877bd360 9 *
fahadmirza 0:a0c5877bd360 10 * <h2><center>&copy; Copyright (c) 2017 STMicroelectronics International N.V.
fahadmirza 0:a0c5877bd360 11 * All rights reserved.</center></h2>
fahadmirza 0:a0c5877bd360 12 *
fahadmirza 0:a0c5877bd360 13 * Redistribution and use in source and binary forms, with or without
fahadmirza 0:a0c5877bd360 14 * modification, are permitted, provided that the following conditions are met:
fahadmirza 0:a0c5877bd360 15 *
fahadmirza 0:a0c5877bd360 16 * 1. Redistribution of source code must retain the above copyright notice,
fahadmirza 0:a0c5877bd360 17 * this list of conditions and the following disclaimer.
fahadmirza 0:a0c5877bd360 18 * 2. Redistributions in binary form must reproduce the above copyright notice,
fahadmirza 0:a0c5877bd360 19 * this list of conditions and the following disclaimer in the documentation
fahadmirza 0:a0c5877bd360 20 * and/or other materials provided with the distribution.
fahadmirza 0:a0c5877bd360 21 * 3. Neither the name of STMicroelectronics nor the names of other
fahadmirza 0:a0c5877bd360 22 * contributors to this software may be used to endorse or promote products
fahadmirza 0:a0c5877bd360 23 * derived from this software without specific written permission.
fahadmirza 0:a0c5877bd360 24 * 4. This software, including modifications and/or derivative works of this
fahadmirza 0:a0c5877bd360 25 * software, must execute solely and exclusively on microcontroller or
fahadmirza 0:a0c5877bd360 26 * microprocessor devices manufactured by or for STMicroelectronics.
fahadmirza 0:a0c5877bd360 27 * 5. Redistribution and use of this software other than as permitted under
fahadmirza 0:a0c5877bd360 28 * this license is void and will automatically terminate your rights under
fahadmirza 0:a0c5877bd360 29 * this license.
fahadmirza 0:a0c5877bd360 30 *
fahadmirza 0:a0c5877bd360 31 * THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS"
fahadmirza 0:a0c5877bd360 32 * AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT
fahadmirza 0:a0c5877bd360 33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
fahadmirza 0:a0c5877bd360 34 * PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY
fahadmirza 0:a0c5877bd360 35 * RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT
fahadmirza 0:a0c5877bd360 36 * SHALL STMICROELECTRONICS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
fahadmirza 0:a0c5877bd360 37 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
fahadmirza 0:a0c5877bd360 38 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
fahadmirza 0:a0c5877bd360 39 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
fahadmirza 0:a0c5877bd360 40 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
fahadmirza 0:a0c5877bd360 41 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
fahadmirza 0:a0c5877bd360 42 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
fahadmirza 0:a0c5877bd360 43 *
fahadmirza 0:a0c5877bd360 44 ******************************************************************************
fahadmirza 0:a0c5877bd360 45 */
fahadmirza 0:a0c5877bd360 46 /* Define to prevent recursive inclusion -------------------------------------*/
fahadmirza 0:a0c5877bd360 47 #ifndef __TINY_VSNPRINTF_H__
fahadmirza 0:a0c5877bd360 48 #define __TINY_VSNPRINTF_H__
fahadmirza 0:a0c5877bd360 49
fahadmirza 0:a0c5877bd360 50 #ifdef __cplusplus
fahadmirza 0:a0c5877bd360 51 extern "C" {
fahadmirza 0:a0c5877bd360 52 #endif
fahadmirza 0:a0c5877bd360 53
fahadmirza 0:a0c5877bd360 54 /* Includes ------------------------------------------------------------------*/
fahadmirza 0:a0c5877bd360 55 /* Exported types ------------------------------------------------------------*/
fahadmirza 0:a0c5877bd360 56 /* Exported constants --------------------------------------------------------*/
fahadmirza 0:a0c5877bd360 57 /* External variables --------------------------------------------------------*/
fahadmirza 0:a0c5877bd360 58 /* Exported functions ------------------------------------------------------- */
fahadmirza 0:a0c5877bd360 59
fahadmirza 0:a0c5877bd360 60 /**
fahadmirza 0:a0c5877bd360 61 * @brief Tiny implementation of vsnprintf() like function
fahadmirza 0:a0c5877bd360 62 *
fahadmirza 0:a0c5877bd360 63 * It has been adapted so that:
fahadmirza 0:a0c5877bd360 64 * - Tiny implementation, when defining TINY_PRINTF, is available. In such as case,
fahadmirza 0:a0c5877bd360 65 * not all the format are available. Instead, only %02X, %x, %d, %u, %s and %c are available.
fahadmirza 0:a0c5877bd360 66 * %f,, %+, %#, %- and others are excluded
fahadmirza 0:a0c5877bd360 67 * - Provide a snprintf like implementation. The size of the buffer is provided,
fahadmirza 0:a0c5877bd360 68 * and the length of the filled buffer is returned (not including the final '\0' char).
fahadmirza 0:a0c5877bd360 69 * The string may be truncated
fahadmirza 0:a0c5877bd360 70 * @param Pointer to a buffer where the resulting C-string is stored. The buffer should have a size of
fahadmirza 0:a0c5877bd360 71 * at least n characters.
fahadmirza 0:a0c5877bd360 72 * @param Maximum number of bytes to be used in the buffer. The generated string has a length of at
fahadmirza 0:a0c5877bd360 73 * most n-1, leaving space for the additional terminating null character.
fahadmirza 0:a0c5877bd360 74 * @param C string that contains a format string that follows the same specifications as format
fahadmirza 0:a0c5877bd360 75 * in printf (see printf for details).
fahadmirza 0:a0c5877bd360 76 * @param A value identifying a variable arguments list initialized with va_start.
fahadmirza 0:a0c5877bd360 77 * @retval The number of written char (note that this is different from vsnprintf()
fahadmirza 0:a0c5877bd360 78 */
fahadmirza 0:a0c5877bd360 79 int tiny_vsnprintf_like(char *buf, const int size, const char *fmt, va_list args);
fahadmirza 0:a0c5877bd360 80
fahadmirza 0:a0c5877bd360 81 #ifdef __cplusplus
fahadmirza 0:a0c5877bd360 82 }
fahadmirza 0:a0c5877bd360 83 #endif
fahadmirza 0:a0c5877bd360 84
fahadmirza 0:a0c5877bd360 85 #endif /* __TINY_VSNPRINTF_H__*/
fahadmirza 0:a0c5877bd360 86
fahadmirza 0:a0c5877bd360 87 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
fahadmirza 0:a0c5877bd360 88