0

RL78/G13(R5F100LG) FreeRTOS 10.0.1 demo project using GNURL78 and e2 studio

I am sorry that I am not sure how to attach zip file...

FreeRTOS_Demo_RL78_multiple_GCC_e2studio_20180204.zip

The same zip file is uploaded within the following post to Japanese Community of the Renesas's RenesasRulz. (The post is not English but Japanese.)

https://japan.renesasrulz.com/cafe_rene/f/forum21/4826/freertos-fit-cg-pdg2-csplus/27179#27179

--------

This port is based on the following RTEL's suspended(?) work.

https://sourceforge.net/p/freertos/code/2525/tree/tags/V10.0.1/FreeRTOS/Demo/RL78_E2Studio_GCC/
https://sourceforge.net/p/freertos/code/2525/tree/tags/V10.0.1/FreeRTOS/Source/portable/GCC/RL78/

And also based on the following RTEL's official release.

https://sourceforge.net/p/freertos/code/2525/tree/tags/V10.0.1/FreeRTOS/Demo/RL78_multiple_IAR/

The same zip file is uploaded within the following post to Japanese Community of the Renesas's RenesasRulz. (The post is not English but Japanese.)

https://japan.renesasrulz.com/cafe_rene/f/forum21/4826/freertos-fit-cg-pdg2-csplus/27179#27179

This port includes following two project folders. One is for e2 studio v5.4.0 and the other is for e2 studio v6.2.0. (Both projects use GCC for Renesas 4.9.2.201703-GNURL78 from the download page: https://gcc-renesas.com/rl78/rl78-download-toolchains/.)

FreeRTOSv10.0.1\FreeRTOS\Demo\RL78_multiple_GCC_e2studio5\
FreeRTOSv10.0.1\FreeRTOS\Demo\RL78_multiple_GCC_e2studio6\

And also includes following updated port layer folder. (The port.c, portasm.S and isr_support.h are updated. The portmacro.h is not update but included in the folder.)

FreeRTOSv10.0.1\FreeRTOS\Source\portable\GCC\RL78\

Important:

This port uses source files which are generated by e2 studio's code generator functionality. But RL78's timer for Tick is initialized in the port.c directly which is the same way as the RL78_multiple_IAR demo without the code generator functionality. Moreover there are no obvious way to set BRK vector in the code generator functionality. So, every code generation, please add the vPortTickISR and vPortYield to the vector table in the generated r_cg_vector_table.c as following.

r_cg_vector_table.c

#define VECT_SECT          __attribute__ ((section (".vects")))
const void *Vectors[] VECT_SECT  = {
    // Address 0x4
    R_Dummy,
...
    // Address 0x38
    vPortTickISR,
...
    // Address 0x7E
    vPortYield,
};

Instructions:

Download the attached zip file.
Download the FreeRTOS 10.0.1 self-extract exe file (or zip file) from SourceForge.
Extract both archive files and merge both source code trees into one source code tree.
Import one of two project corresponding to e2 studio version into e2 studio workspace.
For blinky demo, keep the mainCREATE_SIMPLE_BLINKY_DEMO_ONLY in the demo_main.c as 1.
For full demo, change the mainCREATE_SIMPLE_BLINKY_DEMO_ONLY in the demo_main.c as 1 --> 0.

0 comments

Please sign in to leave a comment.