自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 STM32笔记——外部中断的配置

前言:本节以STM32F407为例进行配置目录一、选择对应芯片二、配置sys四、配置外部中断引脚五、设置外部中断引脚六、开启外部中断七、配置时钟八、生成工程HAL库GPIO函数库讲解1、外部中断服务函数2、中断回调函数一、选择对应芯片常规操作,这里我们选择F407ZGT6二、配置sys选择Serial Wire三、配置RCC选择高速外部时钟晶振,系统自动配置相应引脚。四、配置外部中断引脚通过查...

2022-05-08 15:02:17 1672

原创 STM32笔记——外部中断

前言 :本次博客以STM32F4进行讲解基本概念一、中断和异常1、中断——当需要出现时,CPU暂时停止当前程序的执行,转而执行处理新情况的程序和执行过程。2、异常——处理器要复位,不可屏蔽中断,存储故障,这些由内核产生的就叫做异常,也就是硬件异常。二、EXIT和NVICEXIT外部中断/事件控制器外部中断/事件控制器包含多达 23 个用于产生事件/中断请求的边沿检测器。每根输入线都可单独进行配置,以选择类型(中断或事件)和相应的触发事件(上升沿触发、下降沿触发或...

2022-05-08 14:50:54 2067

原创 STM32F1系列HAL库配置GPIO

目录使用CUBEMX配置GPIO1.选择MCU2.配置SYS3.配置RCC,选择外部引脚4. 配置引脚5.GPIO配置6.时钟源设置7.管理工程8.生成工程GPIO初始化初始化的一些常用格式HAL库GPIO函数一些函数的封装使用CUBEMX配置GPIO此文以stm32F108C8T6为例。1.选择MCU2.配置SYS3.配置RCC,选择外部引脚4. 配置引脚注:5.GPIO配置...

2022-04-29 18:02:14 2456 1

原创 STM32笔记——GPIO

目录GPIO简介GPIO的基本结构GPIO的工作模式GPIO的输入1、输入上拉2、输入下拉3、模拟输入4、输入浮空GPIO的输出1、推挽输出2、开漏输出3、推挽和开漏复用功能推挽输出和开漏输出的对比GPIO简介GPIO是通用输出输入端口的简称,简单来说就是STM32可控制的引脚,STM32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集功能。GPIO的基本结构1、保护二极管与上下拉电阻当外部输入..

2022-04-29 17:40:43 846

原创 c语言结构体和联合体

结构体一般形式struct 结构体名 { 成员列表}; 结构体变量主要以下 3 中方式定义结构体类型变量:1、先声明结构体类型,再定义变量名结构体类型名 结构体变量名;2、在声明类型的同时定义变量eg:struct student { int num; char name[20]; char sex; int age; float score; char addr[30];} student1, stude

2022-04-17 14:58:11 197

原创 c语言宏定义

基本介绍1)#define叫做宏定义命令它也是C语言预处理命令的一种,所谓宏定义,就是用一个标识符来表示一个字符串。如果在后面的代码中出现了该标识符,那么就全部替换成指定的字符串。2)#defineN100就是宏定义,N为宏名,100是宏的内容(宏所表示的字符串)。在预处理阶段,对程序中所有出现的“宏名”,预处理器都会用宏定义中的字符串区代换,这称为“宏替换”或“宏展开”。宏定义是由源程序中的宏定义命令#define完成的,宏替换是由预处理程序完成的。带参数的宏定义基本介绍1)C语言允...

2022-04-17 14:37:27 2100

原创 c语言数组

一维数组的创建和初始化数组的创建:在创建数组时,我们必须定义数组的类型和大小,数组的大小不能为0,数组中的元素类型都是相同的。int arr[10];初始化示例int arr1[3] = {1, 2, 3};int arr2[] = {1, 2, 3};//在这里,我们arr[3]里边的数字可以不用写;int arr3[3] = {1, 2};//也是可以的,只是把最后一个数初始化为0了而已int arr4[3] = {1, 2, 3, 4};//是不可以的,不能超过数组长度

2022-04-17 14:28:39 591

原创 c语言函数

一、函数的概念结构化程序设计的思想:把大问题分解成若干个小问题,每个小问题就是一个独立的子模块,以实现特定的功能、在C程序中,子模块的作用是由函数完成的.二、函数的分类标准函数标准函数又称为库函数,由c系统提供,无需程序员定义,可直接使用,但需要在程序开头包含原型声明的头文件。如scanf()自定义函数由程序员根据自己的需求编写,自定义函数不仅要在程序中定义函数本身,必须还要在主函数中调用该函数。函数参数函数的参数有两类:形参和实参(1)函数定义时的参数称为形参,参数在函

2022-04-17 14:17:52 658

原创 c语言分支和跳转

1、if语句一个条件if(条件语句){ 满足条件执行的语句;}//只有一条执行语句的时候 {} 可以省略俩个条件if(条件语句){ 满足条件执行的语句;}else{ 除了 if 以及 else if 语句执行条件外,剩下的条件执行的语句;}三个条件if(条件语句){ 满足条件执行的语句;}else if(条件语句){ 满足条件执行的语句;}else if(条件语句){ 满足条件执行的语句;

2022-04-17 13:57:52 151

原创 c语言循环结构

循环语句一、for循环形式:for(表达式1;表达式2;表达式3){循环语句}表达式1:变量赋值表达式2:循环条件表达式3:循环变量变化区二、while循环while(表达式){循环语句}三、do while循环do{循环语句}while(表达式);执行循环体语句,当循坏条件成立时,继续执行循环体语句;当循环条件不成立时,循环结束。...

2022-04-17 12:24:36 357

原创 运算符、表达式、语句、类型转换

算数运算符c语言提供了5个基本运算符+加法运算符-减法运算符,负号运算符*乘法运算符/除法运算符%取余运算符使用细节:1、模运算的俩个运算对象要求必须是整型数据。2、除了%运算以外的其它运算中,俩个运算对象其中一个为float型时,则运算结果为double型。运算符优先级运算符+、-的优先级相同,* 、/、%的优先级相同且高于+、-运算符,算术运算符都是左结合的运算符。"-"作为负号运算符时是右结合性的。算数表达式用算术运算符和括号()运算符将运算对象连接

2022-04-17 12:13:26 326

原创 c语言数据类型

c语言的基本数据类型有9种:int占4个字节float占4个字节double占8个字节char占1个字节long占4个字节short占1个字节一、int类型的常量:不含小数点和指数的数字,一般都是整型的常量。有三种表示方法:十进制,八进制(常量第一位为0),十六进制(0x,A-F表示0-9)。//以十进制输出printf("%d",num);//以8进制输出printf("%o",num);//以16进制输出printf("%x",num)...

2022-04-17 11:37:57 103

空空如也

空空如也

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

TA关注的人

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