查看: 3707  |  回复: 2
GD32 MCU 开发板 Workshop 报告:RT-Thread点灯
STORM
1
主题
1
回复
发表于2019-05-19 16:17:53 | 只看该作者
1# 电梯直达


一、 开发板开箱图

包裹里面一个GD的厚厚的笔记本,一个颜色很鲜艳的背包,当然还有一个主角——GD32E231的白色开发板和一根mini usb的数据线。

开发板由两部分构成,仿真器和GD32的最小系统。

1.靠近USB口这部分是板载仿真,有了它我们不需要JLINK也能调试程序了,上面还有一个PTC,起到一定的保护作用。

2.最小系统这里,除了芯片晶振外,还有两个按键 一个复位按键 一个用户自定义按键,四个用户自定义LED。其余引脚与排针相连,排针是没有焊接的,有需要的同学可以自行焊接。

二、 GD32 MCU 产品的介绍
GD32 MCU主要规格

GD32E23x系列器件是基于ARM® Cortex-M23处理器的32位通用微控制器。 Cortex-M23
处理器的所有存储访问, 根据不同的目的和目标存储空间,都会在AHB总线上执行。存储器的
组织采用了ARMv8M结构,预先定义的存储器映射和高达4 GB的存储空间,充分保证了系统
的灵活性和可扩展性。 (摘自GD32E23x 用户手册 )

GD32 MCU 各模块的性能优势

Cortex-M23处理器是一个低功耗32位处理器。 适用于需要一个区域优化处理器来进行深度
嵌入式应用的场景。 Cortex-M23处理器为开发人员提供了显著的好处,包括:
一个简单的体系结构,易于学习和编程;
超低功耗、 高效节能;
优秀的代码密度;
确定性、 高性能中断处理;
向上兼容Cortex-M处理器家族系列;
Cortex-M23处理器通过精简强大的指令集和广泛优化的设计提供高效处理能力,提供包括单
周期乘法器和17周期分频器的高端处理硬件。
Cortex-M23处理器高度集成了一个可配置的嵌套矢量中断控制器(NVIC),以提供业界领先
的中断性能。
下面列出由Cortex-M23提供的一些系统外设:
低延迟,高速外设I/O端口;
向量表偏移寄存器;
断点单元;
数据观测点;
串行调试接口。

(摘自GD32E23x 用户手册)

三、 方案介绍+方案系统框图

在GD32 MCU上运行RT-Thread系统 ,并且创建创建两个任务

1. 4个LED闪烁。

2. 串口输出信息。

四、 照片示例和功能的实现

1.从RT-Thread官网下载板级支持包。

2.找到gd32e230k_start 支持包。

3.通过RT-Thread官方工具Env根据自己需要裁剪系统或者增加功能。

4.创建两个任务。

5.写任务的入口函数。

6.编译调试。


RTT已经将系统移植好了,所以不需要我们自己来做移植,这颗芯片的功能很强大,后续有空了,再做个链接机智云,实现智能控制的例子。


五、 代码分享(粘贴部分代码, 主要以压缩包的形式)

工程文件在  rt-thread-v4.0.1 -gd32\rt-thread\bsp\gd32e230k_start 2 下面,因为会用到裁剪工具,不方便把文件独立出来,所以将整个工程上传。rt-thread-v4.0.1 -gd32.zip

rt_thread_t tid1 = RT_NULL;

rt_thread_t tid2 = RT_NULL;

static void thread1_entry(void* parameter)

{

rt_kprintf("thread1 dynamicly created ok\n");

while(1)

{

gpio_bit_reset(GPIOA,GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_11|GPIO_PIN_12);

rt_thread_mdelay(100);

gpio_bit_set(GPIOA,GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_11|GPIO_PIN_12);

rt_thread_mdelay(100);

}

}

static void thread2_entry(void* parameter)

{     float a,x,y;

rt_kprintf("thread2 dynamicly created ok\n");

while(1)

{

rt_thread_mdelay(50);

for(y=1.5f; y>-1.5f; y-=0.1f)

{

for(x=-1.5f; x<1.5f; x+=0.05f)

{

a = x*x+y*y-1;

//这里的@符号即为打印出的心形图案符号,可更改

char ch = a*a*a-x*x*y*y*y<=0.0f?'#':' ';

rt_kprintf("%c",ch);

}

rt_kprintf("2019-05-20 19:05:20\n");

}

}

}

int rt_application_create()

{

tid1 = rt_thread_create("thread1",

thread1_entry, RT_NULL,

512, 6, 10);

if (tid1 != RT_NULL)

rt_thread_startup(tid1);

tid2 = rt_thread_create("thread2",

thread2_entry, RT_NULL,

512, 6, 10);

if (tid2 != RT_NULL)

rt_thread_startup(tid2);

return 0;

}


Marvell
0
主题
5
回复
发表于2019-05-25 16:48:16   |  只看该作者
2#
做的很好!
STORM
1
主题
1
回复
发表于2019-05-30 11:13:38   |  只看该作者
3#

感谢立创商城和兆易创新(GigaDevice)能给这次机会,完成了测评,当然也收到了奖品,GD32真心很不错,以后在学习和工作中会积极向国产芯片靠拢,国产芯片,国产RTOS,国产EDA,相信会越来越好。祝大家生活愉快。 

 


主题

回复
  • 温馨提示: 标题不合格、重复发帖、发布广告贴,将会被删除帖子或禁止发言。 详情请参考: 社区发帖规则
  • 您当前输入了 0 个文字。还可以输入 8000 个文字。 已添加复制上传图片功能,该功能目前仅支持chrome和火狐

禁言/删除

X
请选择禁言时长:
是否清除头像:
禁言/删除备注:
昵 称:
 
温馨提示:昵称只能设置一次,设置后无法修改。
只支持中文、英文和数字。

举报

X
请选择举报类型:
请输入详细内容:

顶部