嵌入式 工程配置

本次用的STM32F4芯片系列

目录

1. 新建文件夹

2. 新建文件夹下创建

3. 打开keil5

3.1.1 点击菜单栏project 点击new project

3.1.2. 选择刚刚新建的文件夹

3.1.3.将项目文件保存到Project文件夹里

3.1.4. 将项目命名这里命名为STM32 保存

3.1.5. 保存好后会跳出选择芯片配置

3.2 芯片选完之后开始配置芯片环境

3.2.1 不小心关掉

3.2.2 打开CMSIS芯片内核

3.3 配置打开外设

3.3.1 将系统启动 System Startup

3.3.2 打开GPIO(输入输出)引脚

1. 打开GPIO需要标准的外设框架 Framework

2. 还需要打开复位和时钟控制RCC

3.4 然后点击ok完成配置

4. 文件配置

4.1 新建文件

4.2 将文件都配置到keil5中

5. 写代码

5.1 加载芯片厂家的头文件

5.2 注释中文

5.3 编译

5.4 导入标准库

5.4.1 告诉软件用的是什么芯片

5.4.2 引入

5.4.3 引入标准C库

6. 再次全盘编译


1. 新建文件夹

2. 新建文件夹下创建

在新建文件夹里面创建5个新文件夹——Driver、System、Project、User、Net。Driver里面源文件代码(LED、KEY、USART),System里面放系统代码(delay),Project文件夹里面放工程文件,User文件夹里放主函数代码(main)。

3. 打开keil5

3.1.1 点击菜单栏project 点击new project

3.1.2. 选择刚刚新建的文件夹

3.1.3.将项目文件保存到Project文件夹里

3.1.4. 将项目命名这里命名为STM32 保存

注意:这里的命名不能是中文

3.1.5. 保存好后会跳出选择芯片配置

这里我们选择的是STM32F407ZE芯片

选择好芯片后点击ok

3.2 芯片选完之后开始配置芯片环境

3.2.1 不小心关掉

选绿色菱形方块重新打开

3.2.2 打开CMSIS芯片内核

3.3 配置打开外设

3.3.1 将系统启动 System Startup

3.3.2 打开GPIO(输入输出)引脚

1. 打开GPIO需要标准的外设框架 Framework

2. 还需要打开复位和时钟控制RCC

3.4 然后点击ok完成配置

问:为什么不能全选?

答:因为配置的芯片大小只有64kb,如果全选加之自己还要编写代码,芯片储存不够。

4. 文件配置

4.1 新建文件

将文件保存在User里面并命名main.c(User里保存主函数代码)

4.2 将文件都配置到keil5中

我们按照新建文件夹里面的文件名,让其一一对应到keil软件中

以此添加文件将文件改名为 System Driver Net

4.3 在 C/C++,Include Paths 内声明所有包含头文件的文件夹

我们之后写代码会把代码保存到Driver、System、Net里面,这里需要声明一下。

将Driver 、System、Net添加进来

点击ok之后发现左侧就会显示出这几个文件夹,双击User文件夹将main.c添加进来

这里注意添加的文件要与你创建的文件的名相同

添加完成左侧会显示main.c文件然后就可以写代码了

5. 写代码

5.1 加载芯片厂家的头文件

找到系统stm32f4芯片的.c文件,将芯片头文件添加复制

将头文件引入main.c中(类似于C语言的 #include <stdio.h>)

5.2 注释中文

点击扳手

在这里选择Chinese GB2312(GB2312与BIG5的区别是GB主要针对中国大陆,采用简体字;而BIG5则适用于台湾和香港,使用繁体字)

可以打出中文了

5.3 编译

第一个是编译当前文件,第二个编译修改过的文件,第三个编译整个工程文件

注意每次写完代码最后要空一行否则会有警告

5.4 导入标准库

5.4.1 告诉软件用的是什么芯片

打开stm32f4头文件

这次用的STM32F40系列芯片

复制STM32F40_41xxx

5.4.2 引入

后面加了一个英文的逗号

5.4.3 引入标准C库

复制下面的内容

USE_STDPERIPH_DRIVER

6. 再次全盘编译

0警告 0错误

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我的图形布局 组织结构图布局

组织结构图布局,有的人也叫它树状布局,在图形中是经常用到的布局算法.形成类似如下图的图形布局方式 首先创建一个类, public class TreeLayouter {private int m_space 40;/// <summary>/// 空间间隔/// </summary>public int Space{get { return m_space; }se…

计算机网络介质访问控制全攻略:从信道划分到协议详解!!!

一、信道划分介质访问控制 介质访问控制&#xff1a;多个节点共享同一个“总线型”广播信道时&#xff0c;可能发生“信号冲突” 应该怎么控制各节点对传输介质的访问&#xff0c;才能减少冲突&#xff0c;甚至避免冲突? 时分复用(TDM) 时分复用&#xff1a;将时间分为等长的“…

sql主从同步

今天给大家介绍两种mysql的主从同步方式&#xff1a;第一种是基于binlogzhu主从同步&#xff1b;第二种就是基于gtid的主从同步方式。 首先给大家介绍一下什么是sql的主从复制。 主从复制&#xff1a; 通过将MySQL的某一台主机&#xff08;master&#xff09;的数据复制到其…

计算机组成原理——数据表示(二)

当生活的压力和困惑缠绕在身边&#xff0c;我们往往需要振奋精神&#xff0c;勇往直前。无论在何种困境中&#xff0c;我们都要保持积极的态度和坚定的信念。将悲观的情绪抛之脑后&#xff0c;展现出坚强的意志力和无尽的活力。振奋精神意味着我们要战胜自己内心的负面情绪&…

Spring Boot整合Thymeleaf、JDBC Template与MyBatis配置详解

本文将详细介绍如何在Spring Boot项目中整合Thymeleaf模板引擎、JDBC Template和MyBatis&#xff0c;涵盖YAML配置、依赖版本匹配、项目结构设计及代码示例。 一、版本兼容性说明 Spring Boot版本与Java版本对应关系 Spring Boot 2.x&#xff1a;支持Java 8、11&#xff08;推…

概率论里的特征函数,如何用卷积定理去理解

概率论里的特征函数&#xff0c;如何用卷积定理去理解_哔哩哔哩_bilibili

论文笔记(六十二)Diffusion Reward Learning Rewards via Conditional Video Diffusion

Diffusion Reward Learning Rewards via Conditional Video Diffusion 文章概括摘要1 引言2 相关工作3 前言4 方法4.1 基于扩散模型的专家视频建模4.2 条件熵作为奖励4.3 训练细节 5 实验5.1 实验设置5.2 主要结果5.3 零样本奖励泛化5.4 真实机器人评估5.5 消融研究 6 结论 文章…

HashMap用法

一、构造方法 构造方法有4个。 1、手动声明初始容量及负载因子的构造函数。初容容量的最大值不能超过MAXIMUM_CAPACITY 2、手动声明初始容量的构造函数&#xff0c;负载因子是默认大小。 默认的负载因子是0.75 3、无参的构造函数&#xff0c;会指定默认的负载因子。容量是默…

Java基础 (一)

基础概念及运算符、判断、循环 基础概念 关键字 数据类型 分为两种 基本数据类型 标识符 运算符 运算符 算术运算符 隐式转换 小 ------>>> 大 强制转换 字符串 拼接符号 字符 运算 自增自减运算符 ii赋值运算符 赋值运算符 包括 强制转换 关系运算符 逻辑运算符 …

无人机在城市执法监管中的应用:技术革新与监管挑战

随着科技的不断进步&#xff0c;无人机技术在城市管理中的应用越来越广泛。无人机以其灵活性、高效性和低成本的优势&#xff0c;正在逐渐成为城市执法监管的得力助手。本文将探讨无人机在城市执法监管中的应用现状、技术优势以及面临的挑战。 无人机技术在城市执法监管中的应用…

AI模型提示词(prompt)优化-实战(一)

一、prompt作用 用户与AI模型沟通的核心工具&#xff0c;用于引导模型生成特定内容、控制输出质量、调整行为模式&#xff0c;并优化任务执行效果&#xff0c;从而提升用户体验和应用效果 二、prompt结构 基本结构 角色&#xff1a;设定一个角色&#xff0c;给AI模型确定一个基…

mac 电脑上安装adb命令

在Mac下配置android adb命令环境&#xff0c;配置方式如下&#xff1a; 1、下载并安装IDE &#xff08;android studio&#xff09; Android Studio官网下载链接 详细的安装连接请参考 Mac 安装Android studio 2、配置环境 在安装完成之后&#xff0c;将android的adb工具所在…

电子应用设计方案101:智能家庭AI喝水杯系统设计

智能家庭 AI 喝水杯系统设计 一、引言 智能家庭 AI 喝水杯系统旨在为用户提供个性化的饮水提醒和健康管理服务&#xff0c;帮助用户养成良好的饮水习惯。 二、系统概述 1. 系统目标 - 精确监测饮水量和饮水频率。 - 根据用户的身体状况和活动量&#xff0c;智能制定饮水计划。…

5G网络下移动机器人的图像和指令传输用于远程操作

论文标题 **英文标题&#xff1a;**Image and Command Transmission Over the 5G Network for Teleoperation of Mobile Robots **中文标题&#xff1a;**5G网络下移动机器人的图像和指令传输用于远程操作 作者信息 Thiago B. Levin,, Joo Miguel Oliveira,, Ricardo B. Sou…

AIGC视频生成国产之光:ByteDance的PixelDance模型

大家好&#xff0c;这里是好评笔记&#xff0c;公主号&#xff1a;Goodnote&#xff0c;专栏文章私信限时Free。本文详细介绍ByteDance的视频生成模型PixelDance&#xff0c;论文于2023年11月发布&#xff0c;模型上线于2024年9月&#xff0c;同时期上线的模型还有Seaweed&…

软件安全性测试报告如何编写?

在当今数字化时代&#xff0c;软件安全性问题愈发显得重要&#xff0c;软件产品的安全性已经成为企业竞争力的重要组成部分。而软件安全性测试报告是通过对软件系统进行全面的安全性测试后&#xff0c;整理出的关于其安全性状况、潜在风险及改进建议的专业文档。此报告旨在帮助…

从密码学原理与应用新方向到移动身份认证与实践

相关学习资料放下面啦&#xff01; 记得关注❤️&#xff5e;后续分享更多资料 通过百度网盘分享的文件&#xff1a;从密码学原理与应... 链接https://pan.baidu.com/s/1mHpHkvPuf8DUwReQkoYQlw?pwdGza7 提取码&#xff1a;Gza7 复制这段内容打开「百度网盘APP 即可获取」 记…

【玩转全栈】---基于YOLO8的图片、视频目标检测

本篇主要讲YOLO8的具体操作&#xff0c;想要了解YOLO的具体原理&#xff0c;可以去官网查询 目录 下载ultralytics库 开始检测 介绍 YOLOv8&#xff08;You Only Look Once Version 8&#xff09;是 YOLO 系列的最新版本&#xff0c;由 Ultralytics 开发并发布&#xff0c;是一…

生成对抗网络(GAN)入门与编程实现

生成对抗网络&#xff08;Generative Adversarial Networks, 简称 GAN&#xff09;自 2014 年由 Ian Goodfellow 等人提出以来&#xff0c;迅速成为机器学习和深度学习领域的重要工具之一。GAN 以其在图像生成、风格转换、数据增强等领域的出色表现&#xff0c;吸引了广泛的研究…

【若依】添加数据字典

接下来&#xff0c;在生成代码的页面将“学科”字段改为下拉框&#xff0c;然后选择数据字典 然后&#xff0c;将生成的代码中的index文件复制到vue3的index中&#xff0c;替换掉之前的index文件 修改数据库中的subject的值&#xff0c;这样就可以通过数据字典来查询 以上操作成…