逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦

 

 

在进入今天的正文以前,再广而告之一遍,RT-Thread是第十六届智能汽车竞赛的赞助商之一,并且会根据各组别对RT-Thread的使用情况来评选特别奖和额外的晋级全国总决赛的机会

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread

推文截图

 

 

感谢RT-Thread为大赛提供的赞助及支持。

 

前期,逐飞在NXP、灵动、沁恒三家芯片厂商及RT-Thread公司的技术支持下移植好RT-Thread操作系统到下列芯片平台:

 

 

  • RT1064
  • RT1021
  • MM32SPIN27
  • MM32F3277
  • CH32V103

 

并进一步做好了智能车外设需要的外设驱动,2月底至3月初陆续开放基于RT-Thread的开源库,并通过gitee公开给所有参赛同学使用(MM32SPIN27、CH32V103由于内存较小,因此主要适配RT-Thread nano版本的,这样可以减少ram的开销。RT1064、RT1021、MM32F3277、TC2644、TC364、TC377资源相对丰富,所以可以适配RT-Thread的完整版本)。已适配好RTT的开源库可以进入逐飞在gitee上的仓库进行搜索下载。

 

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_02

 

今天,采用英飞凌单片机相关的三个组别(基础四轮组、AI电磁越野组、节能信标组)终于也可用用上RT-Thread操作系统啦。今天给大家带来的是“适配了RT-Thread操作系统的英飞凌TC264、TC364、TC377平台开源库”,本次英飞凌RTT开源库是由RTThread官方与逐飞科技一起合作完成的,RT-Thread工程师负责修改RT-Thread操作系统的底层文件,以适配英飞凌TriCore内核的单片机和AURIX Development Studio IDE软件。逐飞科技将修改好的RT-Thread操作系统的底层文件移植到现有的英飞凌开源库中,做好智能车应用的相关外设适配,提供了10个内核示例便于快速上手,为了方便没有接触过操作系统的同学使用,我们还特意编写了基于RT-Thread的智能车框架示例,避免大家继续使用裸机思想构建整个框架。

 

正式给大家做个简介:

 

TC377、TC364、TC264适配RT-Thread开源库继续沿用逐飞科技其他开源库的代码风格,使用过逐飞库的同学应该知道,简洁易懂,容易上手。本次TC377、TC364、TC264适配RT-Thread开源库使用官方iLLD作为最底层。然后将各个模块使用的寄存器进行二次封装,提升易用性。如果有同学有更多需求,发现库的现有功能不满足自己使用需求时,可以采用同样的方式自己调用iLLD或者寄存器来实现所需要的功能。

大家可以通过逐飞的库来学习官方的iLLD怎么使用,当自己学会怎么使用官方的iLLD之后也可以直接使用iLLD,这样的好处是控制自己的工程没有多余的代码,降低代码体积,提高效率。我们也并不希望用户只会用我们的库来做开发,制作开源库的目的是希望初学者不被门槛给拦在外面,提供一个入门学习的渠道。

 

 

逐飞TC377、TC364、TC264的RT-Thread开源库包含的内容如下图。

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_03

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_04

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_05

 

 

可以通过TC377、TC364、TC264适配RT-Thread开源库的目录结构图来了解开源库结构:

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_06

 

CODE文件夹下放置的是用户自己添加的代码文件,当用户自己添加文件的时候我们建议全部添加在这个文件夹内;

USER文件夹下放置的是main.c、isr.h、isr.c文件;

Libraries/infineon_libraries文件夹下放置的是官方的SDK底层库;

Libraries/doc文件夹下放置的是开源库版本、推荐引脚分配说明;

Libraries/rtthread_libraries文件夹下放置的是RTT相关的源码文件;

Libraries/seekfree_libraries文件夹下放置的是逐飞科技精心编写的底层驱动,底层驱动是用英飞凌提供的TC377的SDK进行二次封装,以简化各个模块的使用步骤,使用更加方便。如果不是参加竞赛的用户可以使用这一层的驱动来实现TC377的快速上手,也可以通过查看我们的代码用于寄存器如何使用。目前支持ADC、GPIO、EEPROM、SPI、PIT、UART、PWM、SYSTICK、ERU。如果有需要其他功能亦可直接调用寄存器来实现其他功能。

Libraries/seekfree_peripheral文件夹下放置的是各类常用的模块驱动,当使用到这些模块时只需要调用函数即可实现相应的功能,非常的简单方便。目前实现小钻风硬件二值化摄像头、总钻风全局快门灰度值摄像头、1.8寸TFT、ICM20602六轴陀螺仪、IIC通讯协议(模拟IO)、1.14寸IPS液晶屏、2寸IPS液晶屏、MPU6050六轴陀螺仪、OLED显示屏、虚拟示波器通讯协议、无线转串口模块。

 

TC364、TC264结构与TC377基本是一致的,这里就不再重复介绍。

 

Example文件夹存放的是RTThread内核部分的例程,这样方便大家学习如何使用RT-Thread。一共有10个例程如下图所示。

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_07智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_08

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_09

 

Seekfree_TC377_RTThread_Smart_Car_Demo、Seekfree_TC364_RTThread_Smart_Car_Demo、Seekfree_TC264_RTThread_Smart_Car_Demo文件夹存放的是基于RTThread操作系统的智能车框架示例,主要目的是便于没有接触过操作系统的同学们,更好的使用操作系统而不是继续使用逻辑的编程思想去构建整个工程。示例框架实现的内容如下图所示。

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_10

 

好了,简介完毕附上适配好RT-Thread操作系统的TC系列开源库连接:

 

适配RT-Thread的逐飞TC377开源库码云链接:

https://gitee.com/seekfree/TC377_RTThread_Library

 

适配RT-Thread的逐飞TC364开源库码云链接:

https://gitee.com/seekfree/TC364_RTThread_Library

 

适配RT-Thread的逐飞TC264开源库码云链接:

https://gitee.com/seekfree/TC264_RTThread_Library

 

本期的英飞凌开源库介绍就到这里了,大家在使用库的过程中如果遇到什么BUG,请及时联系我们!我们将尽快修复。

 

本文由“逐飞科技”编辑整理,时间仓促,水平有限,难免有遗漏和错误,大神轻拍,欢迎交流指正。愿智能车世界更美好!

 

智能汽车竞赛|逐飞TC264、TC364、TC377开源库适配RT-Thread操作系统啦_RT-Thread_11