查看: 392|回复: 0

[分享] LPC55S69如何将特定的外设(如USB)配置到非安全区

[复制链接]
  • TA的每日心情
    慵懒
    昨天 21:16
  • 签到天数: 1946 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    40

    主题

    2万

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    15040

    活跃会员

    最后登录
    2026-8-27
    发表于 2025-12-10 16:38:45 | 显示全部楼层 |阅读模式
    问题: 我在使用NXP的LPC55S69微控制器,启用TrustZone后,如何将特定的外设(如USB)配置到非安全区,以便非安全世界的应用程序可以访问?
    正确答案与解决方案:
    LPC55S6x系列通过AHB安全控制器配置外设的安全属性。关键步骤如下:
    • 在安全世界代码中配置AHB安全控制器: 在系统初始化早期(通常是安全启动代码或安全初始化函数中),使用AHB安全控制器的寄存器将目标外设的访问权限设置为非安全。
      1. // 示例:将USB外设配置为非安全
      2. // 地址:参考用户手册中AHB_SECURE_CTRL寄存器的偏移量
      3. #define AHB_SECURE_CTRL_BASE 0x40024000
      4. volatile uint32_t *AHB_SECURE_CTRL_SETTING = (volatile uint32_t *)(AHB_SECURE_CTRL_BASE + 0x118); // SETTING_0寄存器偏移可能不同

      5. // 将USB外设对应的位(例如bit 8)清零,使其成为非安全
      6. *AHB_SECURE_CTRL_SETTING &= ~(1UL << 8);
      复制代码

    • 注意执行顺序: 此配置必须在任何非安全代码运行之前完成。
    • 验证: 编写非安全世界的应用程序,尝试访问USB寄存器进行读写,验证操作是否成功且不会触发安全异常。


    该会员没有填写今日想说内容.
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2026-8-28 01:39 , Processed in 0.075772 second(s), 18 queries , Redis On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表