Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Real time embedded FreeRTOS mailing list 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT Training


FreeRTOS + Yagarto + LPC2294 ISR issues

Posted by eduardo on November 7, 2007
Hello friends,
I'm a newbie with ARM development.
I bought LPC-E2294 from Olimex and now I'm trying to use FreeRTOS with this board. I'm using ARM7_LPC2106_GCC example to port to LPC2294. With a few of changes in ld script (to right memory values), the LED position and other little things the code start to work with only "flash.c" uncommented. The others examples was commented like this in "main.c".

//vStartIntegerMathTasks( tskIDLE_PRIORITY );
//vAltStartComTestTasks( mainCOM_TEST_PRIORITY, mainCOM_TEST_BAUD_RATE, mainCOM_TEST_LED );
vStartLEDFlashTasks( mainLED_TASK_PRIORITY );
//vStartPolledQueueTasks( mainQUEUE_POLL_PRIORITY );
//vStartMathTasks( tskIDLE_PRIORITY );
//vStartSemaphoreTasks( mainSEM_TEST_PRIORITY );
//vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );

When I uncomment in main routine "vAltStartComTestTasks" or trying to work with a little code using interrupts the program stop to work.
I did a simple test using vectored EINT2 and, when the button in EINT2 is pressed the program stops.

This is the same issue of ISR new implementations for ARM7/9 ports??

All of this tries are using ISR_Wrapper like in the ARM7_LPC2106_GCC examples.

I've tried to change optimization (from -O0 to -03) and delete -fomit-frame-pointer but with no changes of this strange behaviour.

I'm working with:
Windows XP SP2
Yagarto with arm-elf-gcc 4.2.1
FreeRTOS 4.6.1

Please, If anybody want take a look at the source code I can send by mail with no problems.

Thanks all in advance,
Eduardo Garcia

RE: FreeRTOS + Yagarto + LPC2294 ISR issues

Posted by Dave on November 7, 2007
Can you confirm that your interrupt works when not using FreeRTOS? That is, when used in just a simple hello world program. This will show that your interrupt setup is correct. When doing this you can just use the standard GCC way of writing interrupt handlers without the FreeRTOS macros.

If your interrupt works without FreeRTOS present, then post your interrupt handler code (with the FreeRTOS macros) here.

Did you change the start up code at all?

RE: FreeRTOS + Yagarto + LPC2294 ISR issues

Posted by eduardo on November 7, 2007
Hello Dave,
Thanks a lot your fast response.

No, the start up code (boot.s) is exactly the same. Shoud I change it?

I will do a simple test using interrupts and will post here the results as fast as possible.


RE: FreeRTOS + Yagarto + LPC2294 ISR issues

Posted by Dave on November 7, 2007
No, don't change the start up code. I was just checking as this is a common source of problems.

RE: FreeRTOS + Yagarto + LPC2294 ISR issues

Posted by eduardo on November 7, 2007
Thanks your help Dave.

Following your suggestion I saw that I was not clearing interrupt correctly on EXINT.

Now EINT2 is working fine and the next step is try the UART example.

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

Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2016 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd.

Latest News:

FreeRTOS V9.0.0 is now available for download.

Free TCP/IP and file system demos for the RTOS

Sponsored Links

⇓ Now With No Code Size Limit! ⇓
⇑ Free Download Without Registering ⇑

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Renesas Electronics Gold Alliance RTOS Partner.jpg

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Atmel RTOS partner supporting ARM Cortex-M3 and AVR32 microcontrollers

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

Xilinx Microblaze and Zynq partner

Silicon Labs low power RTOS partner

Altera RTOS partner for Nios II and Cortex-A9 SoC

Freescale Alliance RTOS Member supporting ARM and ColdFire microcontrollers

Infineon ARM Cortex-M microcontrollers

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

Cypress RTOS partner supporting ARM Cortex-M3

Fujitsu RTOS partner supporting ARM Cortex-M3 and FM3

Microsemi (previously Actel) RTOS partner supporting ARM Cortex-M3

Atollic Partner

IAR Partner

Keil ARM Partner

Embedded Artists