华大(小华)HC32L130工程创建

news2025/7/19 16:52:28

一、我们先来认识一下华大驱动库包下的文件功能。注意,华大提供的包是没有M0+内核标准文件的,(HC32L130 是M0+)ST提供的驱动库包是有的,就是CORE文件夹。

第一步:创建文件夹目录

具体这个创建文件夹目录的含义可以看STM32工程创建理论篇

第二步:将华大提供的driver文件内容(这些文件是从华大驱动库包)复制到HC32L130x_FWLib

第三步:将内核相关的文件从commom和KEIL的烧录算法文 复制到CMSIS。注:common文件是IAR和KEIL通用。

第四步:将source文件下的内容拷贝过来到USER。IAR和KEIL通用。IAR和KEIL通用。

第五步:随便找一个例程将其添加启动文件复制至starup

二、在KEIL5创建工程

第一步:安装芯片支持包,可以到华大官网下载对应的芯片MDK支持包的既可

第二步:创建新工程

输入名称,点击保存到Projiect文件下

第三步:选择对应的芯片包对应的芯片型号(前提我们要小华官网先下载对应的MDK芯片支持包,下载下来双击安装即可)

勾选内核标准组件。注意,华大驱动库包是没有提供标准内核文件的,不论是华大还是ST单片机,使用的内核文件都是通用的,这里有两种方法,1、勾选内核组件。2、复制ST库的CORE M0+内核标准文件。本次我们直接选择方法1。

方法1。直接选择KEIL提供的组件。

方法2 。复制ST库的内核标准文件到我们的CMSIS目录下,注意HC32L是M0+内核。

三、添加文件

第一步:创建目录添加文件

APP还没放代码,所以为空闲预留,后续自己可以添加外设驱动放在这里

BSP比如GPIO\timer等等,大家 自己可以放

库文件添加大家根据自己需求来放置,我是去全都添加进去

启动文件

第二步:声明头文件

添加完

第三步:编译优化配置。华大驱动库中断的特点是回调函数调用,而编译器是会优化掉一些认为不用的函数的,所以我们要屏蔽优化回调函数。--keep=*Handler

第四步:输出hex

第五步:细心的同学肯定发现刚刚我们移植的CMSIS目录下的MDK算法文件没有用到,当然你也可以用上。如下,这个文件只要跟你到时候仿真有关系,我们还是添加下,这个具体含义我不太懂。

第六步:我们编译下

编译完有警告与错误,我们先来解决下错误

(1)错误查找解决,这个错误显示是库文件ram.c的类型与头文件的类型不一致,报错的。

从理论上分析官方提供的库不应该有这种错误才是,既然知道错误我们就进行修改,把头文件的类型更换成void,就可以。

修改完,错误没有了

(2)警告排查

说实话这些警告看不出问题所在,后面与官方提佛

上面这个警告表示不会执行到这一句话

上面这个警告表示这个参数超出“int”范围,确实这个1<<31,确实超出这个类型范围

那么回过头看看官方提供的代码,发现官方提供的DEMO没有警告,警告查找发现他默认使用的是编译器6版本。

我们也改成V6版本编译器,重新编译

编译通过,我去查找了V6编译器没招相关有用的资料,如果你们有找到跟我说下,共勉学习下。

我猜测是V6的编译器int类型的范围变成64位了,这样才你能合理解释把

那么到这里,我们整个裸机工程创建结束啦!

四、附录

工程文件

链接:https://pan.baidu.com/s/1Q5tm52aqviDYVa2ODmORiA

提取码:5vt5

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

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

相关文章

matlab基础到实战(1)

目录概述sin函数例子四则运算实数复数逻辑运算复数运算模幅角共轭向量二维向量定义序列生成向量向量索引方式加减乘除向量间运算加减乘法除法概述 MATLAB是美国MathWorks公司出品的商业数学软件&#xff0c;用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理…

基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像

一、项目功能介绍 当前基于MQTT协议设计了一个实时图传系统,通过这个项目来演示,两个MQTT设备如何互相订阅,进行消息流转。 在阿里云服务器上创建2个设备,分为为设备A和设备B;设备A负责采集本地摄像头画面上传,设备B负责接收设备A上传的数据然后解析显示出来。在阿里云服…

0106广度优先搜索和最短路径-无向图-数据结构和算法(Java)

1 单点最短路径 单点最短路径。 给定一幅图和一个起点s&#xff0c;回答“从s到给定目的顶点v是否存在一条路径&#xff1f;如果有&#xff0c;找出其中最短的那条&#xff08;所含边数最少&#xff09;。“等类似问题。 深度优先搜索在这个问题上没有什么作为&#xff0c;因为…

个人创业做什么好?哪些互联网创业项目可长期收益?

打工没前途&#xff0c;这是现在年轻人看透了的一个事情&#xff0c;日复一日地工作&#xff0c;不如自己创业挣钱&#xff0c;那么个人创业做什么好呢&#xff1f;哪些项目可以长期稳定收益呢&#xff1f; 一、高体力项目不要做&#xff1b; 创业项目有很多&#xff0c;尤其是…

RK3588平台开发系列讲解(同步与互斥篇)自旋锁介绍

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、自旋锁介绍二、自旋锁相关的函数1、普通场景2、进程上下文和下半部3、中断相关三、相关结构体四、函数实现1、初始化2、获取自旋锁沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇介绍自旋锁的使用和基…

Clickhouse数据去重

1. Hive去重 先以两个简单的sql启发我们的话题 select count(distinct id)from order_combine;select count(id) from (select id from order_combine group by id ) t;从执行日志当中我们可以看到二者的差异&#xff08;只摘取关键部分&#xff09; # distinctStage-Stage…

kube-scheduler

kube-scheduler&#xff0c;它是 k8s 的默认调度器&#xff0c;负责为新创建出来的 pod寻找一个最合适的节点&#xff0c;这里的“最合适”指两种最优解&#xff1a;从集群中的所有节点中找出的全局最优解&#xff0c;和从集群中的部分节点中找出的局部最优解。它们分别可以解决…

电气系统中防雷接地保护的综合解决方案

防雷接地保护是通过导体和接地&#xff0c;可靠地连接一种保护性接线方法&#xff0c;在该保护性接线方法中&#xff0c;可能会在绝缘材料损坏后或在其他情况下对电器的金属部分&#xff08;即与带电部分绝缘的金属结构部分&#xff09;进行绝缘。接地保护系统仅具有相线和零线…

VSCode使用技巧,代码编写效率提升2倍以上!

VSCode是一款开源免费的跨平台文本编辑器&#xff0c;它的可扩展性和丰富的功能使得它成为了许多程序员的首选编辑器。在本文中&#xff0c;我将分享一些VSCode的使用技巧&#xff0c;帮助您更高效地使用它。 1. 插件 VSCode具有非常丰富的插件生态系统&#xff0c;通过安装插…

大数据分析案例-基于逻辑回归算法构建微博评论情感分类模型

🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 喜欢大数据分析项目的小伙伴,希望可以多多支持该系列的其他文章 大数据分析案例合集…

【WEB前端进阶之路】 HTML 全路线学习知识点梳理(下)

前言 本文是HTML零基础小白学习系列的第三篇文章&#xff0c;点此阅读 上一篇文章 文章目录前言十五.HTML布局1.使用div元素添加网页布局2.使用table元素添加网页布局十六.HTML表单和输入1.文本域2.密码字段3.单选按钮4.复选框5.提交按钮十七.HTML框架1.iframe语法2.iframe设置…

java中如何判断map是否为空

java中判断map是否为空的方法是&#xff1a;利用isEmpty()函数来判断。函数介绍&#xff1a;isEmpty()是Java中用于判断某种容器是否有元素的系统库函数。如用来判断ArrayList&#xff0c;HashSet&#xff0c;HashMap是否有元素等。在Java中&#xff0c;可以用isEmpty();判断一…

燃料电池聚合物电解质膜高低温退化性能测试中的TEC半导体制冷温控解决方案

摘要&#xff1a;针对燃料电池质子交换膜高低温退化机理表征&#xff0c;基于德国慕尼黑工业大学团队提出的替代环境试验箱的TEC半导体制冷温控方案及其功能指标&#xff0c;本文给出此方案具体实施内容的补充&#xff0c;详细介绍了用于TEC半导体制冷温控系统的PID调节器和大功…

Springboot项目连接neo4j数据库

首先创建一个springboot项目&#xff0c;这里不再介绍。1 导入依赖包连接neo4j数据库的依赖包<dependency><groupId>org.neo4j</groupId><artifactId>neo4j-ogm-http-driver</artifactId><version>2.1.5</version> </dependency&…

人工智能算法几个重要指标

一、几个前置概念 TP&#xff08;True Positive&#xff09;&#xff1a;正确的正例&#xff0c;正类被判定成正类 FN&#xff08;False Negative&#xff09;&#xff1a;错误的反例&#xff0c;漏报&#xff0c;正类被判定为假类 FP&#xff08;False Positive&#xff09…

dp之数位dp---(度的数量)

题目&#xff1a; 思路&#xff1a; 首先对题目意思进行分析&#xff1a;恰好等于 K 个互不相等的 B 的整数次幂之和&#xff0c;这句话的意思是说对于某一个B进制数x说&#xff0c;x只有k位上只有1&#xff0c;其他位都为0。然后让你求区间[X,Y]的满足条件的数字有多少&#x…

MyBatis开发详解

MyBatis 是一款优秀的持久层框架&#xff0c;它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO&#xff08;Plain Old Java Objects&am…

信息系统基本知识(五)信息系统安全技术

大纲 信息系统与信息化信息系统开发方法常规信息系统集成技术软件工程新一代信息技术信息系统安全技术信息化发展与应用信息系统服务管理信息系统服务规划企业首席信息管及其责任 1.6 信息系统安全技术 1.6.1 信息系统安全的有关概念 信息安全的概念&#xff1a;信息安全强…

机器人向生产力系统迈进,优艾智合稳步“从1到100”

在中国&#xff0c;机器人的“成长”总是令人惊讶。这些“钢铁生命”和“芯片生命”&#xff0c;在工厂流水线、物流仓储园区、机房电站飞速复制&#xff0c;充当产业的手、眼和大脑。国际机器人联合会IFR的数据显示&#xff0c;2020-2024年&#xff0c;中国机器人市场规模CAGR…

源码解析——HashMap

源码解析——HashMap1. 什么 是HashMap2. 为什么要使用HashMap3. HashMap的使用4. 源码解析4.1 关键问题4.1 存储结构4.2 HashMap 的容量和负载因子4.3 初始化过程4.3 put() 方法实现原理4.3.1 hash()4.3.2 resize()4.4 get() 方法实现原理5. 面试题总结6. ConcurrentHashmap(J…