The Uart bla bla bla functions


NAME

uart_init  — Init the UART port.

 

SYNTAX

#include “uart.h”

 

char uart_init (unsigned long ulBaudRate,

unsigned char ucParity,

unsigned char ucDataBit,

unsigned char ucStopBit

)

 

DESCRIPTION

Init function for the UART port.

 

This call allows to create a new task. task_create() takes a Task Control Block (TCB)  and uses the  memory defined by the aStack variable for its stack. Most task arguments such as stack sizes and scheduling priority are established with this call. Note that task_create() leaves the new task in a dormant state; the task_start() call must be used to place the task into the ready state for execution. The argument task specifies the task's location in memory and the pointer anArg specifies the startup value passed to the task.

The argument aStack specifies the task's stack . The argument aStkSize specifies the stack size. The argument aPriority specifies the task's initial priority within the range 0 – 63, with 63 the highest, and 0 the lowest. 

The argument anAttribute specifies attribute for the created task.

Actually the task attribute specifies only if the task will be scheduled in Round Robin or in FIFO fashion. The task’s attribute could be specified only if the define BNK_TASK_WITH_ATTR was defined in the bnk_configure.h file.

The task ID assigned to the task is returned in the variable pointed to by aTaskID.

 

 

RETURN VALUE

This system call returns 0 on success, or an error code on failure.

 

ERROR CODES

    BNK_ERROR_BAD_PRIO_LEVEL invalid priority it must be in the MIN_PRIO MAX_PRIO range

    BNK_ERROR_INVAL_SCHED_ATTR invalid attribute 

    BNK_ERROR_OUT_OF_MEM   no space  available to alloc stack      

    BNK_ERROR_TOO_MANY_TASK too many tasks created

 

 

NOTES

 

 

CALLABLE FROM ISR No


 

SEE ALSO 

 

(to be continued…)

The index page