标题:
STM32F103C8T6 FreeRTOS V10.1.1源码下载
[打印本页]
作者:
freenaut
时间:
2018-9-11 15:13
标题:
STM32F103C8T6 FreeRTOS V10.1.1源码下载
STM32F103C8T6 上移植的最新 FreeRTOS V10.1.1
单片机源程序如下:
#include "FreeRTOS.h"
#include "task.h"
#include "main.h"
#define LED_Port GPIOC
#define LED_RCC RCC_APB2Periph_GPIOC
#define LED_Pin GPIO_Pin_13
#define LED0 PCout(13)
/*******************************************************************************
* ? ? ? : delay_ms
* ???? : ????,??ms
* ? ? : i
* ? ? : ?
*******************************************************************************/
void delay_ms(u32 i)
{
u32 temp;
SysTick->LOAD=9000*i; //??????, 72MHZ?
SysTick->CTRL=0X01; //??,???????,???????
SysTick->VAL=0; //?????
do
{
temp=SysTick->CTRL; //????????
}
while((temp&0x01)&&(!(temp&(1<<16)))); //??????
SysTick->CTRL=0; //?????
SysTick->VAL=0; //?????
}
void LED_Init(void)
{
GPIO_InitTypeDef LED_GPIO;
RCC_APB2PeriphClockCmd(LED_RCC,ENABLE);
LED_GPIO.GPIO_Mode = GPIO_Mode_Out_PP;
LED_GPIO.GPIO_Pin = LED_Pin;
LED_GPIO.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(LED_Port,&LED_GPIO);
LED0 = 1;
}
void vLedTask()
{
while(1)
{
LED0 = !LED0;
vTaskDelay(1000 / portTICK_PERIOD_MS);
}
}
int main()
{
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);
SystemInit();
LED_Init();
xTaskCreate(vLedTask, "vLedTask", configMINIMAL_STACK_SIZE, NULL, 3, NULL);
vTaskStartScheduler(); //??????
for(;;){
LED0 = !LED0;
delay_ms(100);
}
}
复制代码
所有资料51hei提供下载:
STM32F103C8T6_FreeRtos_Demo.rar
(301.85 KB, 下载次数: 107)
2018-9-12 04:52 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1