【之前想法】
最近开始酝酿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)
|