0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

移植 ZephyrRTOS 到思澈 SF32LB58 过程笔记 一

KiCad 来源: KiCad 作者: KiCad 2025-07-04 11:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

为 ZephyrRTOS 增加 SoC 支持(2) 基础框架 N32L406 的移植还没有完成,最近又开坑做思澈 SF32LB58 的移植。原因一是这个芯片带蓝牙和 2D GPU,适合做一些低功耗显示的设备,比如码表,导航设备,以及智能眼镜之类,我觉得挺有意思;另一个原因是思澈的老板也愿意支持开源,说很多芯片寄存器功能愿意开发给社区,特别是包括蓝牙的接口也愿意“以后”开放给社区对接 ZephyrRTOS 的蓝牙协议栈,所以我觉得还是可以尝试做一下。还有一个原因是他们说是愿意提供给社区开发者提供一些资金支持,但是目前看他们讨论的情况,这个资金支持倒也不能抱太大期待。先用爱发电吧。思澈的资料都可以从官方 wiki: https://wiki.sifli.com/index.html 这里下载。我先基于官方仓库https://github.com/OpenSiFli/zephyr提供的一个移植仓库开始的,但是因为代码组织和依赖的关系,我重新组织新建了仓库:manifest repo: https://github.com/iotpi/sifli-porting-templatehal module: https://github.com/iotpi/hal_sifli,主要包含芯片的 baremetal 驱动。zephyr porting: https://github.com/iotpi/sifli_zephyr,这一仓库预期是以后可以合并到 zephyr upstream,但是工作量还是很巨大,遥遥无期另外还有一个朋友完全基于官方的仓库继续修改的组织架构,放在他自己的仓库下:https://github.com/ck-telecom/zephyr-SiFli,有兴趣的朋友也可以围观。1. 芯片架构wKgZPGhnSGKAR1EEAARcslEPo4E393.png这个芯片架构还有点复杂,有三个核,分别是 HCPU, ACPU和LCPU。其中 LCPU 一般用心跑蓝牙协议栈。蓝牙协议栈还是闭源的。这里 HCPU 和 ACPU 合起来组成了 HPSYS,LCPU单独组成 LPSYS。2. 设备树(devicetree, dts)我看了 nxp 和 nordic 对于多核 MCU 架构的dts定义方式,是把所有的核定义在了一个基础 dtsi里,然后在特定的核的 dtsi 定义里再 /delete-node/ 移除掉。我现在并不明白他们为什么要这么使用,问了 zephyr 的专家,也并不确定。所以目前我使用了我自己认为更适合的方式去组织,如果后面遇到了新问题,再考虑修改这个结构。鉴于上面的芯片功能框图,我定义基础的 dts 文件:sf32lb58.dtsi,用于定义整个 SoC 共用的外设;wKgZPGhnSGKAAPL2AACbRi-PCWU027.png  sf32lb58_hpsys.dtsi,定义 HCPU 和 ACPU 共用的 外设(内存);wKgZPGhnSGKAPl6EAAB9wKWLjDM283.pngsf32lb58_hcpu.dtsi,仅供 HCPU 访问的CPU及内存;wKgZPGhnSGKAThq7AADoXfCb3BM307.pngsf32lb58_acpu.dtsi,仅供 ACPU 访问的CPU及内存;wKgZPGhnSGKAJrfrAADjSTyhnAE618.pngsf32lb58_lpsys.dtsi,定义 LPSYS 访问的设备与内存;wKgZPGhnSGOABEXCAAAge60YxfA770.pngsf32lb58_lcpu.dtsi,定义 LCPU 相关的CPU和内存。wKgZPGhnSGOAX7-vAADlT68Ixak764.pngsf32lb586.dtsi:定义 具体 sf32lb586 特定的配置,应该主要是 合封的PSRAM 和 FLASH 的配置。sf32lb586_hcpu.dtsi:这个文件应该由板级 dts 定义包含的头文件wKgZPGhnSGOAcmH2AAAfM0XM9NY020.png同样还要定义sf32lb586_acpu.dtsi, sf32lb586_lcpu.dtsi注意,上面的截图都只作为参考,最终编译有问题或者别的架构原因,上面的内容还是会变更。下期继续填坑。文章里如果出现错误,或者您有什么建议,欢迎留言指正!感谢!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    119

    文章

    6226

    浏览量

    177565
  • 移植
    +关注

    关注

    1

    文章

    407

    浏览量

    29217
  • RTOS
    +关注

    关注

    25

    文章

    862

    浏览量

    122616
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    特应用 | 增材制造中的高精度过程监控与误差

    PBF-LB/M 增材制造中,阿伦大学激光应用中心采用 iDS 的两款 USB3 工业相机(分别负责动态过程高速捕捉与静态层高分辨率检测)构建视觉检测系统,既为工艺参数优化提供关键数据,也成功应用于
    的头像 发表于 11-20 10:36 201次阅读
    友<b class='flag-5'>思</b>特应用 | 增材制造中的高精度<b class='flag-5'>过程</b>监控与误差

    SF51 - SF58超快恢复整流二极管规格书资料

    电子发烧友网站提供《SF51 - SF58超快恢复整流二极管规格书资料.pdf》资料免费下载
    发表于 09-16 16:34 0次下载

    对 AN65974 项目中 SF_streamIN.img 和 SF_streamOUT.img 的使用有疑问,求解答

    PC。 为了实现这点,我假设我需要使用 Bulk OUT 端点(0x01),如 SF_streamOUT.img 中所示。 我的问题是 SF
    发表于 08-15 08:17

    移植 ZephyrRTOS SF32LB58 过程笔记之二 建立板级定义

    ZephyrRTOS 的编译,是从指定板子 (board) 标识符开始的。所以为了编译测试我们的定义和代码,就必须先定义对应的板子。目前我这里使用的是 SF32LB58 devkit开发板,所以
    的头像 发表于 07-05 11:20 2051次阅读
    <b class='flag-5'>移植</b> <b class='flag-5'>ZephyrRTOS</b> <b class='flag-5'>到</b><b class='flag-5'>思</b><b class='flag-5'>澈</b> <b class='flag-5'>SF32LB58</b> <b class='flag-5'>过程</b><b class='flag-5'>笔记</b>之二 建立板级定义

    LB/LMB/MB/HB 分集接收模块 skyworksinc

    /HB 分集接收模块真值表,LB/LMB/MB/HB 分集接收模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 05-16 18:32
    <b class='flag-5'>LB</b>/LMB/MB/HB 分集接收模块 skyworksinc

    UHV-605 SF6纯度分析仪操作使用

    sf6纯度分析仪主要用于测量SF6空气SF6/N2混合气体的SF6气体纯度。探测组件可快速准确地测出SF6纯度。
    发表于 05-16 16:24 0次下载

    Sky5® LB / MB / HB 分集接收模块 skyworksinc

    ,Sky5® LB / MB / HB 分集接收模块真值表,Sky5® LB / MB / HB 分集接收模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 05-15 18:33
    Sky5® <b class='flag-5'>LB</b> / MB / HB 分集接收模块 skyworksinc

    Sky5® LB/MBV/HB 分集接收模块 skyworksinc

    ® LB/MBV/HB 分集接收模块真值表,Sky5® LB/MBV/HB 分集接收模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 05-12 18:32
    Sky5® <b class='flag-5'>LB</b>/MBV/HB 分集接收模块 skyworksinc

    UHV-615全自动SF6密度继电器校验仪操作使用

    SF6开关是电力系统广泛使用的高压电器SF6开关的可靠运行已成为供用电部门最关心的问题之SF6气体密度继电器是用来监测运行中SF6开关本
    发表于 05-09 17:48 0次下载

    Sky5® LB/MLB/MB/HB 分集接收模块 skyworksinc

    ,Sky5® LB/MLB/MB/HB 分集接收模块真值表,Sky5® LB/MLB/MB/HB 分集接收模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 05-07 18:31
    Sky5® <b class='flag-5'>LB</b>/MLB/MB/HB 分集接收模块 skyworksinc

    Sky5® LB/MB/HB 分集接收模块 skyworksinc

    ® LB/MB/HB 分集接收模块真值表,Sky5® LB/MB/HB 分集接收模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 04-11 18:34
    Sky5® <b class='flag-5'>LB</b>/MB/HB 分集接收模块 skyworksinc

    Sky5® LB/MB/HB LNA Bank 模块 skyworksinc

    资料,Sky5® LB/MB/HB LNA Bank 模块真值表,Sky5® LB/MB/HB LNA Bank 模块管脚等资料,希望可以帮助广大的电子工程师们。
    发表于 04-11 18:31
    Sky5® <b class='flag-5'>LB</b>/MB/HB LNA Bank 模块 skyworksinc

    Sky5® LB/LMB/MB/HB 和 4x4 MIMO 分集接收模块 skyworksinc

    的引脚图、接线图、封装手册、中文资料、英文资料,Sky5® LB/LMB/MB/HB 和 4x4 MIMO 分集接收模块真值表,Sky5® LB/LMB/MB/HB 和 4x4 MIMO 分集接收模块管脚等资料,希望可以帮助广
    发表于 04-11 15:21
    Sky5® <b class='flag-5'>LB</b>/LMB/MB/HB 和 4x4 MIMO 分集接收模块 skyworksinc

    LB9-110W2(LB9-126W2)电流互感器

    LB9-110W2(LB9-126W2)电流互感器供60~145KV、50~60Hz 电力系统作电流、电能测量及继电保护用 产品概述 该系列电流互感器包括LB-60W2、LB
    发表于 04-01 10:36

    如何将RT-Thread移植NXP MCUXPressoIDE上

    RT-Thread默认支持的IDE只有IAR 和 Keil, 那如何将RT-Thread移植NXP MCUXPressoIDE上呢?本文内容比较简单但稍有琐碎,希望对有需要的小伙伴有所帮助。
    的头像 发表于 02-13 10:37 2441次阅读
    如何将RT-Thread<b class='flag-5'>移植</b><b class='flag-5'>到</b>NXP MCUXPressoIDE上