Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Language IDEs » C / C++ IDE (CDT) » How to run Freertos on Arduino UNO using eclipse IDE
How to run Freertos on Arduino UNO using eclipse IDE [message #1855564] Thu, 20 October 2022 13:39
Ramya Lakshmanan is currently offline Ramya LakshmananFriend
Messages: 1
Registered: October 2022
Junior Member
Hi all, I'm trying to run FreeRTOS on Arduino Uno board using eclipse (mars version) IDE. I did setting up Eclipse for developing freeRTOS applications on Arduino. I installed AVR Eclipse Plugin &WinAVR-20100110.

I created C++ Empty project(AVR Cross Target Application) and Freertos Library (AVR Cross Target Static library)

Simple freertos led blink program I wrote and it compiled successfully.


[code][code]
#include <Arduino_FreeRTOS.h>

// define two tasks for Blink & AnalogRead
void TaskBlink( void *pvParameters );
void TaskAnalogRead( void *pvParameters );

// the setup function runs once when you press reset or power the board
void setup() {

// initialize serial communication at 9600 bits per second:
Serial.begin(9600);

while (!Serial) {
; // wait for serial port to connect. Needed for native USB, on LEONARDO, MICRO, YUN, and other 32u4 based boards.
}

// Now set up two tasks to run independently.
xTaskCreate(
TaskBlink
, "Blink" // A name just for humans
, 128 // This stack size can be checked & adjusted by reading the Stack Highwater
, NULL
, 2 // Priority, with 3 (configMAX_PRIORITIES - 1) being the highest, and 0 being the lowest.
, NULL );

xTaskCreate(
TaskAnalogRead
, "AnalogRead"
, 128 // Stack size
, NULL
, 1 // Priority
, NULL );

// Now the task scheduler, which takes over control of scheduling individual tasks, is automatically started.
}

void loop()
{
// Empty. Things are done in Tasks.
}

/*--------------------------------------------------*/
/*---------------------- Tasks ---------------------*/
/*--------------------------------------------------*/

void TaskBlink(void *pvParameters) // This is a task.
{
(void) pvParameters;



// initialize digital LED_BUILTIN on pin 13 as an output.
pinMode(LED_BUILTIN, OUTPUT);

for (;;) // A Task shall never return or exit.
{
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
vTaskDelay( 1000 / portTICK_PERIOD_MS ); // wait for one second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
vTaskDelay( 1000 / portTICK_PERIOD_MS ); // wait for one second
}
}

void TaskAnalogRead(void *pvParameters) // This is a task.
{
(void) pvParameters;



for (;;)
{
// read the input on analog pin 0:
int sensorValue = analogRead(A0);
// print out the value you read:
Serial.println(sensorValue);
vTaskDelay(1); // one tick delay (15ms) in between reads for stability
}
}

Then I upload the code to the arduino uno board, but I'm not able to see any output on Arduino board.

Is there any issue on freertos code side?? or Freertos library??

Also I cannot do debug here, can anyone tell me how to debug this ??

I don't know I summarize all the things here, if any more details needed for answering me this question please ask me.
Previous Topic:Eclipse will not start
Next Topic:Eclipse doesn't parse "using, boost and std::unique_ptr
Goto Forum:
  


Current Time: Tue Apr 30 01:53:49 GMT 2024

Powered by FUDForum. Page generated in 0.03034 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top