加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

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

11/14 10:41
725
阅读需 8 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

微信公众号 | strongerHuang

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

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

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

除了单片机常规的外设GPIOUARTSPII2C等,还有很多学习单片机都会用到的协议栈(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:%drn", 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分钟就可以搞定。

相关推荐

电子产业图谱

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。