自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何快速定位段错误 Segmentation fault

直接上干货 linux下:首先修改makefile文件打开调试选项 例如:#VER:=debugifeq($(VER),debug)。。。改为VER:=debugifeq($(VER),debug)。。。然后终端执行ulimit -c unlimited(生成core)然后执行可执行文件调试可执行文件的core文件sudo gdb 可执行文件 coregdb bt显示的是当前程序结束是的堆栈位置。...

2020-12-29 10:10:47 525

原创 c语言读取txt文件,包含逗号分隔符,多行

c语言读取txt文件中的逗号分隔符文件,网上找了一下都很麻烦,想了想还是自己写一个吧,还挺好用的。1,2,4,5,6,7//适用于多行这样的数据话不多说直接上代码char buf[1024]; /*缓冲区*/FILE *fp; /*文件指针*/char *token,*q; /*行字符个数*/if((fp = fopen("/home/zalend/imutest/three.txt","r")) == NULL){perror...

2020-10-26 16:13:18 3703

原创 创建一个线程函数为类的成员的线程,没有对象,但是又要用到类里面的其他变量。

                                     创建一个线程,这个线程需要用到类成员变量如果我们简单的使用静态变量,相当于全局变量,可以调用这个函数最为线程函数,但是在函数内部我们无法使用其他类的成员。如果不定义静态变量有无法创建这个线程。解决方法:(线程是在类里面的函数中创建)1创建一个线程,线程函数为类public成员,参数设置为this。hT...

2018-11-01 14:46:47 1081

原创 结构体定义以及类的定义

结构体1、最正规定义方式:定义结构体data,此时结构体相当于一个类型,比如int,如需使用此结构体,方法同intstruct data    char a;    int d;};    struct data B2、定义结构体data同时,定义需要使用的结构体变量sum1,sum2。如后面再需要定义结构体变量,方法同1struct data{char a;   ...

2018-11-01 13:48:41 3171

原创 FreeRtos内存管理 heap_1.c /heap_2.c /heap_3.c原理代码解析

        FreeRTOS提供的内存管理都是从内存堆中分配内存的。默认情况下,FreeRTOS内核创建任务、队列、信号量、事件组、软件定时器都是借助内存管理函数从内存堆中分配内存。最新的FreeRTOS版本(V9.0.0及其以上版本)可以完全使用静态内存分配方法,也就是不使用任何内存堆。对于heap_1.c、heap_2.c和heap_4.c这三种内存管理策略,内存堆实际上是一个很大的数...

2018-10-25 15:26:21 1461

原创 can 网络管理

网络管理主要功能:是用来管理ECU是否在网络里面,不在的话请求加入,也就是ALIVE报文, 要判断是否掉线,以及睡眠状态的转换机制,以及跛行状态判,也即是RING报文。主要的实现逻辑流程:从rtos队列里面取出数据,保存在自定义的结构体里面 不论在何种状态只要接收到报文都需要静进入normal状态,等于初始化一次 提取信息,报文的主要信息有三部分,报文ID,目的地址,以及消息类...

2018-08-31 16:26:54 10740 5

原创 STM32 CAN诊断详解

        在许多领域里面,控制系统由很多部分组成,只不过有主次之分。主控制系统是如何知道其他系统是否出现问题的,答案就是通过can诊断,不仅能知道出现的问题还能进行想对其进行的操作。一般为诊断仪和各个部分的通信。       我们在can报文分为诊断报文和解析报文以及网络管理报文,不同的报文根据不同的ID保存在不同的位置。can诊断报文保存在自己的缓存里面。他的报文格式就是数据帧,简单来...

2018-08-20 17:32:36 5275

原创 can整车报文解析

         设置初始化,配置管脚,是否进行映射,配置波特率,设置中断函数等等。 下面详细介绍如何解析整车报文的详细过程  Can1控制器发,Can2控制器接收。发送比较简单,设置好发送函数,配置一下ID就完事了,接收也同样简单,只需滤波一下需要的ID就行。但是如果是整车报文的解析就不一样了。主要是接收方的解析。   首先我们得到...

2018-08-16 17:53:54 30115 1

原创 STM32是如何进入中断函数的

      中断相信很多人都知道是什么意思,不同的任务有不同的优先级,高任务优先级会比低优先级先执行。在嵌入式系统中,任务的调度和切换都是根据优先级来判断的。    中断可以分为软中断和硬中断。一开始接触到的一般都是软中断,软中断就是中断程序包含在主程序里面,当中断条件满足时,直接跳转到中断函数执行,然后再返回。就相当于判断语句。 刚开始接触STM32的小伙伴可能会发现main...

2018-07-19 15:49:02 20005 1

空空如也

空空如也

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

TA关注的人

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