industrialNETworXnetx

Krasi Gichev

Krasi Gichev

AMK

| 29.06.2010 | 15:04 | 3 replies

IDLE task in rcX on netX 50

Hi,

Is IDLE task supported in rcX on netX 50?

Using TSK_PRIO_IDLE (as seen in rX_Priorities.h) returns an error code 5 ( RX_KNL_PRIORITY_ERROR ).

Docu in rcX_Api says:

"ePrio - The value ranges from TSK_PRIO_1 to TSK_PRIO_55.TSK_PRIO_1 represents the highest priority. "

Does it mean that  TSK_PRIO_IDLE is reserved for something else?

 

 

 

Andreas Jacob

Andreas Jacob

Hilscher Gesellschaft fuer Systemautomation mbH

| 29.06.2010 | 15:18

Hi,

user priorities are from 8 till 63.

TSK_PRIO_IDLE is used by the system.

Regards
AJ

Krasi Gichev

Krasi Gichev

AMK

| 30.06.2010 | 06:29

OK, this is clear.

Another similar question - I have created a software timer of rcX ( rX_TimCreateTimer() ). What is the task context where my function is called?

Is it the SYSTIMER task priority(TSK_PRIO_DEF_RX_TIMER)?

CONST RX_ENTERKERNEL_PARAM_T trXEnterKernelParam=
{
/* CPU clock rate */
NETX_FREQUENCY_100MHZ,

/* Timer interrupt task priority */
{TSK_PRIO_DEF_RX_TIMER, 350},

I have a relatively long function that is called on SW timer. So I want to ensure that some other, higher priority, tasks will be able to interrupt this long activity.

I think I can achieve this by lowering the priority of  "Timer interrupt task priority" (if my routine is called inside it).

 

Best regards

Andreas Jacob

Andreas Jacob

Hilscher Gesellschaft fuer Systemautomation mbH

| 01.07.2010 | 14:22

Hi,

if this is the element "tTimerTaskConfig.eTimerIrqTaskPriority" of the structure, then this is the priority of the task which is handled by the timer.

Regards
AJ

Login