- 博客(24)
- 资源 (17)
- 收藏
- 关注
原创 UDS DTC详解
一、DTC的构成ISO 14229-1的故障诊断码格式规定,故障码信息由四字节组成,如下表所示:其中DTCHighByte,DTCMiddleByte,DTCLowByte表示服务中的故障诊断码;StatusOfDTC表示故障码状态。DTCHighByte,DTCMiddleByte两字节表示故障内码,对应5位标准故障码,如表下所示:5位标准故障码,第1位是字母,后面4位是数字,如P0120。第一位字母表示故障所属系统,我们把汽车系统分为四大类。分别是动力,底盘,车身,网络通信,分别用P
2021-04-08 19:59:12 17426 2
原创 J1939广播DM1报文
一、DM1报文1,SAE J1939-21(参考5.2)对CAN ID进行了重新划分,加上8个字节的数据域,构成了J1939 的协议数据单元(Protocol Data Unit, PDU)。SAEJ1939-73(参考5.7.1)中定义了DM1的优先级为6,PGN(参数组数编号)为65226(00FECA),所以源地址为0x41的DM1 ID为18FECA41。2,假设源地址为0x41的节点,存在两个现行故障,故障的SPN,FMI分别为(521132,1),(521008,3),按照DTC结构
2020-08-22 19:37:24 10397 10
转载 c++中ifstream一次读取整个文件
c++中一次读取整个文件的内容的方法:读取至char*的情况std::ifstream t; int length; t.open("file.txt"); // open input file t.seekg(0, std::ios::end); // go to the end length = t.tellg(); // report location (this is the length) t.seekg(0, std::ios...
2020-06-10 09:04:38 1520
原创 timer----C定时器
滴答定时器中断执行函数,时间到后,执行AlarmList回调函数//unsigned int----->TickTypeTickType OsTickCounter = 1; /* zero mask as not started */ typedef TickType* TickRefType;STATIC TickType AlarmTick[ALARM_NUM];STATIC TickType AlarmPeriod[ALARM_NUM];void O.
2020-05-16 14:34:43 500
原创 S32K144移植S32DS工程到KEIL MDK
文章目录准备 创建Keil工程 导出源码 进行移植准备需要准备以下三个工具Keil 5高版本MDK下载地址:https://www.keil.com/demo/eval/arm.htmS32DS下载地址:https://nxp.flexnetoperations.com/control/frse/download?agree=Accept&eleme...
2020-04-27 14:02:30 1607
原创 软件设计DFMEA
项目 系统 供方名称及代码 编号/版本号 子系统 / 关键日期 编制 零件名称 零件件号 最初 项目型号/年份 阶段状态 □样件 □试生产 ■生产 修订 核心小组 顾客名称 项目/功能/要求 潜在失效模式 ...
2020-04-12 10:06:23 3115
原创 数字证书、https解密
作为文件形式存在的证书一般有这几种格式:1.带有私钥的证书 由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以pfx作为证书文件后缀名。2.二进制编码的证书 证书中只有公钥没有私钥,DER 编码二进制格式的证书文件,以cer作为证书文件后缀名。3.Base64编码的证书 ...
2020-01-11 11:15:10 306
原创 linux ftpget和ftpput命令
ftpget 和 ftpput命令传输数据ftpget -u username -p passwd -P port IP source targetftpput -u username -p passwd -P port IP target sourceeg.ftpget -u cfupdate -p 5z43cf -P 82 202.105.139.92...
2020-01-08 16:52:20 5179
原创 Linux下的阻塞、非阻塞,同步、异步
一、阻塞与非阻塞,同步与异步的关系1、同步 同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是说事情必须一件一件地做,等前一件做完了才能做下一件事。2、异步 异步,就是在发出一个功能调用时,调用者不会立刻得到结果。实际处理这个调用的部件是在调用发出后,通过状态、通知来通知调用者,或通过回调函数处理这个调用。3、阻塞 阻塞调用是指调用结果返...
2020-01-02 20:36:44 166
原创 Linux常用命令大全
Linux命令短小却功能强大。系统信息:arch 显示机器的处理器架构uname -m 显示机器的处理器架构uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS /...
2019-12-30 21:00:35 109
原创 移植 bash到ARM开发板
一般情况下,在ARM开发板中都会有sh,这是随busybox携带的脚本工具。如果想将shell脚本在ARM目标机中运行,则需要把脚本第一行的#!/bin/bash改为#!/bin/sh。但这样虽然可以执行脚本,但是脚本中的许多语法是不支持的,例如:1、判断: if [ -d /usr ] ; if [ -b /dev/sda1 ]2、数值运算:sum=$[$val1+$val...
2019-12-23 21:53:33 1417 1
原创 嵌入式LINUX下常用库的移植
ARM-LINUX下一些常用库的移植一些库在各个项目经常重用.如jpeg,freetype,iconv 等.每次大型项目均会反复重用.因此按照原来项目规范,一般都放在项目libs目录下,但后来发现,每个项目都做重复操作.也完全没有必要.因为现在是将其归纲到一个comm_lib公用信息.以下是常用库的ARM-Linux移植,我是放在/home/hxy/common_lib 目...
2019-08-07 09:12:19 834
原创 查看linux系统常用的命令,Linux查看系统配置常用命令
一、linux CPU大小 cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id" 说明:Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。其实应该通过...
2019-05-23 11:26:32 156
转载 利用ssh与局域网内主机建立远程连接实现局域网穿透
公司新开发的项目,利用嵌入式linux系统,要求其中的软件能够支持远程升级,个人感觉如果能实现远程操作会更方便一些,于是在网上搜寻方法,当时的想法是希望能够找到一种ssh代理服务,能够实现两台不同局域网内电脑可以通过ssh代理服务器建立远程连接,可以保证数据的加密性。 后来在网上找了很多资料,发现找不到这种代理服务,但是同时也发现了另一种解决办法:ssh端口转发,其实我感觉就类似于s...
2019-05-15 16:04:56 1606
转载 Linux json-c
一、JSON介绍JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language,Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家...
2019-05-14 12:26:55 909
原创 MFC CString,string,char*之间的转换
这三种类型各有各的优点,比如CString比较灵活,是基于MFC常用的类型,安全性也最高,但可移植性最差。string是使用STL时必不可少的类型,所以是做工程时必须熟练掌握的;char*是从学习C语言开始就已经和我们形影不离的了,有许多API都是以char*作为参数输入的。所以熟练掌握三者之间的转换十分必要。以下我用简单的图示指出三者之间的关系,并以标号对应转换的方法。1 strin...
2019-03-26 10:47:13 250
原创 Linux下获取文件的大小和最近修改时间
Linux下获取文件的大小(byte)和最近修改时间(时间是指从公元1970年1月1日0时0分0 秒算起至今的UTC时间所经过的秒数)#include<stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>int main(){ FILE ...
2019-03-25 15:03:13 756
转载 ubuntu16.04安装Samba建立共享目录
VMware自带的共享文件夹功能有缺陷,在使用ubuntu虚拟机的过程中发现,有些程序无法在共享目录中运行。于是换一种建立共享目录的方式,通过在ubuntu16.04虚拟机安装Samba服务器,建立与Windows共享的文件夹。VMware自带的共享方式是window建立共享文件夹,让ubuntu来访问;Samba是在ubuntu中建立共享文件夹,让windows来访问,我估计前一种方式比...
2019-03-25 14:40:55 129
原创 ubuntu新建用户,加入用户组,root权限
1. 新建用户:adduser zyni输入密码2. 添加用户组,有root权限chmod u+w /etc/sudoersvi /etc/sudoers添加下面的内容:%sudo ALL=(ALL:ALL) ALL3. 把新建的用户加入 sudo组中gpasswd -a zyni sudo这时新建的用户zyni己建有root权限了,输入sudo su 即可切换到...
2019-03-25 14:39:31 4426
原创 EC20 4G模块 *99# 拨号上网
操作系统:win10模块型号:quectel EC20 CE FAG4G模块拨号步骤如下:1. 打开网络和internet设置2. 选择“拨号” 3. 选择“设置新连接”4. 选择“拨号调至调节器或ISDN连接”5. 关键一步,选择网络服务商(ISP)的时候,输入“*99#”,然后直接点击“连接”6. 开始连接-》可以上网冲浪了。...
2019-03-25 14:35:15 6225 1
原创 select函数在socket通信中的使用和解释
select函数的作用: select()在SOCKET编程中还是比较重要的,可是对于初学SOCKET的人来说都不太爱用select()写程序,他们只是习惯写诸如 conncet()、accept()、recv()或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即...
2019-03-25 14:31:49 313
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人