自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(426)
  • 资源 (3)
  • 收藏
  • 关注

原创 51单片机——I2C总线

I2C总线(Inter IC BUS)是由Philips公司开发的一种通用数据总线两根通信线:SCL(Serial Clock)、SDA(Serial Data)同步、半双工,带数据应答通用的I2C总线,可以使各种设备的通信标准统一,对于厂家来说,使用成熟的方案可以缩短芯片设计周期、提高稳定性,对于应用者来说,使用通用的通信协议可以避免学习各种各样的自定义协议,降低了学习和应用的难度。

2024-09-01 17:41:43 1166

原创 51单片机——存储器

AT24C02是一种可以实现掉电不丢失的存储器,可用于保存单片机运行时想要永久保存的数据信息。存储介质:E2PROM通讯接口:I2C总线容量:256字节。

2024-09-01 15:11:02 667

原创 51单片机——蜂鸣器

蜂鸣器是一种将电信号转换为声音信号的器件,常用来产生设备的按键音、报警音等提示信号。蜂鸣器按驱动方式可分为有源蜂鸣器和无源蜂鸣器。有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音。

2024-09-01 14:14:29 741

原创 51单片机——实时时钟

SCLK中,在时钟的上升沿数据会写入,在时钟的下降沿,8位数据会被一起写出。时钟IO发两个字节,第一个字节是命令字,第二个字节是数据。

2024-09-01 11:50:56 702

原创 51单片机——LED点阵屏

LED点阵屏由若干个独立的LED组成,LED以矩阵的形式排列,以灯珠亮灭来显示文字、图片、视频等。LED点阵屏广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等LED点阵屏分类 按颜色:单色、双色、全彩 按像素:8*8、16*16等(大规模的LED点阵通常由很多个小点阵拼接而成)大多数点阵屏都是由许多小块的8*8LED点阵组成。

2024-09-01 10:17:06 1324

原创 51单片机——串口通信

全双工:通信双方可以在同一时刻互相传输数据半双工:通信双方可以互相传输数据,但必须分时复用一根数据线单工:通信只能有一方发送到另一方,不能反向传输异步:通信双方各自约定通信速率同步:通信双方靠一根时钟线来约定通信速率总线:连接各个设备的数据传输线路(类似于一条马路,把路边各住户连接起来,使住户可以相互交流)

2024-08-31 14:45:27 752

原创 51单片机——定时器

定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。定时器作用:(1) 用于计时系统,可实现软件计时,或者使程序每隔一固定时间完成一项操作(2) 替代长时间的Delay,提高CPU的运行效率和处理速度 ()定时器个数: 3个 (TO、T1、T2),T0和T1与传统的51单片机兼容,T2是此型号单片机增加的资源。注意:定时器的资源和单片机的型号是关联在一起的,不同的型号可能会有不同的定时器个数和操作方式,但一般来说,TO和T1的操作方式是所有51单片机所共有的。

2024-08-30 16:46:19 1078

原创 51单片机——模块化编程

传统方式编程:所有的函数均放在main.c里,若使用的模块比较多,则一个文件内会有很多的代码,不利于代码的组织和管理,而且很影响编程者的思路。模块化编程:把各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数的声明,其它.c文件想使用其中的代码时,只需要#include "XXX.h"文件即可。使用模块化编程可极大的提高代码的可阅读性、可维护性、可移植性等。

2024-08-25 18:22:12 1297

原创 51单片机——数码管控制

每个数码管有10根引脚,每个数码管被分为A-G,共7段,和一个DP。剩余两个引脚作为公用的正极或负极接口。共负极共正极所下图所示,上面的图是共负极,下面的图是共正极。例如共负极的图想要显示1,把12、9、8引脚赋值为1,把6引脚赋值为0,此时就可以实现最后一个数码管点亮效果,其他数码管保持熄灭。想要DIG4显示为1,代表BC段点亮,此时7、4需要输出高电平,其他段码为低电平。

2024-08-25 16:52:16 864

原创 51单片机——按键控制

轻触按键:相当于是一种电子开关,按下时开关接通,松开时开关断开,实现原理是通过轻触按键内部的金属弹片受力弹动来实现接通和断开。

2024-08-25 14:27:03 570

原创 51单片机——LED灯控制

中文名:发光二极管外文名:Light Emitting Diode简称:LED用途:照明、广告灯、指引灯、屏幕。

2024-08-25 11:16:30 627

原创 51单片机简介

单片机,英文Micro Controller Unit,简称MCU 内部集成了CPU、RAM、ROM、定时器、中断系统、通讯接口等一系列电脑的常用硬件功能 单片机的任务是信息采集(依靠传感器)、处理(依靠CPU)和硬件设备(例如电机,LED等)的控制单片机跟计算机相比,单片机算是一个袖珍版计算机,一个芯片就能构成完整的计算机系统。但在性能上,与计算机相差甚远,但单片机成本低、体积小、结构简单,在生活和工业控制领域大有所用 同时,学习使用单片机是了解计算机原理与结构的最佳选择。

2024-08-24 17:31:30 181

原创 STM32简介

32位微控制器,也称作MCU。由ST(意法半导体)公司开发。以ARM-Cortex-M为核心。

2024-07-30 23:11:52 183

原创 汽车空调歧管压力表的使用

(1)在手动低压阀开启、手动高压阀关闭状态下,低压管路、中间管路与低压表相通开此时可进行从低压侧加注制冷剂或排放制冷剂,并可同时检测高、低侧的压力。(2)在手动低压阀关闭、手动高压阀开启状态下,高压管路、中间管路与高压表相通,此时可进行从高压侧加注制冷剂或排放制冷剂,并可同时检测高、低侧的压力。(4)在手动高、低压阀均开启时,可进行制冷剂的加注和系统抽真空等作业,并可进行高、低压侧压力的检测.(3)在手动高、低阀均关闭时,可进行高、低压侧的压力检测。

2024-07-30 21:42:47 173

原创 汽车电动空调系统

电动汽车制冷空调系统与传统汽车制冷空调系统基本原理一样,区别在于电动汽车空调系统采用电动空调压缩机。电动空调压缩机由驱动电机,压缩机,控制器集成。电动空调压缩机的驱动电机采用体积小,质量轻,效率高的三相永磁同步电机。由控制器将动力 电池高压直流电转化为三相正弦交流电驱动。电动压缩机多采用涡旋压缩机,因为涡旋压缩机具 有振动小,噪音低,使用寿命长,重量轻,转速高,效率高,尺寸小的优点。

2024-07-20 20:46:17 989

原创 新能源汽车空调系统的四个工作过程

1.汽车空调制冷系统组成 以R134a为制冷剂的汽车空调制冷系统主要包括压缩机、电磁离合器、冷凝器、 散热风扇、储液于燥器、膨胀阀、蒸发器、鼓风机、制冷连接管路、高低压检测 连接接头、调节与控制装置等组成。

2024-07-20 18:46:04 272

原创 新能源汽车空调系统制冷不足解决方案

汽车空调制冷循环的四个过程:压缩,冷凝,节流,蒸发。理论循环假定:1.压缩过程为定熵过程;2.冷凝和蒸发过程为定压过程;3.蒸发器和压缩机之间为蒸发压力下的饱和蒸汽;4.冷凝器和膨胀阀之间为冷凝压力下的饱和液体。

2024-07-20 18:21:34 844

原创 Capl中的运算符

Capl中的运算符类似于C语言。由于capl中没有指针的概念,所以没有指针取值,取地址等运算符。Capl中的运算符优先级同C语言一样,同样小括号可以 提升优先级。例如10/4 结果为2 10/3结果为3例如10+1.2结果是11.210.00+1.2结果是11.2只要参与运算的数据有浮点数,就不能使用整形%d的占位符。例如10/4 可以写成 float(10)/4 结果为2.5例如10/6 结果为4。

2024-05-10 16:26:47 556

原创 Capl复合数据类型:枚举

定义的枚举类型变量,里面的成员如果没有赋值,默认从左到右,依次为012345...。如果有赋值就该成员就代表它所赋的值。用于定义一组有穷的、命名的常量。常量有了命名更容易理解和记忆,枚举中常量的命名,必须在整个capl程序中唯一。

2024-05-10 16:23:31 283

原创 Capl复合数据类型:结构

结构是由一系列的相同或不同的数据类型构成的整体。结构中的每一项数据成为一个成员。每个成员可以有各自的数据类型。所有成员一起表示一个整体结构。省略结构体类型后,后面就无法在使用该结构体继续声明变量了,只有当时定义的结构体变量还可以使用。

2024-05-10 16:22:11 357

原创 Capl复合数据类型:数组

数组声明赋值时,如果赋值的元素超过数组设置的大小,就会报错,触发数组索引越界。如果赋值的元素没有超过数组设置的大小,没有赋值的元素默认赋值为0.数组中的元素,可以读可以写,赋值的元素可以重新赋值以达到修改元素值的目的。如果想要得知数组的长度,可以使用capl语言内置的函数elCount来获取。创建一个字符串类型的变量,本质上就是声明一个char类型的数组。数组声明时,如果不赋值,默认所有元素都赋值为0.字符数组的长度=中文字符串中字符的个数*2+1;字符型数组,赋值时需要为数组元素加上单引号。

2024-05-09 17:16:47 944

原创 Capl简单数据类型

其中255是一个常量,系统已经自动为其分配了四个字节的存储空间;变量a是一个byte类型的变量,系统为其分配一个字节的存储空间。现在把255常量赋值给变量a,由于常量255有四个存储空间,而变量a只有一个存储空间,所以赋值时会截断常量的存储空间,使其符合变量的存储空间。常量系统默认分配4个字节,如果常量超过4个字节,就需要在数字后面加上LL,表示 是一个8字节数据。在数据保存到变量中的时候,如果超过了变量存储的范围,会被截断。浮点型输出时,用%f。在capl语言中,系统会默认给常量分配四个字节的空间。

2024-05-09 17:14:27 366

原创 CAN报文中的信号解析

ECU发送的一帧CAN报文中是有多个信号的。信号在报文的数据域中,数据域中可以有多个信号。协议规范一帧CAN报文数据域最多有8个字节,企业中一般都设计为所有的CAN报文都是8字节。8个字节(B)换算成比特(bit)就是64个比特。从起始位40开始,从右向左开始填充数据,当本行填充完成,继续向上填充。把填充的数据转变成原始的二进制,msb代表最高位,lsb代表最低位。主机厂制定信号在CAN报文数据域中的分布、信号值得换算等。每个字节有8bit:从右向左,由低到高。CAN报文数据域8字节的二维布局。

2024-05-08 09:38:51 763 1

原创 CAN报文的用途

CAN报文主要有四个用途,分别是应用报文,诊断报文,网络管理报文,标定报文。网络管理报文:让整个CAN总线上的ECU能够更省电的进入休眠或者唤醒状态。应用报文:ECU发送各自应用场景的报文。诊断报文:查看ECU的故障信息。标定报文:校准调整参数系数。

2024-05-08 09:36:19 422

原创 CAN报文总线仲裁机制

多个节点同时发送报文,可以同时发送,但是在发的过程中,每个节点在发送每一个比特的同时也在回读总线上的每一个比特的实际电平。这种巧妙的设计,不需要在仲裁过程中,额外的再发送一些别的报文,即不浪费时间,也不破坏报文的这种数据。其中非常根本的底层机制,就是显性的电平一旦某一个节点发出去,那么总线的电平就呈现显性低电平,因此显性低电平0的优先级就更高。如果有两个以上的ECU同时发送CAN报文,ID值小的报文可以发送成功。每个ECU在发送报文的同时,它也在不断的回读总线上的电平,发送报文就是传输发送电平。

2024-05-08 09:34:35 502

原创 ECU和CAN总线

CAN控制器和CPU集成在一起形成一个单独的电子元件MCU。MCU和CAN收发器进行连接,MCU根据应用的逻辑信号0、 1转变成普通的低电平、高电平。CAN收发器把普通的电平变成两根导线的差分电平,通过CAN H和CAN L发送出去。汽车内部有大量的ECU(电控单元),ECU和ECU是要通信的,这就需要用到CAN总线。一旦受到影响CAN高和CAN低的电压就都发生同样的变化,电压差还是保持不变的,因此不影响CAN信号的解析。使用CAN高和CAN低两根线来发送信号,不易受外界电磁等原因的干扰,

2024-05-08 09:31:19 345

原创 传统汽车空调系统工作原理

1.首先讲一个概念液体变成气体:吸热4.工作过程蓝色为蒸发箱的气态氟红色为高温高压的蒸汽氟压缩机负责对气体进行压缩,由汽车发动机曲轴带动。工作时,蒸发箱的气态氟流入压缩机,经过压缩后变成高压蒸汽。加压过程气体变成液体:放热 2.在汽车空调系统中热量的传递的介质不是水,而是氟利昂,简称:“氟”。3.传统式汽车空调结构如下该三个部件位于车头进气口位置该部位位于汽车驾驶车厢前方,常规上介于发动机与汽车驾驶车厢之间,有铁板与驾驶车厢阻隔。高温高压的蒸汽氟通过冷凝器左下方管道流向

2024-05-07 21:36:12 426

原创 UDS的0x19服务

诊断响应报文中的第3个字节,DTC状态可用掩码,表示ECU支持那些种状态的故障码。第4个字节DTC及状态*N,表示响应出所有符合诊断请求条件的DTC.DTC FID(DTC的格式标识符),如下所示。DTC Count存储故障码格式的标识符。DTC FID所支持的故障码状态的情况。19 01 用于读取故障码的数量。19 02 用于读取故障码列表。DTC SM故障码的状态掩码。DTC SM:DTC状态掩码。0x19读取故障码信息。

2024-04-24 10:08:27 595

原创 UDS故障码的状态

在使用UDS19 02 服务读取故障码信息时,读取到的故障码信息占四个字节,其中 04 20就代表 P0 04 20(动力系统故障),第三个字节00就代表发生故障的原因。这个故障码状态字节有8个bit,每一个bit上面的0或者1来指示故障码,当前是否具有某种状态,0就代表不具有,1就代表具有。Bit7 :故障是否上报仪表,该故障如果和仪表上的故障灯有关联,就需要上报仪表。在ECU的一个操作周期之内,从ECU的唤醒到休眠。Bit3:故障码在一个或多个检测周期都出现,表示已确认的故障,bit位置为1;

2024-04-24 10:06:44 469

原创 UDS的3字节故障码

在UDS的规范下面,使用19服务去读取故障码,会发现读到市面上各种车企的各种ECU中的所有的故障码读出来都是3个字节。这与前面的五位故障码占2个字节不符,其实读出来是3个字节就是UDS中制定的规范。如今车企中主要采用的是三个字节的故障码。现在市面上主要的ECU存储的故障码都是三个字节的,符合UDS规范的这个。前两个字节就是OBD诊断故障码(五位故障码)。UDS故障码包含OBD故障码(五位故障码)Root DTC就是诊断故障码中所谓的五位故障码,FTB代表故障具体的原因。

2024-04-23 16:52:06 258

原创 UDS诊断故障码DTC

这五位故障码,具体每一位代表什么等规定。参照上下图,橙色部分00代表0即ISO/SAE控制,如果橙色部分为01代表1即制造商自定义,10代表2即ISO/SAE控制,11代表3即ISO/SAE控制。参照上下图,紫色部分代表故障所属的子系统,紫色部分的4位数字组成一个16进制数字,该16进制的值代表不同故障所属的子系统。参照上下图,浅蓝色和浅绿色部分组合起来形成两个16进制数字,比如17、22,它们代表发生故障的具体部件及类型。参照上下图,绿色部分00代表P,如果绿色部分是01代表C,10代表B,11代表U。

2024-04-23 16:50:27 586

原创 UDS的0x27服务

诊断仪(Tester)需要先向ECU发送请求种子,种子就是ECU通过自己内部的随机算法,生成的一个随机的数值,常见的有两个字节,四个字节。然后ECU就会把生成的这个种子作为本次诊断的响应,返回种子给诊断仪(Tester)。诊断仪也会用同样的安全算法,根据ECU返回的种子去计算一个钥匙(key)。对不不同,则返回否定响应。第二:子功能是成对出现的,01/02, 03/04 ,05/06,奇数01 03 05都代表发送请求一个种子,偶数 02 04 06都代表发送一个key让ECU去验证。

2024-04-23 16:47:27 317

原创 Uds的0x10服务

红色01 F4代表扩展超时时间,英文叫做P2*ServerMax,01 F4是16进制,转换成十进制就是500,协议上规定扩展超时时间转换成十进制的数还需要乘以10才是它实际的扩展超时时间,也就是500 * 10 = 5000毫秒。如果长时间在非默认会话下,没有用诊断仪跟ECU通讯,那么ECU会调回或者是返回到默认会话下。如果在默认会话下,想进入扩展会话,直接进入即可,想进入编程会话必须先进入扩展会话,才可以进入编程会话。0x10为诊断会话控制,该服务下有三种子功能,分别为默认会话,扩展会话,编程会话。

2024-04-23 16:45:48 242

原创 UDS报文传输的四种帧

是在CAN总线传输的情况下, 具体规定如何传输UDS诊断的请求和响应报文的。四种帧就是定义在这个标准中。流控帧(FC)负责根据接收方和发送方的实际需要,来实时的调节下次发送连续帧(CF)时如何发送。一个UDS的请求或者响应的发送方,发出一个单帧(SF)即可,接收方接收到就可以了。因为单帧的时候,这一帧CAN报文是能够装得下所有的uds报文。一帧CAN报文中有8个字节,流控帧的控制信息一定是3个字节,还有5个字节用00填充,称为“补白”。如下图所示,是一个接收方发送给发送方的流控帧(FC)示例。

2024-04-23 16:44:11 990 2

原创 Uds诊断协议的请求和响应的寻址

通过功能寻址的方式发送请求报文的时候,总线上的所有ECU都需要回复响应的报文。基于CAN总线的诊断通信来说,由于每个ECU可以根据事先设定只处理总线上,指定CAN报文ID的这个报文,因此UDS协议中的诊断请求响应的地址信息,本质上就是CAN报文的ID。Uds诊断通信的报文是通过CAN协议传输的,UDS诊断的报文就是CAN报文,请求和响应的地址信息就是CAN报文的ID。在车企中其实会为总线上的每个ECU都设定一个唯一的UDS诊断请求的CAN报文ID,以及一个唯一的UDS诊断响应的CAN报文ID。

2024-04-22 18:39:16 742

原创 Uds诊断协议请求与响应

否定响应:该响应报文一共三个字节。首字节为7F,第二个字节为请求的SID,第三个字节为否定响应吗NRC(表示响应失败的原因)请求报文格式:请求报文的首字节必须是SID,第二个和第三个字节代表该SID下的某个子服务的ID。响应:ECU处理完成,就会返回一个处理的结果给回诊断仪。这个响应也是报文形式的。肯定响应:首字节为请求的SID+40。请求:报文通过诊断仪发送给ECU。响应报文格式:肯定响应、否定响应。

2024-04-22 18:37:27 322

原创 Uds诊断简介

uds规定在ISO14229-1,一共有26个服务。每个服务都有一个唯一的ID,也称为SID,是一个两位的16进制数,也就是一个字节。这26个服务分为六大类。分别为诊断和通信管理功能单元、故障码传输功能单元、数据传输类、输入输出控制功能单元、例行程序功能单元、上传和下载功能单元。

2024-04-22 17:07:54 226

原创 CANdb++数据库

打开candb++软件,点击文件,选择创建数据库,并选择数据库模版,本次测试选择CanTemplate.dbc模版,选择保存在本机中的位置,并自定义命名该数据库文件。根据矩阵表中信号量的名称,备注,字节等信息,在创建信号量时要确保一一对应。此时可以双击EMS_0x196报文,弹出设置页面,选择layout界面,就可以查看这两个信号在报文中的实际分布。双击EMS_0x196报文下的信号,弹出设置页面,在Startbit处设置信号起始位。根据信号矩阵表创建报文ID为0x196的报文信息。

2024-04-22 15:37:32 413 1

原创 CAPL编程基础

两个事件sysvar,sysvar_update都可以实时更新。on stopMeasurement{} //工程停止。只有后面的事件signal_update可以实时更新数据。4.int myFunction{} //自定义函数。2.variables{} //全局变量声明。3. on preStart{} //初始化。on preStop{} //工程预停止。on start{} //工程运行。1.includes{} //头文件。2.报文事件 报文变量。

2024-04-22 11:10:15 318

原创 CANoe创建一个完整的工程

创建一个文件夹,文件夹为工程名字LightControll(自定义)。在该工程文件夹目录下继续创建3个文件夹,分别为CANdb,Panels,Nodes。在首页,点击file,选择new,找到CAN500kBaud 1ch(代表波特率),选择右边的Create Configuration。步骤2创建工程后不着急操作,先搭建好工程层级和目录文件。包含一条报文SwitchState和一个信号sSwitch4.1打开CANdb++ Editor,创建数据库。

2024-04-19 10:16:03 738

canoe使用入门教程

canoe工具的快速上手,对canoe各个功能进行了简洁的描述和说明

2024-07-03

javaweb课程设计《卖淘乐》后台管理系统数据库

javaweb课程设计《卖淘乐》后台管理系统数据库

2022-05-31

Javaweb《卖淘乐》后台管理系统课程设计.zip

Javaweb课程设计,使用到JDBC(Druid,commons-dbutils),Servlet,JQuery,Ajax,MySql等技术;采用MySQL5.0.12作为数据库,IDEA2019作为开发工具TomCat 9.0作为服务器,采用MVC三层框架来进行开发。现在的MVC开发模式发展的已经很成熟,资料也很丰富,即使遇到问题也有很多资料,所以说从在技术上是可行的。随着计算机技术的飞速发展,计算机在信息管理中应用的普及,利用计算机实现信息的管理,势在必行。 当前的网络商城正在由C/S结构向B/S结构转移,但是由于安全性等方面的因素,C/S结构的信息系统仍然占据信息管理系统的主流。 逐渐地随着计算机在社会各个领域的广泛应用,大量繁杂的工作得以快递、高效的完成,使人们从繁重的劳动中解脱出来,提高了工作效率和工作质量。在计算机应用的众多领域中,管理信息系统占据着十分重要的地位,它使用系统的观点,以计算机科学和现代通信技术为基础,对某一组织或机构中有关管理的数据进行收集、处理,并输出有用信息,使大量的手工劳动自动完成,避免了因人工操作带来的各种错误。

2022-05-28

免费资源JAVAweb,Java语句实现简单增删改查

内有SQLserver数据库,用Java语句链接数据库,Java语句创建窗体,实现简单的增删改查

2021-11-20

空空如也

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

TA关注的人

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