自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 FreeRTOS

首先它是一个函数,只不过这个函数的返回值是一个地址值。函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量。栈:也是一块内存空间,CPU的SP寄存器指向它,它可以用于函数调用、局部变量、多任务系统里保存现场。一块内存空间,可以从中分配出一个小buffer,用完后再把它放回去。函数指针:本质意义上是一个指针,指向某一个函数。指针函数:本质上是一个函数,返回值是一个指针。类型标识符 *函数名(参数表)

2024-04-03 17:31:13 223 1

原创 STM32+ESP8266+ONE-NET

AT+CWDHCP=1,1 // AT+CWDHCP=x,y 开启dhcp,y=0关闭,1开启,x为0时是ap,1是station, 2是二者同时。这里设置为开启dhcp和设置station模式(作为客户端去联网)AT+CWMODE=1 //设置模式工作模式 1.station 2.AP 3.station and AP。三、"AT+CWJAP=\"ONENET\",\"IOT@Chinamobile123 //联网。

2024-03-31 22:11:12 259 1

原创 阿里云下发Cjson解析

作用:将一个JSON数据包,按照cJSON结构体的结构序列化整个数据包,并在堆中开辟一块内存存储cJSON结构体。最近在使用ESP8266连接阿里云上传数据后,想着下发数据到设备端。返回值:成功返回一个指向内存块中的cJSON的指针,失败返回NULL。返回值:成功返回一个指向cJSON类型的结构体指针,失败返回。作用:释放位于堆中cJSON结构体内存。作用:获取JSON字符串字段值。1、json数据格式化。

2024-03-31 15:29:14 378 2

原创 王道数据结构-------线性表

需要将对参数修改后的值带回来就需要在参数前面加 “&”,

2023-12-05 21:34:32 49 1

原创 MPU6050--DMP (一)坐标姿态解算----旋转矩阵

将上述右方的正切变成反正切就行,这里不做过多的描述。

2023-11-30 21:07:26 245

原创 MPU6050--DMP (二)四元数法

四元数为目前应用最广泛的姿态表示方法之一。四维空间的矢量能够以四元 数形式表示,因此四元数也被叫做超复数。上述式子中,q0 表示为实部,i、 j、 k, 表示为虚部。其中,虚部之间的关系为(根据右手定则)1、 交换律、结合律可应用于四元数加法运算过程中,表示为。将 四 元数乘形式转换成 矩 阵形式 , 便可得到用 四 元数表示 的 姿态矩阵。得到姿态变换 的 四 元数乘形式。

2023-11-30 20:59:41 781

原创 linux进程(一)初识、创建进程fork函数

执行以上程序发现printf函数被调用了2次,就说明了原来的进程调用了一次printf函数,用fork函数创建一个新的进程又调用了一次printf函数。调用exit()函数将会结束当前进程,同时删除子进程所占用的内存空间,把返回信息传给父进程。创建进程有两种方式:一种是fork()函数,另外一个是vfork()函数,程序是静态的概念,进程是执行,比如说程序跑起来了就叫做多出了一个进程。2、保证子进程的优先使用,当子进程调用exit退出后,父进程才执行。什么是程序,什么是进程,区别又是什么?

2023-11-23 22:05:11 43

原创 mpu6050之卡尔曼滤波

卡尔曼滤波的五大核心公式:

2023-11-04 19:13:28 359 1

原创 Linux系统文件的读写(三)

当creat的文件已存在时,creat将截断文件原文件,文件的修改时间访问时间也一并被修改。creat的功能相当于:open (pathname, O_WRONLY | O_CREAT | O_TRUNC, mode);以下是creat函数 的主要参数及其解释:三、write和read函数实现标准输入输出//参数0表示输入,从键盘中3个输入数据到readbuf里面,//参数1表示输出,将readbuf里面的数据输出并且显示,如下所示:如果第一个参数是2 的话就是说明是标准错误。

2023-10-22 21:56:53 76 1

原创 linux系统文件的读写(二)

对于每个打开的文件,系统都会记录它的读写位置偏移量,我们也把这个读写位置偏移量称为读写偏移量,Linux 中可使用系统函数 lseek 来修改文件偏移量 ( 读写位置 )即在光标现存的位置往左偏移size_write字节大小,也同样能够到达光标的最开始的位置。参数了解后,我们在读文件之前调用lseek函数,lseek(fd,0,SEEK_SET);返回值:成功将返回从文件头部开始算起的位置偏移量(字节为单位),也就是当前的读写位置;offset: 偏移量,以字节为单位,(相对于whence的偏移值)。

2023-10-18 21:41:00 125

原创 linux系统文件的读写(一)

用printf打印要读取的数据位数和读取的字符串,但是这里你读取的数据位数和字符串都是0,这个是什么原因呢,后来我找到的问题是调用写入函数后没有关闭文件,导致光标停留在写入的最后一个字符串后面,没有移动到最前面,后面有关光标的问题,请听下一回合。调用以上写操作的函数,写完操作后调用malloc函数开辟读操作后所需要存放数据的空间,调用以下读操作的函数。打开创建好的文件后,包含相应的头文件后,在main函数后面写入要的的字符串,

2023-10-18 20:10:56 46

原创 Linux基础命令和文件基础

用man 2 write命令进行查看,(要对文件写操作,就必须要包含以上头文件)cp a.c b.c : 将a.c文件复制到b.c里面。调用open函数,打开文件,正常存在择返回3,不存在则返回-1。0600代表可读可写权限,(4为读,2为写,可执行为1)打开文件函数指令(man 2 open)mkdir+文件夹名 : 创建新文件夹。touch +文件名:创建一个其空文件。ls : 列出当前文件夹内有哪些文件。cd+文件夹名:进入某个文件夹。(对文件进行写操作)

2023-10-17 21:21:07 27

原创 STM32读写内部自带的flash

一般我们说 STM32 内部 FLASH 的时候,都是指这个主存储器区域,芯片型号说明中的256K FLASH、 32K FLASH 都是指这个区域的大小。(我们是32位的系统)库函数提供了3个方式,分别是按字写、按半字写和按字节写,在本次的过程中我用的是最后一种方式。而且由上面的图可知内部的flash的基地址是0x0800 0000,由128页构成,每页有1K字节(2的10次方等于1024,数量级就是1K)。(3) 将 FLASH_CR 寄存器中的“开始擦除寄存器位 STRT ”置 1,开始擦除;

2023-09-24 17:22:46 1033

原创 IC卡(M1)RFID-RC522的基本操作

(一)、RFID-RC522用的是典型的SPI通信,比较方便,我在本篇文章采用的是软件模拟的方式,相比于硬件SPI的优势是方便大家的移植,引脚用普通的引脚即可。M1卡的通信协议和通信波特率是定义好的,当有卡片进入读卡器的工作范围时,读卡器要以特定的协议与卡片通信,从而确定卡片的卡型。

2023-09-22 21:57:47 4878

空空如也

空空如也

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

TA关注的人

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