Prerequisites
Before running your first application, you must ensure that you have the minimal set of required tools and components:
- Toolchain for your specific microcontroller.
- Development board.
- Source code for µC/HTTPs.
- Source code for all the other Micriµm modules required by µC/HTTPs (see section Installing µC/HTTPs)
- Board support package (BSP) for your development board.*
- A running project for your selected RTOS.
Additional Modules
µC/HTTPs depends on other modules to run. First, it needs the presence of a RTOS. Furthermore, µC/CPU, µC/LIB, µC/Common and the TCP-IP modules µC/TCP-IP are required.
If you are using one of the two Micriµm OS, complete documentation can be found here for µC/OS-II and here for µ/COS-III. Refer to those guides for more information on the requirements, installation, configuration and running of those RTOS.
The µC/CPU module regroups the processor's hardware-dependent code. µC/CPU includes many ports for all the different CPU architectures Micriµm supports. You must therefore used the port corresponding to your specific CPU. The complete µC/CPU documentation can be found here.
The µC/LIB module is the Micriµm run-time library, implementing the most common standard library functions, macros, and constants. The complete µC/LIB documentation can be found here.
The µC/TCP-IP stack is a compact, reliable, high-performance TCP/IP protocol stack which provide the socket to the HTTP application layer. The complete µC/TCP-IP documentation can be found here.
The µC/Common repository comprises multiple modules required by the µC/TCP-IP stack. Among others, the KAL module is included. KAL stands for Kernel-Abstraction Layer. It is used by µC/TCP-IP stack and other Micriµm products to interacts with the RTOS by specifying a set of generic API functions. KAL comes with the µC/OS-II and µC/OS-III ports. The complete KAL documentation can be found here.
Downloading the source code
µC/HTTPs can be downloaded from the Micrium customer portal as all the other required modules. The distribution package includes the full source code and documentation.
You can log into the Micrium customer portal at the address below to begin your download (you must have a valid license to gain access to the file):
Installing the Files
Once all the distribution packages have been downloaded to your host machine, extract all the files at the root of your C:\ drive for instance. The package may be extracted to any location. After extracting all the files, the directory structure should look as illustrated in Installing µC/HTTPs. In the example, all Micriµm products sub-folders shown in Installing µC/HTTPs will be located in C:\Micrium\Software\
. The Micriµm µC/OS-III RTOS has been chosen for this example.
OLD
The following are the steps to follow to include µC/HTTPs into your project:
- The μC/HTTPs configuration files most be copied into your application directory. Those templates files can be retrieve inside the
/Micrium/Software/uC-HTTPs/Cfg/Template
folder (see µC/HTTPs Directories and Files). The configuration files include:- The
http-s_cfg.h
file - or the
http-s_instance_secure.c/.h
files
The first file includes preprocessor’s macros related to the configuration of the HTTP server suite. Please refer to µC/HTTPs Module Configuration for a detailed explanation of each configuration variables.
The
http-s_instance_cfg.c/.h
pair of files, defines the configuration structure for an HTTP server’s instance (see µC/HTTPs Instance Configuration for more details). If your application requires a secured HTTP server instance, thehttp-s_instance_secure_cfg.c/.h
pair of files should be used as template instead.The configuration files includes with µC/HTTPs are templates and must be modified according to your application specific needs and constrains.
- The
- Next, include the µC/HTTPs source files to your project tree. Those files can be retrieved inside the
/Micrium/Software/uC-HTTPs/Source
folder.The OS port’s files must also be added to your project. The ports for uC/OS-II and uC/OS-III are located inside the
/Micrium/Software/uC-HTTPs/OS
folder. - For the file system, µC/HTTPs uses the network file system layer included with µC/TCP-IP located inside the
uC-TCPIP/FS
folder. Therefore, the filenet_fs.h
inside this folder must be include to your project, no matter what file system your HTTP server is using.If a conventional file system is used, the port should be located also inside the
uC-TCPIP/FS
folder. A port for the µC/FS-V4 file system is already included in this folder. If a file system other than µC/FS is used, a port template is available inside theuC-TCPIP/FS/Template
folder to be customize according to your file system.If the Static file system is used, the port for this file system is located inside uC/HTTPs. Therefore, the source files
http-s_fs_static.c/.h
must be include to your project. They are located inside theMicrium/Software/uC-HTTPs/FS/Static
folder. Furthermore, The configuration file templatehttp-s_fs_static_cfg.h
must be copied in your application directory. This configuration file can be retrieve inside theMicrium/Software/uC-HTTPs/FS/Static/Cfg/Template
folder. - Finally, Add in your compiler include paths a path leading to µC/HTTPs and µC/TCP-IP root directories:
/Micrium/Software/uC-HTTPs/
/Micrium/Software/uC-TCPIP-V2/
Since uC/HTTPs requires the use of others modules (µC/LIB, µC/CPU, RTOS, file system), the path leading to the source code of those modules must also be included in your compiler include paths. Please refer to the user manual of each module for details on the path to add.