реклама на сайте
подробности

 
 
> freeRTOS - не работает простая мигалка
Evgeniy1995
сообщение Jan 16 2016, 14:50
Сообщение #1





Группа: Новичок
Сообщений: 1
Регистрация: 16-01-16
Пользователь №: 90 063



Не работает простейшая мигалка на AtMega16A-PU.
Версия freeRtos - 7.1.0
Программирую в Atmel Studio 6.1.

CODE
#include "FreeRTOS.h"
#include "task.h"

void vTask0( void *pvParameters )
{
while(1){
PORTA = 255;
vTaskDelay(500);
PORTA = 0;
vTaskDelay(500);
}
}

void vTask1( void *pvParameters )
{
while(1){
PORTB = 255;
vTaskDelay(1300);
PORTB = 0;
vTaskDelay(1300);
}
}

int main( void )
{
DDRA = 255;
DDRB = 255;
xTaskCreate( vTask0,(signed char *) "Task0",configMINIMAL_STACK_SIZE,NULL,1,NULL);
xTaskCreate( vTask1,(signed char *) "Task1",configMINIMAL_STACK_SIZE,NULL,1,NULL);
vTaskStartScheduler();
return 0;
}


В проэкт добавил файл "FreeRTOSConfig.h"
CODE
#ifndef FREERTOS_CONFIG_H
#define FREERTOS_CONFIG_H

#include <avr/io.h>

#define configUSE_PREEMPTION 1
#define configUSE_IDLE_HOOK 0
#define configUSE_TICK_HOOK 0
#define configCPU_CLOCK_HZ ( ( unsigned long ) 8000000 )
#define configTICK_RATE_HZ ( ( portTickType ) 1000 )
#define configMAX_PRIORITIES ( ( unsigned portBASE_TYPE ) 4 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 85 )
#define configTOTAL_HEAP_SIZE ( (size_t ) ( 500 ) )
#define configMAX_TASK_NAME_LEN ( 8 )
#define configUSE_TRACE_FACILITY 0
#define configUSE_16_BIT_TICKS 1
#define configIDLE_SHOULD_YIELD 1
#define configQUEUE_REGISTRY_SIZE 0

/* Co-routine definitions. */
#define configUSE_CO_ROUTINES 1
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )

/* Set the following definitions to 1 to include the API function, or zero
to exclude the API function. */

#define INCLUDE_vTaskPrioritySet 0
#define INCLUDE_uxTaskPriorityGet 0
#define INCLUDE_vTaskDelete 0
#define INCLUDE_vTaskCleanUpResources 0
#define INCLUDE_vTaskSuspend 0
#define INCLUDE_vTaskDelayUntil 1
#define INCLUDE_vTaskDelay 1


#endif /* FREERTOS_CONFIG_H */


Добавил файлы (как ссылки) -
tasks.c
port.c
list.c
heap_2.c
queue.c

Добавил ссылки на директории
freeRtos/source/include
freeRtos/source/portable/GCC/atmega323.

Микроконтроллер выставлен на 8мг от внутреннего генератора, остальные фьюзы не трогал.
При компиляции ошибок не выдает, но при этом неработает не в протеусе не на железе. Уже неделю мучаюсь, все примеры испробывал. Может у ковото есть готовый проект под Atmel Studio 6.1? В чем моя ошибка?

Сообщение отредактировал IgorKossak - Jan 16 2016, 15:41
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 15:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01357 секунд с 7
ELECTRONIX ©2004-2016