硬汉嵌入式论坛

 找回密码
 立即注册
查看: 995|回复: 0
收起左侧

[创意点子] 找到了更简单的CMSIS-SVD转LUA方案,方便H7-TOOL使用

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106685
QQ
发表于 2023-1-4 00:51:18 | 显示全部楼层 |阅读模式

【之前想法】

最近开始酝酿H7-TOOL的新玩法,直接读取各个IC厂家提供的CMSIS SVD文件生成LUA程序,像MDK,IAR在线调试那样实时检测外设状态
https://www.armbbs.cn/forum.php?mod=viewthread&tid=116854

【后来搜集资源】

CMSIS-SVD相关资源搜集整理,方便以后导出解析为LUA文件(2022-12-18)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=117141

现在找了更适合现在使用的方案,直接用到那个外设,手动添加芯片库的头文件寄存器地址定义即可,也非常方便。

比如STM32H743xx.h头文件,这些宏定义可以方便的使用:

[C] 纯文本查看 复制代码
/*!< Device electronic signature memory map */
#define UID_BASE                  (0x1FF1E800UL)            /*!< Unique device ID register base address */
#define FLASHSIZE_BASE            (0x1FF1E880UL)            /*!< FLASH Size register base address */


/*!< Peripheral memory map */
#define D2_APB1PERIPH_BASE        PERIPH_BASE
#define D2_APB2PERIPH_BASE       (PERIPH_BASE + 0x00010000UL)
#define D2_AHB1PERIPH_BASE       (PERIPH_BASE + 0x00020000UL)
#define D2_AHB2PERIPH_BASE       (PERIPH_BASE + 0x08020000UL)

#define D1_APB1PERIPH_BASE       (PERIPH_BASE + 0x10000000UL)
#define D1_AHB1PERIPH_BASE       (PERIPH_BASE + 0x12000000UL)

#define D3_APB1PERIPH_BASE       (PERIPH_BASE + 0x18000000UL)
#define D3_AHB1PERIPH_BASE       (PERIPH_BASE + 0x18020000UL)

/*!< Legacy Peripheral memory map */
#define APB1PERIPH_BASE        PERIPH_BASE
#define APB2PERIPH_BASE       (PERIPH_BASE + 0x00010000UL)
#define AHB1PERIPH_BASE       (PERIPH_BASE + 0x00020000UL)
#define AHB2PERIPH_BASE       (PERIPH_BASE + 0x08000000UL)


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-29 14:47 , Processed in 0.152876 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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