5分钟上手国产STAR-MC1单片机

科技   2024-11-19 12:01   北京  

最近收到面包板社区寄来的一款基于Cortex-M33内核的国产单片机开发板:FR3068D-C

这块开发板主控为国产MCU厂商富芮坤的FR3068E-C,还带有一块显示屏:

拿到这块板子,惊艳到我的不是开发板,而是他们提供的例程(非常的丰富)。

除了单片机常规的外设GPIO、UART、SPI、I2C等,还有很多学习单片机都会用到的协议栈(lwip)、文件系统(fatfs/littlefs)、日志库(EasyLogger)、数据库(FlashDB)、GUI(lvgl)、coremark跑分,还有USB、RTOS等很多单片机学习和开发项目中都会用到的技术。

这些例程是开源、且可以直接编译运行的代码,开发环境主要是Keil MDK。

你可别小瞧这些例程,我敢说,绝大多数工作三五年,甚至十年的资深工程师都没有完全弄懂这些技术。

这里先给大家看一段出厂的Demo:

接下来,教大家用5分钟时间上手这款国产Cortex-M33内核单片机。

关于FR3068E单片机

教大家上手之前,先简单介绍一下这款国产Cortex-M33内核单片机。

FR3068E这款单片机,它不是有一款纯单片机,而是一块集成蓝牙核的双核芯片。

蓝牙部分我们这里不描述,主要讲述单片机部分,从框图可以看得出来单片机是一个 32 位的 CM33 内核处理器。然后,片上资源以及外设也非常的丰富。
更多关于单片机的介绍,大家可以进入富芮坤官网查看:

https://www.freqchip.com/

5分钟上手国产CM33单片机

官网提供了大量的开发文档、资料、例程,我这里给大家理一下上手思路,以及注意事项。

1、官网下载开发文档、资料、例程

下载地址

https://www.freqchip.com/sjds

上手之前,建议先看下这些开发文档,以便了解更多信息。

2、搭建开发环境

这里主要有两个环境:Keil MDK 和 Python,所以,需要在 WIndows 操作系统环境下进行开发。

Keil MDK下载地址:

https://www.keil.com/demo/eval/arm.htm

具体的安装过程这里不描述,请参考:Keil 系列教程

Python下载地址:

https://www.python.org/getit/

目前最新版本python-3.13.0:

https://www.python.org/ftp/python/3.13.0/python-3.13.0-amd64.exe

同样,Python具体的安装过程这里不描述,Windows安装程序,基本上一路next即可,可以参考网上安装教程。

提醒一下:Python环境没有搭建好,最后生成可执行(下载)文件,就会出错。

大家可以通过cmd命名输入 python 进行查看,如果出现类似下面情况,证明 python 环境搭建好了。

3、打开例程、编译

这里我们打开(上面下载好的)官方提供的例程,比如:lvgl_demo工程

我们这里直接双击,用Keil MDK打开工程,然后直接编译,最后会看到编译0错误的编译信息:

此时,在(output)输出路劲下就会看到生成这样几个文件,其中Project_burn.bin这个文件就是我们用于下载到单片机中的程序文件。

4、下载程序

这里用官网提供的下载工具:

然后选在刚才编译好的文件,点击【打开烧录】,复位单片机(按一下复位键):

最后会提示【烧录成功】,然后还有一段“乱码”出现:

此时,就会看到显示屏上有画面:

单片机片上外设例程:

我们再打开一下外设例程,比如GPIO例程:

官网提供例程LED引脚和我们开发板有点不匹配,我们这里修改一下:

void gpio_demo(enum_GPIO_Demo_t fe_Demo){    /* init GPIO CLOCK */      __SYSTEM_GPIOD_CLK_ENABLE();    __SYSTEM_GPIO_CLK_SELECT_COREH();
printf("gpio clock:%d\r\n", system_get_peripheral_clock( PER_CLK_GPIOx));
switch(fe_Demo) { case GOIO_OUTPUT: { GPIO_Handle.Pin = GPIO_PIN_6|GPIO_PIN_7; GPIO_Handle.Mode = GPIO_MODE_OUTPUT_PP; GPIO_Handle.Pull = GPIO_PULLUP; gpio_init(GPIOD, &GPIO_Handle);
while(1) { //pin Output high Level gpio_write_pin(GPIOD, GPIO_PIN_6|GPIO_PIN_7, GPIO_PIN_SET); system_delay_us(100000);
//pin Output low Level gpio_write_pin(GPIOD, GPIO_PIN_6|GPIO_PIN_7, GPIO_PIN_CLEAR); system_delay_us(100000); } } }}

编译好,然后,以上面的下载方式进行下载,就会出现:

此时,在开发板上,就会看到:

看到这里,是不是觉得很简单?

是的,非常简单,对于有一定基础的同学,5分钟就可以搞定!

END

来源:strongerHuang

版权归原作者所有,如有侵权,请联系删除

推荐阅读
为什么大厂都在用Yocto?
培养一个优秀的嵌入式工程师有多难?
C/C++大限将至,美国强硬要求2026年前全面剔除!

→点关注,不迷路←

嵌入式微处理器
关注嵌入式相关技术和资讯,你想知道的都在这里。
 最新文章