µC/HTTP-client requires a run-time configuration that must be passed during the initialization. HTTP run-time configuration template files are provided (see Directories and Files). The run-time configuration template file (http-c_cfg.c
)
should be copied into the application folder and modified as per individual project requirements.
Micriµm provides sample configuration code free of charge; however, most sample code will likely require modifications depending on specific feature requirements and memory limitation.
Configuration Structure
Task Configuration Fields
Structure Field | Type | Description | Possible Values |
---|---|---|---|
TaskDly_ms | CPU_INT08U | µC/HTTP-client Task delay in milliseconds. When the asynchronous task is enabled, the task can be periodically delayed to allow other lower priority tasks to run. | Default value: [ MUST be >= 1 |
Connection Configuration Fields
Structure Field | Type | Description | Possible Values |
---|---|---|---|
ConnQ_Size | CPU_INT08U | Size of the µC/HTTP-client Connection Queue. Two Connection Queues exist, one for opening and the other for closing connections. | Default value: [ MUST be >= 1 |
ConnConnectTimeout_ms | CPU_INT16U | Connection Connect Timeout value in milliseconds. Time allocated to perform a connection with the HTTP server. | Default value: [ MUST be >= 1000; <= 10000 |
ConnInactivityTimeout_s | CPU_INT16U | Connection Inactivity Timeout value in seconds. The inactivity timeout is set up to close the connection after a period of inactivity. | Default value: [ MUST be >= 1; <= 255 |
Request Configuration Fields
Structure Field | Type | Description | Possible Values |
---|---|---|---|
ReqQ_Size | CPU_INT08U | Size of the µC/HTTP-client Request Queue. Queue size doesn't need to be very large since requests are rapidly added to the request list. | Default value: [ MUST be >= 1 |
Task Configuration Structure
When the µC/HTTP-client task is enabled (see HTTPc_CFG_MODE_ASYNC_TASK_EN) a task configuration must be passed to the function HTTPc_Init. The µC/HTTP-client Task configuration structure is presented below.
HTTPc Task Configuration Fields
Structure Field | Type | Description | Possible Values |
---|---|---|---|
Prio | CPU_INT32U | Priority of the µC/HTTP-client Task. We recommend configuring the Network Protocol Stack task priorities & HTTP Client task priority as follows:
We recommend that the uC/TCP-IP Timer task and network interface Receive task be lower priorities than almost all other application tasks; but we recommend that the network interface Transmit De-allocation task be higher priority then all application tasks that use uC/TCP-IP network services. However better performance can be observed when the µC/HTTP-client task is set with the lowest priority. So some experimentation could be required to identify the better task priority configuration. | MUST be >= 1 |
StkSizeBytes | CPU_INT32U | Size of the stack's task. | MUST be >= 512 |
StkPtr | void* | Memory location where to allocate the stack's task. | Pointer to memory segment where the stack's task will be located.
|