2015-02-05 16:26:11 -06:00
2015-02-04 15:02:53 -06:00
2015-02-05 16:26:11 -06:00
2015-02-04 15:02:53 -06:00
2015-02-04 15:02:53 -06:00
2015-02-04 15:02:53 -06:00
2015-02-04 15:02:53 -06:00
2015-02-05 16:26:11 -06:00
2015-02-05 16:26:11 -06:00
2015-02-04 15:02:53 -06:00
2015-02-04 15:02:53 -06:00
2015-02-04 15:02:53 -06:00

Project modified from: http://www.scienceprog.com/using-freertos-kernel-in-avr-projects/

Create new C Project of type AVR Cross Target Application [Empty Project]
Select AVR-GCC Toolchain
Set Release/Debug configuration
Select MCU Type: ATMega328P
Select MCU Frequency (Hz): 8,000,000

Using FreeRTOS
Download: http://www.freertos.org
Latest as of writing: 8.2.0

To keep things simple we will mirror the required directory structure for FreeRTOS in our project. This will allow us to migrate to future versions easily. 

1. Create [Source] folder and copy in contents of [FreeRTOS\Source] folder
2. Create [Source\include] folder and copy in contents of [FreeRTOS\Source\include] folder
3. Create [Source\portable] folder 
4. Create [Source\portable\GCC] folder 
5. Create [Source\portable\GCC\TARGET_DEVICE] folder and copy in port.c and portmacro.h (these files will be modified to target your hardware)
6. Create [Source\portable\MemMang] folder 


Setting FreeRTOS include path:
Right click on project and select Properties
Under C/C++ General --> Paths and Symbols
Select the includes tab and add a folder linking to [PROJECT_NAME]/Source/include


Under C/C++ Build --> Settings
Select Tool Settings Tab
Select AVR Compiler --> Symbols
Add GCC_MEGA_AVR to Define Syms (-D)

Description
FreeRTOS port to ATMega328P
Readme 580 KiB
Languages
C 99.6%
Makefile 0.4%