STM32转AT32代码转换

news2024/11/16 13:38:54

1. 引言

        在嵌入式开发中,我们经常会遇到更换单片机芯片的事情,若芯片是同一厂家的还好说,若是不同厂家的则需要重新写,重新调,重新去学习其底层驱动程序,比较费时费力。如:ST32转AT32、ST32转GD32等等。本文主要介绍一款ST32转AT32的工具AT32 Smart Code Transfer.exe,可以快速实现芯片的更换,提高开发效率。

1.1.软件功能

        本软件可查询与 STM32F10x BSP 标准库中各种名称相对应的 AT32F4xx BSP 标准库中的各种名称。包括 ST 与 AT 的 BSP 标准库中的宏定义、函数名称以及参数、结构体名称、结构体参数等内容。可将基于 STM32F10x BSP 标准库开发的应用程序转化为基于 AT32F4xx BSP 标准库开发的应用程序。

1.2.环境要求

软件要求

  • 需要 Windows XP、Windows 7 及以上操作系统支持。
  • 需要.net framework 4.0 的支持。对于部分未支持.net framework 4.0 的操作系统,需安装.net

framework4.0。

硬件要求

  • PC/AT 兼容机,Pentium 或更高 CPU。
  • XVGA(1024*768)颜色显示器。
  • 至少 512M RAM。
  • 至少 20M 磁盘空间

2. 功能介绍

        在这个章节,将介绍工具的基本操作,主界面如下图所示:

b8aa98f57a336a716157c4965ed6440f.jpeg

请选择语言: 支持简体中文和 English。

请选择目标 MCU: 选择支持的 AT32 系列 MCU。 支持 AT32 MCU 如下:

  • AT32F403 系列
  • AT32F413 系列
  • AT32F415 系列
  • AT32F403A 系列
  • AT32F407 系列

2.1.“查询”功能

        查询功能提供“ST 名称”与“AT 名称”之间的互相查询。包括 ST 与 AT 的 BSP 标准库中的宏定义、函数名称以及参数、结构体名称、结构体参数等等内容。如图所示:

eea9f7528ab3e684dd9ae9e2c711a008.jpeg

ST 名称:

        即在 STM32F10x BSP 标准库中的名称。包括宏定义、函数名称以及参数、结构体名称、结构体参数等内容。提供输入时自动检索功能,用户可从检索列表中选择需要查询的内容,如图所示:

10a035ce1af5bfd83bce21fb6e4910cb.jpeg

  • 预先输入 ST 的名称,查询 AT 的名称。

AT 名称:

        即在 AT32F4xx BSP 标准库中的名称。包括宏定义、函数名称以及参数、结构体名称、结构体参数等内容。提供输入时自动检索功能,用户可从检索列表中选择需要查询的内容,如图所示:

310042fc1d86ce49342bca8ae97a58b6.jpeg

  • 预先输入 AT 的名称,查询 ST 的名称

2.2. “转换”功能

        提供将基于 STM32F10x BSP 标准库开发的应用程序转化为基于 AT32F4xx BSP 标准库开发的应用程序,如图所示:

25c40d199a3941d53375aceeef728d16.jpeg转换前文件目录:

即基于STM32F10x BSP标准库开发的应用程序工程所在目录。

转换后文件目录:

即转换后基于AT32F4xx BSP标准库开发的应用程序工程所在目录。

(此目录需新建一空目录,避免与目录下其他文件混淆)

  • 开始转换:

点此按钮即开始转换过程。

  • 取消:

取消转换过程。

2.2.1 转换过程

转换过程主要分为四个步骤:

  • 文件拷贝

将“转换前文件目录”下的所有文件拷贝到“转换后文件目录”中。

  • 将ST BSP标准库文件替换为AT32 BSP标准库文件。

在这个过程中,会将“转换后文件目录”下所有ST BSP标准库文件替换为AT32 BSP标准库文件。

例如将" stm32f10x_adc.h" 替换为 " at32f4xx_adc.h"

  • 应用程序文件的解析

软件将会对“转换后文件目录”下所有文件的*.c、*.h文件进行解析(非标准库文件)。

  • 应用程序文件的转换

即将基于 STM32F10x BSP 标准库开发的应用程序转化为基于 AT32F4xx BSP 标准库开发的应用程序。

2.2.2 信息提示

        转换过程中,会将具体的转换信息进行提示,包括错误信息、转换成功信息等。如图所示:

a649696a35dea495550102d1992100c8.jpeg

        转换提示的错误信息,需用户进行手动查找,并根据提示手动修改应用程序代码。

2.3.转换注意事项

1. 本软件涉及到对文件到拷贝、替换、修改,请用户确保具有对文件进行操作的权限。例如:确保具有管理员权限;确保能对文件读取、修改、写入;确保文件是为非只读文件。

2. 本软件解析和转换最大支持5 层数据结构嵌套。

3. 本软件解析和转换最大支持10个参数的函数。

4. 本软件解析和转换最大支持3维数组。

5. 不建议多个项目工程同时转化,有可能在解析时引用关系错误。

6. 对项目文件的转换不完全。整个转换流程完成后,可能需对项目文件进行手动的修改,才能正常执行编译等。

3.总结

        该软件能够大大提高STM32和AT32之间代码转换的效率,但是在转换时需要注意内核是否相同,不能盲目转换,且不同代码可能在用户代码的部分有需要调整的内容,需要自己手动调整。转换完的工程需要在keil工程中重新选择目标芯片,并在keil配置中添加对应宏定义。

        软件下载请关注掌芯元器官方博客下载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2172028.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数论——数数(找质因数个数),三位出题人(组合数学,快速幂)

数数&#xff08;找质因数个数&#xff09; 题目描述 登录—专业IT笔试面试备考平台_牛客网 运行代码&#xff08;通过率一半&#xff09; #include <iostream> #include <vector> using namespace std; const int N5e66; int n; vector<bool>vis; vo…

自定义认证过滤器和自定义授权过滤器

目录 通过数据库动态加载用户信息 具体实现步骤 一.创建数据库 二.编写secutity配置类 三.编写controller 四.编写服务类实现UserDetailsService接口类 五.debug springboot启动类 认证过滤器 SpringSecurity内置认证流程 自定义认证流程 第一步:自定义一个类继承Abstra…

AFSim仿真系统 --- 系统简解_01(任务模块)

任务 任务是AFSIM的基线可执行文件。通过任务&#xff0c;用户可以访问世界仿真框架&#xff08;WSF&#xff09;。该可执行文件&#xff08;mission.exe&#xff09;解释文本格式的仿真输入文件&#xff08;场景&#xff09;&#xff0c;以生成仿真&#xff0c;并可选择以多种…

c语言中的杨氏矩阵的介绍以及元素查找的方法

杨氏矩阵&#xff1a;是一个二维数组 特点&#xff1a;数组的每行从左到右都是递增的 数组的每列从上到下都是递增的 这种矩阵结构使得在查找特定元素时&#xff0c;可以利用其 递增性质来缩小范围&#xff0c;提高查找效率。 从杨氏矩阵中对元素进行查找 1&#xff0c;要求…

沟通技巧对班组长的工作效率有什么影响?

在企业管理的细微脉络中&#xff0c;班组长作为基层管理的中坚力量&#xff0c;其工作效率直接影响着整个生产线的流畅度与团队士气。而沟通技巧&#xff0c;作为人际交往的桥梁&#xff0c;不仅在日常交流中扮演着重要角色&#xff0c;更在班组管理中发挥着不可替代的作用。本…

Bigemap Pro首发(一款真正全面替代Arcgis的国产基础软件)

Bigemap Pro是一款功能强大的计算机数据要素辅助设计(Computer-Aided Data Elements Design CADED)软件&#xff0c;由成都比格图数据处理有限公司研发设计&#xff0c;主要应用在数据要素设计领域&#xff0c;为各行业提供安全可靠高效易用的数据要素设计类国产化基础软件。Bi…

2024年汉字小达人区级自由报名倒数4天:最新问题和今年比赛方式和题型解析

今天是2024年第十一届汉字小达人的区级自由报名活动的第三天&#xff0c;也是倒数第四天。 今天是星期五&#xff0c;通常孩子们放学会早一点。接下来是周六有一整天的时间可用&#xff0c;周日、周一又要上课了&#xff0c;所以实际上可用的较多的备考时间就是今天晚上和明天…

华为OD机试 - 西天取经 - 广度优先搜索BFS(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题点这里 专栏导读 本专栏收录于《华为OD机试真题&#xff08;Python/JS/C/C&#xff09;》。 刷的越多&#xff0c;抽中的概率越大&#xff0c;私信哪吒&#xff0c;备注华为OD&#xff0c;加入华为OD刷题交流群&#xff0c;…

windows上设置某exe开机自启动。亲测有效

亲测有效方法 1。通过文件夹启动 0。先创建exe的快捷方式 1。 winR 2。输入shell::startup 3.将exe的快捷方式复制或拖动到打开的文件夹 通过启动文件夹 创建您的EXE文件的快捷方式。 打开文件资源管理器&#xff0c;导航到 C:\Users\YourUsername\AppData\Roaming\Microsoft\…

CORE MVC 过滤器 (筛选器)

MVC FrameWork MVCFramework MVC Core 过滤器 分 同步、异步 1、 授权筛选器 IAuthorizationFilter&#xff0c;IAsyncAuthorizationFilter 管道中运行的第一类筛选器&#xff0c;用来确定发出请求的用户是否有权限发出当前请求 2、资源筛选器 IResourceFilter &#xff0c;…

操作系统 概论

1. 操作系统★ 1.1. 定义 操作系统(Operating System,简称OS)是一种计算机系统软件(计算机软件可以分为系统软件、支撑软件和应用软件三类),他管理和控制计算机硬件和软件资源,并合理地组织调度计算机工作和资源分配,以提供给用户和其他软件方便的接口和环境。 1.2. …

OpenAI研究员、思维树作者姚顺雨专访:人生是一场无限流游戏丨独家

「人生所有重大的选择&#xff0c;无论买房、选择工作&#xff0c;去做任何事情&#xff0c;都像一个文字游戏。从哲学的角度来看&#xff0c;人生就是一个无限流游戏&#xff0c;每天你都有很多选择&#xff0c;从某种程度上说是非常high level、 open-ended的。」 谈及过往研…

前端基础面试题·第四篇——Vue(其一)

1.v-if 和 v-show的区别 在Vue中这两个命令都用于控制元素的显示与隐藏。 (1) v-if 动态控制元素显示与隐藏&#xff0c;本质上是动态销毁或者重建元素&#xff0c;会触发浏览器重排与重绘。在切换状态时有一个局部编译/卸载的过程会适当重建或者销毁内部的事件监听、子组件。…

这五本大模型书籍,让你从大模型零基础到精通,非常详细收藏我这一篇就够了

大模型&#xff08;Large Language Models, LLMs&#xff09;是近年来人工智能领域的一大热点&#xff0c;它们在自然语言处理、对话系统、内容生成等多个方面展现出了强大的能力。随着技术的发展&#xff0c;市面上出现了许多介绍大模型理论与实践的书籍&#xff0c;为研究人员…

碳性电池和碱性电池的区别

碳性电池和碱性电池是两种常见的电池类型&#xff0c;它们在多个方面存在显著的差异。下面是它们之间的一些主要区别&#xff1a; 1. 化学组成 碳性电池&#xff0c;又称为锌锰电池。通常使用二氧化锰作为正极材料&#xff0c;锌作为负极材料&#xff0c;并且电解质为酸性的NH4…

产品推介——SOP4 随机相位可控硅光耦KLM305X

产品描述Product Description KLM305X 系列由一个砷化镓红外发光二极管和一个单晶硅芯片的随机相位光电双向晶闸管组成的可控硅光电耦合器&#xff0c;它被设计用于连接电子控制和功率双向可控硅开关&#xff0c;以控制115至240VAC工作电压下的电阻和感应负载。 功能图Functi…

【一文读懂】C#如何实现通用的排序功能

目录 通用排序功能 1.升序 2.降序 测试 1.测试代码 2.测试结果 本篇文章来分享一下C#如何实现通用的排序功能。在项目中经常会使用到排序的方法&#xff0c;那如何使排序方法更加通用呢&#xff1f;可以通过泛型&#xff0c;接口&#xff0c;委托来实现。 通用排序功能…

【移植】Combo解决方案之W800芯片移植案例

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ 持续更新中…… 本方案基于 OpenHarmony LiteOS-M 内核&#xff0c;使用联盛德 W80…

2024年项目经理不能错过的开源项目管理系统大盘点:全面指南

在2024年&#xff0c;随着项目管理领域的不断发展&#xff0c;开源项目管理系统成为了项目经理们提升工作效率的利器。本文将全面盘点几款备受推荐的开源项目管理系统&#xff0c;帮助项目经理们找到最佳选择&#xff0c;不容错过。 在项目管理日益复杂的今天&#xff0c;开源项…

Linux应急响应技巧整理

吉祥知识星球http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247485367&idx1&sn837891059c360ad60db7e9ac980a3321&chksmc0e47eebf793f7fdb8fcd7eed8ce29160cf79ba303b59858ba3a6660c6dac536774afb2a6330&scene21#wechat_redirect 《网安面试指南》…