Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

Valid (invalid?) Tick Handler for RL78 version of FreeRTOS ?

Posted by gerlad0 on November 17, 2016

The Tick Handler for the RL78 Demo version of FreeRTOS doesn't appear to be correct i..e why would it be calling the vTaskSwitchContext() function for each tick (see the first call below)?? Secondly since vTaskSwitch function is declared as type 'void' it won't be returning a function value however the code below is testing for a zero value return (cmpw ax, #0x00).

Or am I misssing something rather fundamental?? I appreciate all the insight that you can provide!!!!

This is installed as the interval timer interrupt handler. RSEG CODE:CODE vPortTickISR: portSAVECONTEXT ; Save the context of the current task.
call _vTaskSwitchContext ; Call the timer tick function. cmpw ax, #0x00 skz call _vTaskSwitchContext ; Call the scheduler to select the next task. portRESTORECONTEXT ; Restore the context of the next task to run. reti

void vTaskSwitchContext( void )

My environment is as follows: IAR EW for RL78 Version 2.21.2 IAR EW Version 7.4.1.4269 FreeRTOS Version 8.2.3 RTSDemo - YRPBRL78G13 (YRPBRL78G13 is #defined).


Valid (invalid?) Tick Handler for RL78 version of FreeRTOS ?

Posted by rtel on November 17, 2016

Where did you get that code from? When I look in the FreeRTOS distribution for the IAR RL78 port I find the following code:

; FreeRTOS tick handler.  This is installed as the interval timer interrupt
; handler.
	 RSEG CODE:CODE
vPortTickISR:

  portSAVE_CONTEX ; Save the context of the current task.
  call xTaskIncrementTick ; Call the timer tick function.
  cmpw ax, #0x00
  skz
  call vTaskSwitchContext ; Call the scheduler to select the next task.
  portRESTORE_CONTEXT ; Restore the context of the next task to run.
  reti

Valid (invalid?) Tick Handler for RL78 version of FreeRTOS ?

Posted by gerlad0 on November 18, 2016

Thanks for the prompt response!! It appears that I accidentally changed the function name, xTaskIncrementTic, with an Edit operation. Sorry to bother you , I should have compared with the original source before posting the original topic


[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Meet Richard Barry and learn about running FreeRTOS on RISC-V at FOSDEM 2019

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


Careers

FreeRTOS and other embedded software careers at AWS.



FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Renesas

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner