I work to port FreeRTOS(v.7.0.2) to STM32F103 with Standard peripheral library ver 3.5.0.
I read your post. I think you can slove my problem, so I send you this mail.
Please, would you help me… See below. <<environments>>
MCU : STM32F103VB
Compiler : IAR Ver 6.21
FreeRTOS V7.0.2
Std peripheral library version V3.5.0 << Problems>>
My problems is below – 2 problems. 1. Compile Error on porting FreeRTOS.
File => portasm.s (Line. 57)
Message => Error:Failed to open #include <FreeRTOSConfig.h> I don’t know why. I did several actions, but didn’t catch error. 2. The task is not work.
for 1st problems, I uncommented including sentense(eg. // #include <RTOSConfig.h>)
Then, I defined words needed in portasm.s
#ifndef configMAX_SYSCALL_INTERRUPT_PRIORITY#define configMAX_SYSCALL_INTERRUPT_PRIORITY 191 /* equivalent to 0xb0, or priority 11. */
#endif
Then, it disappeared error message. and I made task to print out Simple MESSAGE.I made Task1 that print out simple Message, but that’s not work. See below.
* Main function ===========================================================
int main(void)
{
SYSTickInit();
AppGPIOInit();
AppUARTInit();
printf(”%s”, MESSAGE1);
/* Create Task */
xTaskCreate( Task1, “Task1”, /*TASK_SIZE*/ 240 , NULL, 1, /*&task1*/ NULL);
/* Start the scheduler. */
vTaskStartScheduler();
return 0;
}
* Task Function ===========================================================
void Task1( void *pvParameters ){
portTickType gpio_Time;
gpio_Time = xTaskGetTickCount();
printf(”%s “, MESSAGE1);
while(1)
{
GPIOB->ODR ^= GPIO_Pin_6;
vTaskDelayUntil( &gpio_Time, 1000 );
}
}
* SysTick intialization Function =====================================================
void SYSTickInit(void)
{
/* Setup SysTick Timer for 1 msec interrupts */
if (SysTick_Config(SystemCoreClock/1000))
{
/* Capture error */
while (1);
}
} CF)
Other UART, GPIO functions OK. I checked.