【STM32】新建工程(江科大)

文章目录

  • STM32的开发方式
  • 库函数文件夹
  • 一、新建一个基于标准库的工程
    • 1.建立一个存放工程的文件夹
    • 2.打开Keil5
  • 二、通过配置寄存器来完成点灯
    • 1.配置RCC寄存器
    • 2.配置PC13口
      • (1)配置PC13口的模式
      • (2)给PC13口输出数据
  • 三、为寄存器添加库函数
  • 四、用库函数来配置点灯的操作


STM32的开发方式

STM32的工程结构比较复杂,需要用到很多文件
目前STM32的开发方式主要有:
1.基于寄存器的方式、基于标准库(库函数)的方式、基于HAL库的方式
2.本课程使用基于标准库(库函数)的方式


库函数文件夹

在这里插入图片描述

一、新建一个基于标准库的工程

1.建立一个存放工程的文件夹

在这里插入图片描述

2.打开Keil5

添加以下内容
Start下的都是只读文件
main.c文件的最后一行必须是空行,否则会警告
工程建到这里是基于寄存器的方式
在这里插入图片描述
防止中文乱码
在这里插入图片描述

二、通过配置寄存器来完成点灯

在这里插入图片描述

在这里插入图片描述
右边的电源灯常亮,左边的连接在PC13口上的灯默认闪烁
在这里插入图片描述
在这里插入图片描述
配置好程序下载进去左边的灯就不闪了
然后配置3个寄存器进行点灯

1.配置RCC寄存器

来使能GPIOC的时钟,GPIO都是APB2的外设
在这里插入图片描述
IOPCEN,这一位就是使能GPIOC的时钟的
在这里插入图片描述
这一位写1就是打开GPIOC的时钟,所以这一位写1,其他位都写0,四个一分组
在这里插入图片描述
在这里插入图片描述
这样就可以打开GPIO的时钟了

2.配置PC13口

(1)配置PC13口的模式

CNF13和MODE13是用来配置13号口的
在这里插入图片描述
在这里插入图片描述

(2)给PC13口输出数据

ODR13,这一位写1,13号口就是高电平,写0就是低电平
写1,ODR的值就是00002000(灭),写0就是00000000(亮)(灯为低电平点亮)
在这里插入图片描述
在这里插入图片描述
这种寄存器的操作方式,虽然代码简洁,但不方便,所以要为寄存器添加库函数

三、为寄存器添加库函数

在这里插入图片描述

四、用库函数来配置点灯的操作

根据提示进行配置
在这里插入图片描述
补充
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

5.26牛客循环结构

1002. 难点: 两层循环条件设置 思路 可以设置三个变量 代码 1003 思路: 与星号双塔差不多,在此基础上加大一点难度 每日练题5.23 (EOF用法)-CSDN博客 代码 1004 代码

微信小程序如何跳转微信公众号

1. 微信小程序如何跳转微信公众号 1.2. 微信公众号配置 登录微信公众号,点击【小程序管理】:   点击【添加】:   点击【关联小程序】:   输入小程序进行关联: 1.2. 微信小程序配置 登录微信小程序&#xf…

物联网应用开发--传感器数据上传新大陆云平台(STM32+SHT20温湿度+ESP8266+TCP)

实现目标 1、掌握新大陆云平台传感器的创建 2、熟悉STM32 HAL与ESP8266模块之间的通信 3、具体实现目标:(1)创建2个传感器:温度传感器,湿度传感器;(2)上传开发板上的SHT20温湿度传感器数据至…

游戏找不到d3dcompiler_43.dll怎么办,教你5种可靠的修复方法

在电脑使用过程中,我们经常会遇到一些错误提示,其中之一就是“找不到d3dcompiler43.dll”。这个问题通常出现在游戏或者图形处理软件中,它会导致程序无法正常运行。为了解决这个问题,我经过多次尝试和总结,找到了以下五…

消费者相关高效读写ZK作用

消费者分区分配策略 目录概述需求: 设计思路1.消费者分区分配策略2. 消费者offset的存储3. kafka消费者组案例4. kafka高效读写&Zk作用5. Ranger分区再分析 实现思路分析 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show …

python数据分析-基于数据挖掘对APP评分的预测

前言 当我们谈论关于APP用户分析与电子商务之间的联系时,机器学习在这两个领域的应用变得至关重要。App用户分析和电子商务之间存在着密切的关联,因为用户行为和偏好的深入理解对于提高用户体验、增加销售以及优化产品功能至关重要。故本文基于K-近邻模…

[JDK工具-5] jinfo jvm配置信息工具

文章目录 1. 介绍2. 打印所有的jvm标志信息 jinfo -flags pid3. 打印指定的jvm参数信息 jinfo -flag InitialHeapSize pid4. 启用或者禁用指定的jvm参数 jinfo -flags [|-]HeapDumpOnOutOfMemoryError pid5. 打印系统参数信息 jinfo -sysprops pid6. 打印以上所有配置信息 jinf…

蓝桥楼赛第30期-Python-第三天赛题 统计学习数据题解

楼赛 第30期 Python 模块大比拼 统计学习数据 介绍 JSON(JavaScript Object Notation, /ˈdʒeɪsən/)是一种轻量级的数据交换格式,最初是作为 JavaScript 的子集被发明的,但目前已独立于编程语言之外,成为了通用的…

加拿大门户媒体《金融邮报》《埃德蒙顿日报》新闻媒体投放

介绍 加拿大媒体广告投放是企业宣传推广的重要手段之一。在加拿大,主流媒体包括《金融邮报》和《埃德蒙顿日报》。《金融邮报》是加拿大唯一的全国性英文金融日报,总部位于多伦多,具有丰富的金融消息资源,可反映加拿大商界各方面…

解决Jupyter运行代码显示Kernel Restarting的错误

在Jupyter notebook上运行代码时发现如下错误: 使用VS Code运行在日志表中发现错误存在: 它表明在初始化"libiomp5md.dll"库时发生问题,因为该库已经被初始化过了,这个错误可能是由于程序中重复初始化OpenMP库导致的&am…

ZDH-智能营销-插件服务

目录 主题 项目源码 预览地址 安装包下载地址 插件服务 插件服务使用场景 插件服务日志 感谢支持 主题 本篇文章主要介绍ZDH-智能营销平台下的插件服务,包含插件的应用场景 项目源码 zdh_web: GitHub - zhaoyachao/zdh_web: 大数据采集,抽取平台 zdh_magic_mirror: …

Spring从零开始学使用系列(四)之@PostConstruct和@PreDestroy注解的使用

如果各位老爷觉得可以,请点赞收藏评论,谢谢啦!! 文章中涉及到的图片均由AI生成 公众号在最下方!!! 目录 1. 介绍 1.1 PostConstruct概述 1.2 PreDestroy概述 2. 基本用法 2.1 注册CommonAnn…

微信小程序基础 -- 小程序UI组件(5)

小程序UI组件 1.小程序UI组件概述 开发文档:https://developers.weixin.qq.com/miniprogram/dev/framework/view/component.html 什么是组件: 组件是视图层的基本组成单元。 组件自带一些功能与微信风格一致的样式。 一个组件通常包括 开始标签 和 结…

HTTP的由来以及发展史

HTML&HTML5的学习探索 01、Html的由来和发展史 01-01、Html的由来 HTML的英文全称是 Hypertext Marked Language,即超文本标记语言。HTML是由Web的发明者 Tim Berners-Lee(蒂姆伯纳斯李)于1990年创立的一种标记语言, 他是万…

从程序被SQL注入来MyBatis 再谈 #{} 与 ${} 的区别

缘由 最近在的一个项目上面,发现有人在给我搞 SQL 注入,我真的想说我那么点资源测试用的阿里云服务器,个人估计哈,估计能抗住他的请求。狗头.png 系统上面的截图 数据库截图 说句实在的,看到这个之后我立马就是在…

《Python源码剖析》之pyc文件

前言 前面我们主要围绕pyObject和pyTypeObject聊完了python的内建对象部分,现在我们将开启新的篇章—python虚拟机,将聚焦在python的执行部分,搞懂从“代码”到“执行”的过程。开启新的篇章之前,你也许会有一个疑惑:我…

VLAN高级特性

1.VLAN聚合 (1)VLAN聚合产生的技术背景 (2)VLAN聚合概述 (3)VLAN聚合的原理 多个Sub-VLAN共享一个网关地址,节约了子网网络地址、子网定向广播地址、子网缺省网关地址,且各Sub-VLAN…

C#调用HttpClient.SendAsync报错:System.Net.Http.HttpRequestException: 发送请求时出错。

C#调用HttpClient.SendAsync报错:System.Net.Http.HttpRequestException: 发送请求时出错。 var response await client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead, cancellationToken);问题出在SSL/TLS,Windows Server 2012不支持…

MybatisPlus中自定义sql

背景 在开发过程中,可能会出现除了where条件,其它sql比较复杂,这时候就需要用到自定义sql了。 问题 如:用户状态为正常的数据年龄加一(所有用户年龄加一) 数据库中sql: UPDATE USER SET…

【Linux】TCP协议【下一】{三次握手/四次挥手的深度解读==状态变化}

文章目录 本篇知识需要有TCP协议【中】的知识!详情点击👇1.测试一:服务器start函数不定义任何行为(不调用accept)的三次握手状态变化int listen(int sockfd, int backlog);的backlog参数全连接队列当全连接队列已满&am…