[PIC32/SAM] 在PIC32平台上构建FreeRTOS系统

[复制链接]
711|4
 楼主| tpgf 发表于 2025-2-22 10:32 | 显示全部楼层 |阅读模式
使用MPLAB X IDE创建工程
1.新建工程



创建一个MCC项目(需安装MCC Harmony 插件)。

2.指定MCC Harmony库文件路径



3.指定项目位置和编辑项目名称



4.指定芯片名称



5.创建工程
点击Finish后,等待IDE创建工程。



IDE创建完毕后,主界面如下:



弹出了3个窗口,右边大窗口显示的是系统框图,图形化显示Project Resources 中的配置。开发者可以通过点击Device Resources的选项来调整系统框图。

6.添加FreeRTOS



添加rtos的服务和库,系统框图同时变化。如下图所示。



这一步完成后,OS还缺一个系统时间。

7.添加系统时间



在系统服务组件中添加时间。



这里添加服务后发现需要指定时间源,指定一个定时器即可。



这里我们使用CORE TIMER这个定时器。将CORE TIMER 和TIME连接即可。TIMER2暂时不用先删掉。



此时系统框图完成。接下来要配置MCU时钟和FreeRTOS的库和应用部分。

8.MCU时钟配置
点击Plugins弹出菜单,点击时钟配置菜单。



根据实际硬件配置选择即可。这里我根据硬件配置为,时钟源为外部8MHz晶振,开启锁相环,先2分频再20倍频再2分频,外设时钟和CPU核心时钟都为40MHz。(这里我的板子PCB有问题CPU跑不了80MHz)



9.配置FreeRTOS库



在系统框图中点击 FreeRTOS即可对系统进行调整,这里我们保持默认即可。

10.FreeRTOS应用配置



这里我们设置系统有2个应用,应用名字分别为led和eeprom.执行周期分别为100ms和500ms.



以上配置完成时点击Generate按钮即可。



工程代码构建完成后如下图:



11.验证工程代码
点击编译按钮,代码编译成功。



此时即可在此代码基础上进行应用的开发了。
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/sf1912/article/details/141431193

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
yangxiaor520 发表于 2025-2-22 15:40 来自手机 | 显示全部楼层
PIC32是ARM内核还是Microchip自己设计的内核
xinxianshi 发表于 2025-2-22 21:08 来自手机 | 显示全部楼层
集成了这个功能
雨下纪事 发表于 2025-9-15 15:04 | 显示全部楼层
在 PIC32 平台构建 FreeRTOS 系统,先选适配 PIC32 型号的 FreeRTOS 源码,移植时配置硬件抽象层,适配 PIC32 的中断控制器、定时器(用于任务调度)。接着初始化系统时钟、外设,创建任务(如 LED 闪烁、串口通信任务)并配置优先级,最后通过 FreeRTOS API 实现任务调度与通信,完成系统构建。
短句家 发表于 2025-9-19 14:24 | 显示全部楼层
在 PIC32 平台构建 FreeRTOS 系统,先下载适配的 FreeRTOS 库,通过 MPLAB X 导入。配置系统时钟与中断向量,将 FreeRTOS 中断挂钩到 PIC32 异常处理。创建任务函数,用 xTaskCreate () 创建任务,设置优先级。调用 vTaskStartScheduler () 启动调度器,通过任务切换实现多任务管理,注意堆栈大小与资源互斥处理。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2384

主题

17635

帖子

21

粉丝
快速回复 在线客服 返回列表 返回顶部