View a markdown version of this page

Bibliothèque CoreJSON - FreeRTOS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Bibliothèque CoreJSON

Note

Le contenu de cette page n'est peut-être pas à jour. Reportez-vous à la page de la FreeRTOS.org bibliothèque pour obtenir la dernière mise à jour.

Introduction

JSON (JavaScript Object Notation) est un format de sérialisation de données lisible par l'homme. Il est largement utilisé pour échanger des données, notamment avec le service AWS IoT Device Shadow, et fait partie de nombreuses API, telles que l' GitHub API REST. Le JSON est maintenu en tant que norme par Ecma International.

La bibliothèque CoreJSON fournit un analyseur qui prend en charge les recherches de touches tout en appliquant strictement la syntaxe d'échange de données JSON ECMA-404 standard. La bibliothèque est écrite en C et conçue pour être conforme aux normes ISO C90 et C:2012 MISRA. Il possède des preuves démontrant une utilisation sûre de la mémoire et l'absence d'allocation de tas, ce qui le rend adapté aux microcontrôleurs IoT, mais également entièrement portable sur d'autres plateformes.

Utilisation de la mémoire

La bibliothèque CoreJSON utilise une pile interne pour suivre les structures imbriquées dans un document JSON. La pile existe pendant la durée d'un seul appel de fonction ; elle n'est pas préservée. La taille de la pile peut être spécifiée en définissant la macroJSON_MAX_DEPTH, dont la valeur par défaut est de 32 niveaux. Chaque niveau consomme un octet.

Taille du code de CoreJSON (exemple généré avec GCC pour ARM) Cortex-M
Fichier Avec optimisation -O1 Avec l'optimisation -Os
core_json.c 2,9 K 2,4 K
Estimations totales 2,9 K 2,4 K