自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 C语言笔记4

循环语句

2022-07-01 15:06:03 332 1

原创 C语言笔记3

重新复习一下 static 关键字,代码如下所示:关于指针,指针是用于存储地址的变量,其类型是 int* 因此在定义指针或者给指针赋值时,一般的类型是: "int * p = " 注意,指针的类型是 int* ,但是指针的名称一般是p同时,我们在获取了某个数据存放的地址之后,为的就是可以通过地址来直接 修改 或者 调用这个数据,那么就需要通过“解引用操作符” ,如下所示:为了更进一步理解指针类型中的 * 和解应用操作符 * 如下所示:1、结构体----用于描述复杂对象....

2022-06-06 16:26:42 166

原创 C语言笔记2

C

2022-03-21 14:06:23 1020

原创 STM32笔记20--电容触摸实验/IIC协议

电容触摸、IIC协议

2022-03-01 15:14:20 1270

原创 C语言笔记1

上文所说的变量加法代码,如下:

2022-02-28 18:40:37 787 1

原创 STM32笔记19--定时器输入捕获实验

参考资料:《STM32开发指南--库函数》第15章,输入捕获实验《STM32中文参考手册》第14章,通用定时器1、通用定时器输入捕获概述本次输入捕获实验在框图中的位置如上图所示。将上图中的红圈进行选取,以通道1为例,如下:其工作过程就是:通过检测定时器通道的边沿信号(TIMx_CHx),在边沿信号发生跳变的时候,比如上升沿或者下降沿,就将当前定时器的值(TIMx_CNT)存放到对应的捕获/比较寄存器中(TIMx_CCRx),这就叫完成一次捕获;(1)设置输入捕获滤波器以通道1

2022-02-22 14:51:17 1871

原创 STM32笔记17--串口通信实验讲解/STM32笔记18--PWM输出实验

串口通信复习通用定时器PWM呼吸灯

2022-02-21 10:46:49 3001 1

原创 STM32笔记16--串口通信寄存器库函数配置以及实例编写

1、STM32串口常用的库函数和寄存器;2、串口配置的步骤;1.1、常用的STM32串口寄存器USART_SR 状态寄存器USART_DR 数据寄存器USART_BRR 波特率寄存器(1)其中,在传输数据时USART_DR数据寄存器的作用尤为重要,在向外传输数据时,控制器是 先将数据写入数据寄存器中储存,而控制器读取数据时,也是从数据寄存器读取数据。(2)而状态寄存器则是用于读取某些数据的状态位;(3)波特率(比特率)寄存器的作用如图所示:如图所示,USART_B

2022-02-10 16:22:12 5520

原创 STM32笔记15--串口通信基本原理

15.1、串行通信接口背景知识15.2、STM32F1串口框图讲解参考资料:《STM32开发指南--库函数》5.3,usart串口文件夹/第九章,串口实验1、串行通信接口背景知识首先,处理器与外部通信有两种常见方式:并行通信和串行通信:(1)并行通信:原理是数据各个位同时传输,优点是传输速度快,缺点是占用引脚资源多。(2)串行通信:原理是数据各个位按顺序传输,优点是占用引脚资源少,缺点是速度慢。其次,在串行通信的基础上,传输又分为:单工,半双工和全双工:(1)单工:只支持数

2022-01-24 14:46:29 3448

原创 STM32笔记14--NVIC中断优先级管理

14.1、中断优先级分组14.2、NVIC中断优先级设置14.3、NVIC总结

2022-01-21 17:11:33 721

原创 STM32笔记13--端口复用和重映射

参考资料:《STM32F1开发指南-库函数版本》 4.4小节,端口复用和重映射或者《STM32中文参考手册》 第8章 通用和复用功能IO13.1、端口复用13.2、重映射(对STM32理解比较透彻的需要)13.1、端口复用什么是端口复用?STM32有很多内置外设,这些外设的外部引脚都是与GPIO复用的,也就是说,一个GPIO如果可以既做普通的输入输出通信引脚,又做这些内部外设的通信引脚,那么这个GPIO就是在复用。例如,PA9和PA10两个引脚,既是两个通用的IO口,又是串口

2022-01-18 00:03:51 2925

原创 STM32笔记12--滴答定时器

SysTick定时器,也叫滴答定时器或者系统定时器。12.1、Systick定时器基础知识讲解12.2、Systick相关寄存器库函数讲解12.3、delay延时函数讲解(Systick应用)本节参考资料:《STM32F1开发指南-库函数版本》,5.1节delay文件夹介绍12.1、Systick定时器基础知识讲解(1)Systick定时器是什么?Systick定时器是一个比较简单的定时器,常用于延时或者计时,也可以用作实时系统的心跳时钟。节省通用定时器的资源。Systi

2022-01-16 20:09:00 10364

原创 通过按键扫描函数实现STM32按键长短按

使用的是正点原子STM32F103ZET6为基础的开发板,有三个按键:KEY0、KEY1、KEY_UP(也叫作WK_UP),其中K0和K1按下后,IO口会检测到低电平,WKup按下后,IO口会检测到高电平。{连按型:按下按键下。只要不松开,会一直有效果,不支持连按:按下后,就视为触发一次。}支持连按型:以WK_UP按键为例,由于WK_UP按下后,会在IO口检测到高电平,设计思路是:当按键扫描函数检测到WK_UP为低电平,不会判断WK_UP已经按下,只有检测到WK_UP口为高电平时,才会判断已经按

2022-01-13 22:34:38 3327

原创 STM32笔记11---时钟系统

11.1、时钟系统框图讲解11.2、时钟配置相关函数讲解参考资料:《STM32F1开发指南(精英版)》HAL库版本---4.3小节,时钟系统 6.2小节,时钟(这一节主要是讲解时钟配置的相关寄存器)11.1、时钟系统框图讲解在上图中,蓝色方块代表STM32的时钟源,这些时钟源,既包括系统时钟的,也包括外设时钟的。所谓系统时钟,是最重要的时钟,因为其他外设的时钟最终都是来源于系统时钟。HSI时钟源:高速内部时钟源,据图可知,其频率约为8MHz...

2022-01-11 00:00:00 288

原创 STM32笔记10--C语言复习,寄存器地址名称映射

10.1、C语言复习10.2、STM32中寄存器地址名称映射的分析参考资料 :库函数开发指南中4.1和4.6小节

2022-01-07 12:26:27 781

原创 STM32笔记9---按键输入实验(库函数)

8.1、按键输入的硬件连接8.2、GPIO输入操作说明8.3、按键实验(思路及程序源码)本章节参考资料;(手册第八章)8.1、按键输入的原理图上述有三个按键,分别是:K0、K1和WKup,三个按键中,K0和K1按下后,IO口会检测到低电平,WKup按下后,IO口会检测到高电平。8.2、GPIO操作说明根据之前所说,操作IO口的状态,有三种操作方法,分别是:调用库函数、操作寄存器、使用位带操作。如下所示:据前述,除了第二种操作寄存器的方法是直接操作寄存.

2022-01-04 14:49:21 4832 1

原创 STM32笔记7--位操作h.

通过位操作实现对IO口的控制,7.1、位操作的基本原理;7.2、跑马灯的硬件连接;7.3、编写跑马灯的程序(位操作);位操作作为第三种控制GPIO口的方法(前两种是库函数和寄存器),不需要掌握地很透彻,但仍需要具备通过位操作读取GPIO口状态的能力。IO口位操作具体参考文献:7.1、位带操作基本原理首先,之前的寄存器或者是库函数操作,本质上都是操作寄存器来控制GPIO口的状态(输出高或低电平)。而位带操作的意思是,将寄存器的32位映射到不同的地址,通过访问(读、写、改)这

2021-12-31 18:35:39 909 1

原创 STM32笔记6--跑马灯实验--寄存器h

6.1、GPIO相关寄存器6.2、跑马灯的硬件连接6.3、编写跑马灯程序6.1、GPIO相关寄存器可以参考中文数据手册,如下所示:据前述,GPIO 共有8种工作方式(4种输入、4种输出)、以及三种工作速度,本次学习目的是通过函数直接调用寄存器来实现各种工作,每组IO口所包含的寄存器为:换言之,本次学习的是寄存器版本的STM32,相对比而言库函数版本,寄存器版本更加快速,这是因为函数是直接调用寄存器,而非通过调用库函数来实现功能。6.2、跑马灯硬件连接略

2021-12-30 10:44:31 393

原创 STM32笔记5--跑马灯实验--库函数h.

5.1 跑马灯硬件连接5.1.1、回顾GPIO基础知识5.1.2、几个重要的函数PS:编译程序,选中魔术棒,再选中Output,勾中框中三项,如下图所示:初始化函数的作用就是设置IO口的输出或者输入方式;上图中。第一行用于定义结构体类型,第二行用于定义是哪个GPIO,第三行是设置输出模式,第四行设置输出速度。5.2、写跑马灯实验程序(1)、使能IO口时钟, PS:在使用STM32的所有外设,或者IO口之前,都需要使能相应的时钟,也...

2021-12-29 13:49:08 506

原创 STM32笔记8--蜂鸣器实验

8.1、蜂鸣器硬件连接蜂鸣器实际通过三极管进行驱动,输入的电流通过三极管进行放大也就是说,通过控制IO口的高低电平来控制继电器以控制蜂鸣器;

2021-12-21 09:02:04 201

原创 STM32笔记4--GPIO基本原理和寄存器的配置

GPIO基本原理和寄存器的配置(以STM32F1为例)4.1、GPIO的基本结构和工作方式;参考资料《STM32中文参考手册V10》--第八章,通用和复用功能IO(GPIO和AFIO)4.2、STM32引脚的说明(1)、 本次选择的是144脚的芯片,共有7组IO口,每一组IO口共有16个IO,也就是说这型芯片,一共有16*7=112个IO。(均以STM32F103ZET6为例)在编程的时候需要记住7组IO口的编号是从GPIOA~GPIOG(2)、 STM32的大部分引脚...

2021-12-20 14:34:50 1167 1

原创 STM学习笔记3

3.1、新建库函数工程模板(以STM32F1系列) 3.1.1、库函数与寄存器区别 库函数就是将寄存器的操作进行封装,大多数场合下,我们并不需要知道操作的是哪个寄存器,只需要知道调用哪些函数即可。在学习过程中,不仅需要学习库函数的调用,还需要了解寄存器的基本配置过程。(心中有数即可)3.1.2、具体步骤开发环境:MDK5与V3.5(1)、新建一个文件夹,作为根目录,命名最好不要出现中文;在该文件夹内新建一个子文件夹,命名为USER...

2021-12-20 10:05:59 170

原创 STM32笔记2

2.1、JLINK程序下载方法(以STM32F1开发板为例) 注意,在使用JLINK下载程序时,必须先给板子供电,可以使用USB给板子供电。 下载环境:MDK5驱动+JLINK 另在JLINK升级的过程中不能断网,或者出现硬件连接断开2.2、JLINK程序也可以用来调试...

2021-12-18 14:45:47 198

原创 STM32笔记1

1、stm32程序下载————ISP串口下载 1.1、下载利用串口1的引脚进行串口下载程序,且只能利用串口1的引脚,也就是对应的PA9、PA10,通过CH340芯片,实现USB信号和串口信号的转换。电脑上还需要串口驱动软件和MCUISP软件。 1.2、程序下载步骤:(1)、通过USB线连接单片机的USB232接口,下载额同时也在给单片机供电。(2)、通过串口下载软件Flymcu,在Flymcu中搜索串口(以COM4为例) 设置...

2021-12-18 14:12:50 440

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除