自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 延时函数delay_ms不能执行

删除掉HAL库文件中的stm32f1xx_hal_timebase_rtc_alarm_template.c等带template的模板文件,再次执行烧录代码led灯可以闪烁。在执行呼吸灯代码时,led灯不能正常点亮,经过串口打印信息发现使用正点原子的delay.c文件中的delay_ms执行无反应,通过查找发现是一些HAL库的模板文件引起的。

2023-12-30 17:14:01 631 1

原创 stm32f103移植LVGL8.3

第三步,将复制的lv_conf_tempate.h重命名为lv_conf.h,将example/portting文件下的lv_port_disp_template的.c和.h、lv_port_indev_template的.c和.h重命名为lv_port_disp和lv_port_indev.修改lv_port_disp.c和.h文件,同样将#if 0修改为#if 1,添加自己对应的屏幕驱动头文件,并修改屏幕分辨率为自己屏幕大小的数值(这里的值范围大点也可以)。别忘了.h也要将#if 0修改为#if 1。

2023-08-14 19:56:31 1570

原创 初识Linux系统

命令行:即Linux终端,是一种命令提示符页面,以纯‘字符’的方式去操作系统,可以使用各种字符化命令对系统发出操作指令。命令:即Linux程序。一个命令就是一个Linux程序。命令没有图形化页面,可以在命令行(终端)提供字符化反馈。-options [可选] 命令的一些选项,可以通过选项控制命令的行为细节。parameter [可选] 命令的参数,多用于命令的指向目标等。在Windows系统中,路径的层级关系用:\ 来表示。在Linux系统中,路径的层级关系用:/来表示;在Linux中,命令有通用格式。

2023-04-26 20:31:20 76

原创 线程同步互斥

该函数提供多线程下,以原子操作方式用lValue给lpTarget指向的目标变量赋值,并返回赋值以前的lpTarget指向的值。该函数提供多线程下,对一个变量以原子操作方式增加1;该函数提供多线程下,以原子操作方式将lpTarget指向的值增加lValue,并返回调用前的。

2023-04-19 16:55:48 79

原创 顺序表基础

线性表本质上就是数组,但是在数组的基础上,还要求数据是从头开始连续存储的,不能跳跃间隔。顺序表是用一段物理地址连续的存储单元一次存储数据元素的线性结构。线性表是n个具有相同特性的数据元素的有限序列。

2023-04-17 15:14:34 56

原创 二分查找的时间复杂度

时间复杂度为O(log2。不看代码,考虑思想。

2023-04-14 10:52:47 106

原创 冒泡排序的时间复杂度

算时间复杂度不能只看是几层循环,而要去看他的思想。精确:F(N) = N*(N-1)/2。时间复杂度: O(N^2)

2023-04-14 10:19:17 67

原创 循环嵌套的时间复杂度

若M和N差不多大,则O(M)或O(N)双重循环时间复杂度为O(M+N)。常数循环时间复杂度为O(1)没有说明M和N的大小关系。若M远大于N,则O(M)若N远大于M,则O(N)

2023-04-14 09:41:09 209

原创 VS2019中MFC添加类

MFC基础

2023-04-01 18:24:22 785

原创 什么是面向对象

面向过程程序设计的重点是分析问题解决的步骤,明确每个步骤的输入和输出以及完成各步骤的流程,是一种结构化的自上而下的程序设计方法。面向对象程序设计的重点是把构成问题的事物分解成对象,从局部着手,通过迭代的方式逐步构建出整个程序,是一种以数据为核心,以类设计为主要工作的自上而下的程序设计方法。面向对象由于其抽象、封装、继承、多态的特性,使得系统具有更好的可扩展性、可复用性、可维护性,对于功能复杂且维护成本较高的系统大多采用面向对象的开发方式。因此类是对象的抽象,对象是类的具体表现形式。

2023-01-02 22:09:14 45

原创 内存管理

随着程序运行时间的增长,泄漏的内存越积越多,可用的内存越来越少,最终无法为程序分配新的内存,进而导致程序崩溃。堆空间的理论大小有几G的空间,生长方式是向上的,也就是向着内存地址增大的方向消耗空间。堆空间在不断分配和释放空间的过程中,可用空间链表频繁更新,造成可用空间逐渐碎片化,每块可用空间都很小。主要存储动态分配的内存块,这部分数据的空间由程序员负责手动分配和回收。也叫字符串常量区,用于存放字符串常量,在对字符串赋值时,会在字符串常量区开辟一块空间来存储对应的字符串常量,然后返回这块空间的地址。

2023-01-02 17:34:52 75

原创 this指针

当对象访问类中的非静态成员函数时,编译器会自动将对象的地址隐式地作为第一个参数传递给this指针,在非静态成员函数中访问非静态成员时都隐含地使用了this指针。通过this指针访问的数据成员和方法成员都必须是类的非静态成员。类的非静态成员属于整个类,不属于某一个对象,没有对象也就谈不上this指针,因此this指针只能在类的非静态成员函数中出现,而不能在类的静态成员函数中使用。this指针的作用域是在非静态成员函数内部,在调用非静态成员函数时构造this指针,在非静态成员函数调用结束后销毁this指针。

2023-01-01 22:03:47 97

原创 指针的区别

**指针常量**:本质上是一个常量,在指针常量中,指针自身的值是一个常量,不可改变,始终指向同一个地址,指向的内容是可以改变的。

2022-12-30 21:32:04 128

原创 C的存储类型

存储类型

2022-12-30 21:03:52 47

原创 C语言字节对齐

C语言字节对齐

2022-12-30 17:19:51 768

原创 复杂指针的声明

用变量a给出下面的定义:a.一个整型数int a;b.一个指向整型数的指针int *a;c.一个指向指针的指针,它指向的指针是指向一个整型数的int **a;d.一个有10个整型数的数组int a[10];e.一个有10个指针的数组,该指针是指向一个整型数的int *a[10];f.一个指向有10个整型数数组的指针int (*a)[10];g.一个指向函数的指针,该函数有一个整型参数并返回一个整型数int (*a)(int);h.一个有10个指针的数组该指针指向一个函数,该函数

2022-12-30 16:49:18 296

原创 linux安装vim

安装vim打开linux命令终端,输入:sudoku apt-get install vim-gtk进行联网安装安装完成后对vim进行简单配置,首先切换至超级用户输入命令:su输入密码按回车键后进入root用户,输入命令:cd ~进入主工作目录,然后输入vim . vimrc对vim进行配置。...

2021-04-01 17:08:19 2929

空空如也

空空如也

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

TA关注的人

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