自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 运算符重载

cout属于ostream(输出流类),全局只能有一个,所以要用引用方式传递。5.函数调用运算符重载(仿函数)4.赋值运算符的重载。

2024-07-11 17:10:20 168

原创 类和对象——友元

1.全局函数做友元:(一个全局函数可以访问一个类的private成员)

2024-07-11 09:49:37 101

原创 静态成员、this指针

return *this ,需要用引用的方式接收(类名&)只有非静态成员变量才属于类的对象上。指向被调用的成员函数所属的对象。

2024-07-10 10:57:48 95

原创 对象的初始化和清理(构造函数和析构函数)

无返回值,也不写void、函数名称与类名相同、构造函数有参数,可发生函数重载、程序在调用对象的时候会自动调用构造,无须手动调用,而且只会调用一次。无返回值,也不写void、析构函数无参数,不可发生函数重载、程序在对象销毁前会自动调用析构,无需手动调用,并且只会调用一次。如果属性有在堆区开辟的,一定要自己提供拷贝构造函数,防止浅拷贝带来的问题。因为被拷贝的p不能被随意更改,所以需要是const常量。拷贝构造其实就是参数类型是自身类的有参构造。3、值的方式返回局部对象。无参、有参构造,普通、拷贝构造。

2024-07-09 12:00:33 173

原创 类和对象----封装

protected:类内可访问 类外不可访问 子类可访问。private:类内可访问 类外不可访问 子类不可访问。可以自己控制读写权限,并且可以可以检测写入数据的有效性。(类中的 属性 和 行为 统一称为 成员)权限:public:类内可访问 类外可访问。struct和class的区别在于。第一行 #pragma once。属性:成员属性or成员变量。行为:成员函数or成员方法。在main函数之外声明类。

2024-07-08 23:13:37 198

原创 USART串口通信

如果选择奇校验,假如我发送0x0F,数据里面有4个1,输出端那么校验位就会补一个1,接收端就会看你整个打包来的九位里面是不是奇数个1,如果是,就认为数据没有出错,否则则认为数据出错,可以选择重传或者舍弃。波特率:每秒传输码元的个数,单位是码元/s或者波特(Baud), 还有一种速率叫比特率,意思是每秒传输的比特数,单位是bit/s,或者是bps。如果其中一个设备没有独立供电,如一个设备是STM32,另一个是蓝牙串口模块,则需要把蓝牙串口模块的VCC与STM32的VCC相连接,stm32向子模块供电。

2024-05-17 11:47:52 163

原创 DAM直接存储器

写传输计数器时,必须先关闭DMA。

2024-05-16 21:13:18 136

原创 ADC模数转换器

ADC有两个关键参数,一个是分辨率,用多少位来表示,12位表示0~2^12-1,即量化结果范围是0~4095。二是转换时间,表示从AD转换开始,到出结果,需要的时间。规则组用于常规使用,注入组用于突发事件。当有多组数据时,规则组的数据会被覆盖,所以需要配合DMA数据转运来使用。注入组数据不会被覆盖。模拟看门狗:当AD值高于设定的上阈值或者低于下阈值时,看门狗会申请中断,然后可以在中断函数里执行相应的操作。0~3V与0~4095是线性的关系。

2024-05-11 01:53:46 194 1

原创 TIM编码器接口

编码器导致计数器自增/自减,过滤毛刺信号的逻辑。

2024-05-11 00:06:24 201 1

原创 TIM输出捕获

eg:TIFP1->Reset 即TIFP1的信号可以触发从模式,来清零CNT。从模式:接受其他外设或者自身外设的一些信号,来控制自身定时器的运行。主模式:把定时器内部的信号映射到TRGO引脚,触发别的外设。

2024-05-03 16:07:33 12 1

原创 TIM输出比较

舵机是一种根据输入PWM信号占空比来控制输出角度的装置。PWM信号要求:周期为20ms,高电平宽度为0.5ms~2.5ms。当IN1给低,IN2给高,且PWM是一个不断反转的信号,电机就可以快速地反转、停止、反转、停止,当PWM频率足够快,电机就可以连续稳定地反转了,且速度取决于PWM信号的占空比。占空比越大,等效的模拟电压就越趋近于高电平;两个推挽电路,可构成H桥电路,可以控制直流电机的正反转。PWM(Pluse Width Modulation) 脉冲宽度调制,是一个数字信号。输出模式控制器中的模式。

2024-04-29 20:56:53 164

原创 6-1 TIM定时中断与内外时钟源的选择

计数器 (CNT):对预分频后的计数时钟进行计数。计数时钟每来一个上升沿,计数器的值就+1,当计数器的值自增运行到目标值时,产生中断,完成定时1任务。预分频器 (PSC):对输入的基准频率提前进行一个分频操作。实际分频系数=预分频器的值+1。定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断。计数模式:向上计数、向下计数、中央对齐。最常用的还是向上计数。高级定时器多出来的功能是用来驱动三相无刷电机的?ARR的缓存寄存器可以手动设置开或者不开。

2024-04-27 09:50:24 159

原创 EXTI外部中断实例:对射式红外传感器、旋转编码器

GPIO_EventOutputConfig(), GPIO-EventOutputCmd(),用于配置AFIO的事件输出功能。EXTI与NVIC的时钟是一直开启的,无需我们设置。GPIO_EXTILineConfig(),用于配置AFIO的数据选择器,来选择我们想要中断的引脚。GPIO_PinRemapConfig(重映射方式,新的状态),可用来进行引脚的重映射。(其库函数文件在GPIO.h里面)使用EXTILineConfig()。(其库函数文件在misc.h里面)。(与AFIO有关的库函数的介绍)

2024-04-26 20:25:46 121

原创 中断、EXTI外部中断

或门:可以有多个输入,但是只能有一个输出。在输入端只要有一个高电平1,就输出高电平1。只有全部输入为低电平0,输出才为0。与门:可以有多个输入,但是只有一个输出,执行与的逻辑,在输入端只要有一个输入是0,就会输出0。事件响应:触发别的外设的操作,属于外设之间的联合工作。相同的Pin:例如PA0和PB0是相同的Pin。抢占优先级:决定是不是可以中断嵌套的优先级。非门:执行非的逻辑。(三角形,图中没有)响应优先级:可插队的优先级。

2024-04-22 21:15:40 154

原创 GPIO输入

用于读取输出数据寄存器的某一个端口的值,看看自己输出了什么。上面两个接法要用上拉输入,下面要设置成下拉输入。用于读取输入数据寄存器某一个端口的输入值。

2024-04-20 15:42:55 213 1

原创 GPIO、GPIO输出

操作STM32的GPIO的步骤:①使用RCC开启GPIO时钟。③使用输出或者输入函数控制GPIO口。从上至下分别是:模拟输入、浮空输入、下拉输入、上拉输入、开漏输出、推挽输出、复用开漏、复用推挽。库函数使用的是读写 位设置和位清除寄存器的方法 该寄存器高16位进行位清除,低16位进行位设置。可配置为四种输出模式,输出模式下可控制端口输出高低电平来控制LED,蜂鸣器等,还可以。可配置为四种输入模式,输入模式下可读取端口的电平信号,通常用于读取按键,读取。寄存器用于存储数据,分有输入寄存器和输出寄存器。

2024-04-19 09:31:34 182 2

空空如也

空空如也

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

TA关注的人

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