当前位置: 首页 > article >正文

龙芯+FreeRTOS+LVGL实战笔记(新)——01准备开发环境

        本专栏是笔者另一个专栏《龙芯+RT-Thread+LVGL实战笔记》的姊妹篇,主要的区别在于实时操作系统的不同,章节的安排和任务的推进保持一致,并对源码做了改进和优化,各位可以先到本人主页下去浏览另一专栏的博客列表(目前已撰写36篇,图1所示),再决定是否订阅。此外,也可以前往本人在B站的视频合集(图2所示)观看所有演示视频,合集首个视频链接为:

借助RT-Thread和LVGL,在龙芯板上搞定两个RGB灯的小任务_哔哩哔哩_bilibili

图1 《龙芯+RT-Thread+LVGL实战笔记》所有文章
图2 笔者在B站上的龙芯视频合集

        本篇是笔者开发环境的简介,并没有什么技术含量,主要是考虑到某些师生朋友是第一次使用龙芯来做嵌入式开发,一上来免不了要折腾一番开发工具。另一方面,也明确一下工具的版本,希望各位朋友与之保持一致,避免一些由于版本不同导致的程序报错。

一、开发工具的安装与配置

        必备开发工具当然龙芯的运行环境、IDE、编译工具链和驱动,选装的工具包括超级终端或串口助手、数码管或点阵取模、图片取模等。下面笔者就将自己的开发环境做一个介绍,主要都是从龙芯IDE官网下载的。由于工具的安装都比较简单,几乎就是一路“下一步”,所以安装过程就不截图了,只是明确一下版本和注意事项。龙芯IDE官网链接如下:

龙芯嵌入式开发工具|Loongson Embedded Developmen…|关于我们|龙芯嵌入式开发工具|苏州天晟软件|ide|loongarch

1.1 安装MSYS2运行环境

        LoongIDE 使用在 MingW 环境下编译的 GNU 工具链,在使用 gcc、gdb 等 GNU 工具时,需要 MingW 运行环境的支持。因此,第一步就是安装该运行环境 MSYS2,下载来源如图3所示。安装过程几乎是一路“下一步”,只是安装路径不要出现中文,最好连空格也不要有,切记!装好之后桌面上会出现图4所示的图标。

图3 MSYS2的下载来源
图4 MSYS2的桌面图标

1.2 安装龙芯IDE

        加下来,就可以安装龙芯嵌入式集成开发环境了,下载来源如图5所示,注意版本是1.2。安装过程也是一路“下一步”,路径中也不要出现中文和空格。此外,安装向导最后,还需要安装 LxLink 驱动程序,如图6所示。如果这一步没安装 LxLink 驱动,安装目录下的 driver 子目录中的 CDM21228_Setup_x86 中保存有 LxLink 的驱动程序,用户可以通过 Windows 的“设备管理器”进行安装。如果安装失败(Win7可能出现,Win10和Win11没遇到过),可以参考图7所示文档中的解决方案。

图5 LoongIDE下载来源
图6 安装LxLink驱动程序
图7 LxLink驱动常见问题文档

1.3 安装工具链

        LoongIDE 可以使用 SDE Lite for MIPS 工具链、RTEMS GCC for MIPS 工具链、LoongArch64 ELF 工具链、RTEMS GCC for LoongArch64 工具链来实现项目的编译和调试。用户可以在 LoongIDE 中安装一个或者多个工具链,使用时根据项目的实际情况来选择适用的工具链。笔者选择的是 SDE Lite 4.9.2 工具链,下载来源如图8所示,安装的时候选择 LoongIDE 所在的目录即可,一路“下一步”。

图8 工具链下载来源

1.4 配置IDE和工具链

        以上所有软件都装好后,启动 LoongIDE,可以看到界面是全中文的,版本号是1.2,如图9所示。接下来,按照图9所示选择“工具”菜单下的“GNU C/C++ 工具链”,然后按照图10和图11的示意来选择对应的工具链。

图9 配置工具链入口
图10 添加工具链按钮
图11 选择工具链所在目录

1.5 安装串口调试终端

        做嵌入式开发,像串口调试助手这类的工具肯定是少不了的,可选的也很多了。笔者这里推荐使用 MobaXterm 作为终端调试软件,功能强大而且免费(也有收费版)。当然,和谐后的版本也是很容易搜到的,这里就不展开了,附上一张笔者调试中的截图吧,如图12所示,大家可以感受一下软件的界面和支持的功能。

图12 MobaXterm调试终端

        至此,就算是完成了最基本的开发环境配置,其他与工程有关的配置放到后面用到了再说。如果您已经习惯了 Keil 或 IAR 这些 IDE,那么使用 LoongIDE 还需要有一段适应过程,比如没有函数名和变量名自动补全,打开工程或添加文件有点慢等等。

二、关于开发板与开发文档

2.1 关于开发板

        百科荣创提供给各个学校的龙芯开发板和配件各不相同,笔者接触到的就有三款(图13~图15),本教程针对的是图14中的这款。各款的核心板和屏幕是一样的,差异主要体现在部分外设的布局和驱动电路上。因此,如果各位手里的板子与教程里的不同,请在编写程序的时候一定要有针对性的修改,不过脑子的完全照搬是不可取的。

图13 大赛配套的龙芯板(2022款)
图14 大赛配套的龙芯板(2023款)
图15 大赛配套的龙芯板(2023~2024款)

2.2 关于开发文档

        龙芯的开发文档确实少的可怜,先把图16所示的这几个文档准备好吧,也是我们仅有的几份有价值的文档,有些关键信息就是从这些文档里获悉的。

图16 官方提供的开发文档

        此外,由于教程中使用了大量的 LVGL 组件,关于各类组件的用法,推荐参考《百问网LVGL中文教程手册文档》http://lvgl.100ask.net/7.11/,如图17所示。注意,一定要选 LVGL7.11 的版本。虽然最新的 LVGL9 已发布,成熟的 LVGL8 已广泛使用,但 LoongIDE 里自带的仍然是 LVGL7,所以本专栏与之保持一致。(PS:笔者也尝试移植过 LVGL8.2,但未完全成功,还在摸索之中。)

图17 百问网LVGL7的中文手册文档

        以上就是笔者针对龙芯嵌入式开发所做的准备工作,下一篇我们将会把BSP、FreeRTOS和LVGL相关的文件移植到工程中,形成一个最基本的项目雏形。

(本文完)


http://www.kler.cn/a/287848.html

相关文章:

  • js导入导出
  • 在 Node.js 中解决极验验证码:使用 Puppeteer 自动化
  • 【Oracle篇】掌握SQL Tuning Advisor优化工具:从工具使用到SQL优化的全方位指南(第六篇,总共七篇)
  • MySQL数据库:SQL语言入门 【3】(学习笔记)
  • 一文详细深入总结服务器选型
  • 六自由度双足机器人运动控制
  • 使用Python+docx+sqlite3将Word表格内容写入sqlite表中
  • 洛谷8.30
  • 算法笔记|Day38动态规划XI
  • 【化学方程式配平 / 3】
  • 网络:IPv6
  • C++:结构体变量可以被多个cpp文件共同使用
  • 大数据系统测试——大数据系统解析(上)
  • 秒级日期空间如何查询整天数据而不是截止到00:00:00到23:59:59?
  • Fabric.js中fabric.Image的深入解析
  • 深入理解Redis(一)----Redis简介+Redis为什么这么快
  • 从中国制造到全球领先,星坤连接器的全球化之路
  • huggingface.co 无法访问问题换源解决
  • Idea中修改Jsp文件的头部注释模版
  • 【LabVIEW学习篇(补充) - 15】:常用快捷键和Quick Drop
  • 版本控制工具git
  • Redis在linux环境集群部署详细介绍
  • 【数据结构】-----哈希
  • 科研绘图系列:R语言富集通路棒棒图(lollipop plot)
  • springboot中根据id查询用户信息
  • 家居设备的多彩世界,乐鑫ESP32芯片模组方案彩屏技术应用,启明云端乐鑫代理商