本帖最后由 skyworth74 于 2022-2-13 20:25 编辑
GD32L233C拥有16KB的SDRAM 适合跑RTOS,现在系统封越做越复杂,简单的前后台模式已经无法满足同时多人开发的需求了,每个同学负责一个模块,最后实现系统集成已经成为嵌入式系统开发的趋势了,所以拿到开发板的第一件事就把RTOS移植进来,freertos 是嵌入式系统开发的首选,不像ucosIII涉及版权问题,自从amazon 收购freertos 以后,freertos得到飞速的发展,lpwip、json、等等和IOT有关的各种模块都有现成的,不需要自己再造车轮了,你要负责的就是创意实现和搭积木。
好了闲话少说,直接开始撸代码。
1、先从keil 网站或者兆易创新上下载GigaDevice.GD32L23x_DFP_1.0.0.pack包双击开始安装就完成了GD32L233C开发环境的搭建
2、下载GD32的GD32L23x_Demo_Suites_V1.1.0.rar demo包解压到D盘找到01_GPIO_Running_LED这个项目用keil打开
3、点击keil Manage Run-Time Environment选项出现如下对话框把和freertos有关的选择框打上勾如下图:
4、打开RTE_Components.h 增加一条宏定义
#define CMSIS_device_header "gd32l23x.h"
如下图
5、打开gd32l23x_it.c文件把gd定义的三个中断函数屏蔽掉,直接使用freertos 里面portasm.c 里面的函数,freertos真是贴心
6、在main.c 函数里面添加一个任务和任务启动函数
xTaskCreate(LED_Task,"led_task",50,NULL,2,&led_task_handler);
vTaskStartScheduler();
万事俱备只欠东风,开始编译然后点击运行,系统就开始跑起来了
LED灯的基本框架已经搭好,实现了渐变过程
你就是星空中最亮的那盏灯
|