2023年终总结
7a62b715975494b3f39b582cff78fdaa4700579ba1adc5694d1060aa0ef8b5ccdb4a1de252b85ca716a85da92e940918e4c3051ce077f53a193c3b08fdfedbddd63ec25e7b2706870677855f3f097b974a4d978623d18128e691b97ed8187806df9470d3db94a95d1214bea72ad21f001f4fa870bb416c4cc2bf7893fd383b2711d06c0213a18762be0b98d0d109a24e3325c52b722481888af4e553aaed9f2b17df7f4b1d2c460a5eeb31251ed4b69453bd880950dd7e51b844a057d10403c7b5a2958b4fd8834179b39362d912ddd14c5c1774ee8bc7a0fbfdf00b7c8d0485685306abd901f7a7a4db27f7a1bfc540dc0d86b2f87bd7d78 ...
XCP协议基础
前言本文参考了以下两篇大佬的文章 fzxhub教程贴https://docs.fzxhub.com/ 小猫爪教程贴https://blog.csdn.net/Oushuwen/article/details/132408765 标定协议原理为什么需要标定协议现在一款汽车、机械臂。要有灵魂动起来,主要有机械运动部分、电子控制硬件部分、电子控制软件部分。软件部分又分为软件、和参数。比如车型A,区分高、中、低三个配置,但是其实不管是硬件还是内部代码基本都一样,不一样的是一些车型参数或者配置字。通过标定就能实现车型配置的切换,体现不一样的系统性能 标定协议是汽车控制在编写程序后,部分功能实现的部分参数是需要在实车上才能确定的,当然在实车上调试过程中也需要监测一些数据才能进行调试工作 在一些需要调试较少的系统中,可以一边调试一边优化参数重新下载程序。对于汽车这样复杂系统就变得不可能。因此诞生一种标定系统。程序工程师将程序编写架构搭建好,在编程过程中需要预知那些参数需要标定(实时修改),那些变量需要观测(实时查看)。系统程序搭建好后,标定工程师即可在实车上实时查看、调试控制器。因此诞生一种标定协议 ...
XCP协议指令
XCP指令详解标准(STD)指令必实现指令0xFF:CONNECT 该命令与从设备建立一个连续的、逻辑的、点到点的连接设备。在运行XCP会话期间(已连接),此命令不影响任何XCP从设备的配置。 从设备在非连接状态时不响应任何其他命令(除了自动检测) Mode参数 Mode=0x00主机可以与从设备启动XCP通信 Mode=0x01主机可以启动XCP通信同时告诉从机它应该进入一个特殊的(用户自定义的)模式 RESSOURCE参数 CAL/PAG、DAQ、STIM、PGM = 1 表示该资源可用,反之不可用 COMM_MODE参数 ADDRESS_GRANULARITY_1、ADDRESS_GRANULARITY_0 00: ADDRESS_GRANULARITY=BYTE AG=1字节 01: ADDRESS_GRANULARITY=WORE AG=2字节 10: ADDRESS_GRANULARITY=DWORD AG=4字节 11: ADDRESS_GRANULARITY=保留 AG=保留 SLAVE_BLOCK_MODE参数 1:表示从机块模式可用 0:表示从机块 ...
嵌入式基础(二)
C语言相关 查看相关知识 14.预处理指令和多文件编程 查看相关知识 (1)预处理指令以#开头的都是预处理指令,在预处理阶段会处理的指令预处理—gcc -E xxx.c -o xxx.i宏#define预处理指令可以用来定义宏格式:#define 宏名称 (宏值)宏名通常都是由大写英文字符构成,宏名不可包括空格;用宏给数字命名时,不可使用赋值操作符,不自增自减宏能够给表达式命名,宏的参数可以用来表示表达式的未知数字;格式:#define 宏名称(参数列表) (宏值表达式)宏只检查参数个数,不检查参数类型可以在编译命令里使用-D选项指定宏所代表的数字;由于有些数字在编写程序时无法确定,只有在编译的时候才知道,这个时候需要在程序里使用宏名称代表它们,然后再编译时用数字替换这些宏宏操作符#是一个宏操作符,能够将宏的参数转换成字符串##是一个宏操作符,可以将一个代表标识符的参数和其他内容连接为一个新的标识符编译器内置宏—预定义宏;默认已经定义好的宏,直接使用即可,如下表| 宏 ...
嵌入式基础(一)
计算机基础终端相关 查看相关知识 Kernel - the innermost part of any modern operating system which directly talks to actual hardware.Shell - wrapper around the actual Kernel. Whenever we run command, we actually talk to shell which in turn invokes appropriate Kernel instructions. Apart from this, the shell is capable of performing some other stuffs like finding appropriate program while having commands, some file name short hand, piping commands etc. Linux/MAC流行的shell是bash;Windows通常 ...
2022年终总结
7a62b715975494b3f39b582cff78fdaa4700579ba1adc5694d1060aa0ef8b5ccdb4a1de252b85ca716a85da92e940918e4c3051ce077f53a193c3b08fdfedbddd63ec25e7b2706870677855f3f097b974a4d978623d18128e691b97ed8187806df9470d3db94a95d1214bea72ad21f001f4fa870bb416c4cc2bf7893fd383b2711d06c0213a18762be0b98d0d109a24e3325c52b722481888af4e553aaed9f2b17df7f4b1d2c460a5eeb31251ed4b69453bd880950dd7e51b844a057d10403c7b5a2958b4fd8834179b39362d912ddd11e2f1d52fa5f7020cbc2921a9de5932bbcb8f192ec4093ecfced105b92d70e09f048a78f32ea9c5e0 ...
网站加载优化方案
前言网站加载速度不仅可以极大地提升用户体验感,还能对访问者的转化率起到一定的帮助,经过优化的网站文件下载与页面显示速度更快,因此网站加载优化是十分必要的。 本文参考了以下两篇大佬的文章 山岳库博教程贴https://kmar.top/posts/7d9fb37e/ 糖果屋教程贴https://akilar.top/posts/8f31c3d0/ 压缩静态资源 查看教程 我是使用gulp来压缩静态资源的,被压缩的文件有HTML,CSS,JavaScript文件。1.插件安装在博客根目录打开终端,输入以下指令:123456789101112npm install --global gulp-clinpm install gulp --save# 压缩HTMLnpm install gulp-htmlclean --save-devnpm install gulp-html-minifier-terser --save-dev# 压缩CSSnpm install gulp-clean-css --save-dev# 压缩JSnpm ...
我和我的小伙伴超
7a62b715975494b3f39b582cff78fdaad737051d472f5f1e61efea2a13b76480aae67f1854efebf79de13c289fb5561a759e6257f4da91421d97f4fcc2d36c352c76c6b4ee6a71ff3cbf9912dc2f0ce5f457b940ba23268b772f0b4ff9d1d7ba6761f56a02019dbe050b10e27a3c97899b9ce33c8e639f2594fbb9a0f3ef23ddd144f3909159bac495c61d169747e32292189119c881aabafd9c2159630c9c8444419ba09d3e7eac10f829bbb17ee1b5f46fcc423b8855459127b86463b20df52b1806fa0656dc1a6817987615d19439a32b39df7602c38738d44ee4e75861bc75219e2e7e5339b4ba8dd343e4c602d87e34cec4d8a22bcba ...
民政部数据反爬坑
前言本文记录抓取民政部数据时,出现的坑。主要抓取页面中县以上行政区划代码链接的具体内容。本文章仅用于笔者记录学习过程,请遵守相关法律法规,严禁用于非法途径。若读者因此作出任何危害网络安全的行为,后果自负,与笔者无关。 确定数据来源首先需要确认县以上行政区划代码链接是否在响应中,右键查看网页源代码,在页面中搜索“2020年11月份县以上行政区划代码”,发现存在该关键字,可以确定能够从网页响应中获取需要的数据。 接着,在超链接“2020年11月份县以上行政区划代码”上右键检查,查看所指向的url地址,如下图所示: 分析数据点击url地址,发现页面跳转后的地址与点击的url地址不符 怀疑在点击页面后,触发JS脚本链接重定向,于是将页面的响应打印输出,观察响应中是否存在页面跳转后的url地址,最终发现是有的,于是利用xpath表达式对真正的url地址进行提取。 编写程序以下代码是根据上文的分析,利用requests库实现的; 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 ...
JS逆向之百度翻译
前言本文使用JS逆向的方法破解百度翻译;本文章仅用于笔者记录学习过程,请遵守相关法律法规,严禁用于非法途径。若读者因此作出任何危害网络安全的行为,后果自负,与笔者无关。 分析数据来源 打开百度翻译网站,在输入框输入需要翻译的单词:例如spider,右键查看网页源代码,在网页源代码中搜索spider,发现并没有spider单词,因此可以判断请求百度翻译翻译单词的过程应该是一个异步请求; 获取需要请求的数据 根据上文的判断这应当是一个异步请求;按下F12然后刷新网站页面,获取加载网站的JS,CSS等文件; 在输入框中输入查询单词,例如hello;查看发送的异步请求,一个一个查看,观察哪一个请求的响应是获得翻译结果的;这里判断应当是v2开头的这个请求; 查看请求头,发现这是一个post请求,根据表单数据初步判断可能有两项请求内容是变化的,一个是sign一个是token; 更换查询单词,发现token值并不变化,因此变化的只有sign值,接下来需要获取的sign的值;在JS文件中查询哪些文件中有sign这个变量,最后定位到如下图这个JS文件中,在该JS文件中,搜索sign,发现两处 ...