前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FreeRTOS在英飞凌TC3xxx上移植

FreeRTOS在英飞凌TC3xxx上移植

作者头像
用户1605515
发布2023-10-30 17:00:32
3590
发布2023-10-30 17:00:32
举报
文章被收录于专栏:嵌入式程序猿嵌入式程序猿

摘要

本篇文档主要用来介绍FreeRTOS在英飞凌TriCore TC33x系列上的移植和使用

FreeRTOS介绍

FreeRTOS自从被AWS收购后,不断的发展壮大,使用的人群非常庞大,FreeRTOS 是市场领先的面向微控制器和小型微处理器的实时操作系统 (RTOS),与世界领先的芯片公司合作开发, FreeRTOS 通过 MIT 开源许可免费分发,包括一个内核和一组不断丰富的 IoT 库,适用于所有行业领域。FreeRTOS 的构建突出可靠性和易用性。

TC3xx介绍

TC3xxx系列是英飞凌推出的基于Tricore架构的32微控制器,性能高超,广泛应用于汽车电子行业对安全要求比较高的部件,如转向,刹车,等高安全等级的地方。具体的性能参数可以参考官方的数据手册,这里不在赘述。

动手移植

移植前需要自己下载准备FreeRTOS软件源码包,这个是开源的,无论是在官网还是Githhub都可以下载到,除此之外还需要安装开发环境IDE,这里我们使用免费的AURIX Development Studio V1.9.

新建工程

在ADS下新建一个工程

选择芯片

添加文件夹

完后成在工作空间下建成一个基础工程,在工程目录架构下新建两个文件夹OS和AppSw,一个用来存放RTOS源码包,一个用来存放我们的应用,建好后,加载如工程,如下图所示

修改配置

首先修改FreeRTOSConfig.h文件对系统进行相关配置和裁剪,因为我们使用的芯片是300M,所以将CPU时钟频率修改为300000000Hz,心跳为1ms,设置堆栈大小,根据实际调整,选用STM0作为系统的心跳定时器,也可以选用其他定时器。

修改移植

对port文件夹下的移植文件进行修改,这里如果是参考官方的文档,修改很少,推荐大家使用,文末我会放上移植好的工程供大家参考。

建立应用

修改OsTasks.c文件

创建任务

完成任务实现函数,就可以调用使用了,这里我们建立了两个任务,任务1是每200ms闪烁LED1,任务2是每500ms闪烁LED2.

验证

对任务进行初始化,并开启调度器,如果编译没有错误就可以将代码下载到板子上进行验证,文中工程使用的硬件是AURIX TCxx4 lite Kit V1版本的硬件。可以看到两个LED按照设计的预期执行闪烁,证明正常运行,后期可基于这个工程添加更多功能。

总结

之前很早给大家介绍过在ARM平台下移植freeRTOS, 今天这个移植是基于Tricore平台架构,可以看到只要掌握移植的关键步骤,再加上参考一些资料,还是很容易移植成功,随文附录工程,供大家参考

链接:https://pan.baidu.com/s/1z0GwKzxf4y78WQIjcDO7XA

提取码:ytnb

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-10-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 嵌入式程序猿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 摘要
  • FreeRTOS介绍
  • TC3xx介绍
  • 动手移植
    • 新建工程
      • 添加文件夹
        • 修改配置
          • 修改移植
            • 建立应用
              • 验证
              • 总结
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档