自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 crc32校验算法

//=================================================================================================//算法一#define TABLE_SIZE 256//#define CRC_POLY 0x04C11DB7 #define CRC_POLY 0xEDB88320uint32_t CRC_TABLE[TABLE_SIZE] = { 0 };void init_CRC32_table(vo.

2020-10-30 17:32:09 2362 1

转载 在STM32F中使用UCOSII如何支持低功耗模式

在不在系统的裸奔的软件中,使用RTC+STOP模式很容易实现低功耗模式,但是在UCOS之类的操作系统,实现这一模式就有点麻烦,最大的问题是任务切换是无法控制的,经常出现唤醒之后程序跑飞的情况。首先,要把休眠的代码段放在低优先级任务中,不一定是系统自带的空闲任务,也可以是用户自定义的最低优先级的任务。其次,在休眠代码的前后加上两个指令://================================================================================

2020-10-30 11:36:19 617

转载 LIN总线开发:智能雨量传感器

大众速腾 自动雨刮 雨水感应模块长城系列 自动雨刮 雨水感应模块---------------------------------------------------------------------------------雨水感应智能雨刮是多数高配车的标配,一般安装在前挡风玻璃靠近黑色颗粒膜,能够识别雨滴、环境光线,采用3线通信:VBAT,GND,LIN。不同的车有不同的外形,大部分都是是带柄圆形,但是也有些例外,是圆角长方形。不管什么外形的雨水传感器,其工作原理都是一样的:..

2020-10-30 11:35:31 1779 1

转载 LIN总线:汽车氛围灯控制

高档车比如奔驰车,具有功能强大的氛围灯,采用单芯片聚合了MCU(据说是51内核)、LED控制器、LIN收发器、电源管理等硬件,整体就只有指甲盖那么大,应该说是集成度非常高。背面是PWM可调式三色LED,具备三基色(蓝绿红),整体可通过LIN总线数据控制发出七彩氛围光。此类氛围灯外观小巧结构简单,采用三线制(实际是4根线:VBAT,GND,LIN入,LIN出--因为多LIN节点并联),是目前比较热门的汽车单品。但是要抓取这些LIN数据并不容易,因为LIN总线协议的特殊性:单线的LIN是主从模式;全

2020-10-30 11:34:30 5499 3

转载 OBD落锁器工作原理 CAN总线控制

本文所说的OBD及OBDII都是指OBDII,后同。目前有很多种OBD类产品,大部分都是通过CAN线来读取一些车身数据然后提供给手机端显示,也可以通过CAN线来控制车辆的开锁、关锁、升窗、双闪灯、天窗等,以实现各种不同的功能,如:OBD落锁器、OBD升窗器、OBD防盗器等等。这里就来介绍下怎么实现OBD落锁器这个功能的,当然其他升窗器、防盗器也都是这同样的思路。在一般人看来,OBD落锁器就是通过OBD来解锁行车电脑的隐藏功能,打开车辆本身的自带的功能;而在专业开发人员看来,这里面水很深,不是..

2020-10-30 11:29:34 2838 1

转载 crc16几种标准校验算法及c语言代码

一、CRC16校验码的使用  现选择最常用的CRC-16校验,说明它的使用方法。  根据Modbus协议,常规485通讯的信息发送形式如下:  地址 功能码 数据信息 校验码  1byte 1byte nbyte 2byte  CRC校验是前面几段数据内容的校验值,为一个16位数据,发送时,低8位在前,高8为最后。  例如:信息字段代码为: 1011001,校验字段为:1010。  发送方:发出的传输字段为: 1 0 1 1 0 0 1 1 0 10  信息字段 校验字...

2020-10-28 11:06:34 2049

转载 面向初学者的XCP——XCP的趋势和应用实例

原文链接:https://blog.csdn.net/nibiewuxuanze/article/details/78882760面向初学者的XCP测量/校准协议XCP入门第三章、XCP的趋势和应用实例接下来,从使用XCP进行测量/校准的系统构成开始,依次讲解趋势和应用实例。测量/校准的系统构成如前面所述,XCP是主结点侧的测量/校准工具和从结点侧的ECU...

2019-04-13 10:06:44 1321

转载 面向初学者的XCP——XCP协议的通信的构造和功能

原文链接:https://blog.csdn.net/nibiewuxuanze/article/details/78856714面向初学者的XCP测量/校准协议XCP入门第二章、XCP协议的通信的构造和功能接下来,将会说明“通用校准协议(XCP:Universal Calibration Protocol)”协议具体是如何通信的,以及XCP的功能和协议内容。...

2019-04-13 10:05:39 3563

转载 面向初学者的XCP——测量/校准协议是什么?

原文链接:https://blog.csdn.net/nibiewuxuanze/article/details/78848628面向初学者的XCP测量/校准协议XCP入门第一章、测量/校准协议是什么?下面将说明,首先使用在汽车“控制”相关的产品开发中,测量/校准阶段的通用协议“XCP”。像是汽车或一般工业设备的与“控制”相关的产品开发中,存在着被称为“校准”或“...

2019-04-13 10:04:22 1475

转载 在测量和校准应用的焦点的XCP

原文链接:https://blog.csdn.net/nibiewuxuanze/article/details/78747288在测量和校准应用的焦点的XCP越来越多的针对安全和便利的电子功能正在寻找进入现代汽车的途径。然而,由于ECU的数量正在受到控制,这意味着必须通过提高单个设备的复杂性来弥补。XCP通信协议为这些分布式系统的开发过程的合理化做出了重要贡献,在运行时测量和校...

2019-04-13 10:02:48 580

转载 CAN FD安全通信

原文链接:https://blog.csdn.net/nibiewuxuanze/article/details/78999216针对车辆网络中的加密数据传输还没有进行标准化。Vector已经构想了一个在CAN上的安全通信的实现,其保护目标是身份认证和防止重放攻击。在当今的车载网络中,大部分的数据传输是在没有任何特殊安全措施的情况下进行的。因此,如果您可以直接访问车辆...

2019-04-13 10:00:16 1252

转载 C/C++用strncpy()与strstr()分割与匹配查找字符串

一、strncpy()char * strncpy ( char * destination, const char * source, size_t num );strncpy() 在 <string.h>头文件中(C++中为<cstring>),拷贝原字符串S中长度为num的部分至目标字符串D中。#include <stdio.h>#inc...

2018-09-20 15:52:03 576

原创 __align(n)、#pragma pack(n)和__attribute__((aligned(m)))的区别

__align :关键字指示编译器在 n 字节边界上对齐变量。是一个存储类修饰符。它不影响函数的类型。__align(n)由于 __align 是存储类修饰符,因此不能将其用于:          类型,包括 typedef 和结构定义函数参数。          只能进行过对齐。也就是说,可以将两个字节的对象按 4 个字节对齐,而不能将 4 个字节的对象按两个字节对齐。pragma pac...

2018-09-11 16:01:01 2735

转载 理解频率与带宽

[导读]超五类信道100MHz带宽能够支持100Mbps、155Mbps及1000Mbps数据速率,这一点经常会引起我们很大的疑问。在此我们来说明一下带宽与数据速率之间的关系。首先了解通信信道传送信息能力背后的一些原理以及数据编码技术。由于此处将会谈及一些理论与数学计算,因此我们将尽可能地避免复杂的数学问题,但也不可能完全忽略。  超五类信道100MHz带宽能够支持100Mbps、155Mbp...

2018-08-02 17:59:16 63140 2

转载 Tbox在整车CAN网络的位置与作用

我们讲到了智能车载娱乐系统的5个基本特征:基本来说, 当今的智能车机基本有以下几个特点:基于智能操作系统: Android, Yunos, Linux等基本都是虚拟按键, 较少用实体按键具备外网连接功能, 即搭载了Tbox盒子有配套的车联网手机App, 具有手机钥匙及远程车控等功能具备控制: 空调, 数字液晶仪表, 360度环视摄像头, 其他车身设备(天窗, 车窗, 大灯)的应用程序.以上涉及的第...

2018-06-04 15:52:16 33942 2

转载 CAN网关及CAN信号转发机制

CAN网关 及 CAN信号转发机制CAN网关上节课, 我们讲到了CAN网关,其实准确的说不能叫CAN网关, 应该叫网关或者汽车网关, 因为网关不仅处理CAN网络, 还处理LIN网络.主要是为了配合本系列教程及区分于以太网网关, 所以才取名叫CAN网关.CAN网关的外形结构大概外形如上, 偶有差异, 大小如香烟烟盒, 有60,70多个PIN脚组成.每个接线pin脚都有严格的定义, 严格定义了要接ca...

2018-06-04 15:50:34 17962 2

转载 整车CAN网络基本结构

在了解can网络之前, 先了解1个问题:   什么是智能硬件与ECU ?       何为智能硬件, 就是包含智能控制单元的硬件,  比如发动机, 发动机上有一块儿专门负责控制发动机进气量, 喷油量, 排气量的控制单元, 这块单元相当于发动机的大脑. 他具有信号发送, 信号接收, 参数存储等基本功能, 这个控制单元就是ECU.         ECU(Electronic ControlUnit)...

2018-06-04 15:49:10 25590 5

原创 Bootloader升级方式一————擦、写flash在RAM中运行

    在汽车ECU软件运行中,软件代码运行安全性是第一,在代码中尽可能的不要固化有flash_erase、flash_write操作存在,主要是防止当出现异常情况时,程序跑飞,误调用erase、write对flash操作,使得原软件受到破坏,以致ECU不能正常工作。Bootloader也称为启动引导加载程序,这段程序是硬件设备在上电复位之后执行的第一段软件代码。方式一、为了实现在线更新功能,Bo...

2018-04-12 15:34:02 24356 15

转载 STM32 IAP 在线升级详解

(扩展-IAP主要用于产品出厂后应用程序的更新作用,考虑到出厂时要先烧写IAP  再烧写APP应用程序要烧写2次增加工人劳动力基础上写了“STM32 IAP+APP ==>双剑合一”链接稍后发)一、在进入主题之前我们先了解一些必要的基础知识----stm32系列芯片的种类和型号:startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F

2017-09-11 10:39:42 730

原创 Lwip学习笔记一、IP的重设

1、初始化方式void lwip_init_task(void){ struct ip_addr ipaddr, netmask, gw; lwip_init(); IP4_ADDR(&gw, 192,168,1,1); IP4_ADDR(&ipaddr, 192,168,1,37); IP4_ADDR(&netmask, 255,255,255,0); neti

2017-08-14 21:13:19 5616 1

转载 KLR、KL15、KL50、KL30、KL31

解释如下:不得不说德国的汽车制造影响了整个世界的汽车工业,虽然只是一个符号KL is the abbreviation for 'klemme' which is the German term for connector / connection.KL15 is ignition switch position #2 (on)KL30 is battery positiv

2016-08-31 15:57:31 47427 1

转载 C#中的委托和事件(续)

引言如果你看过了 C#中的委托和事件 一文,我想你对委托和事件已经有了一个基本的认识。但那些远不是委托和事件的全部内容,还有很多的地方没有涉及。本文将讨论委托和事件一些更为细节的问题,包括一些大家常问到的问题,以及事件访问器、异常处理、超时处理和异步方法调用等内容。为什么要使用事件而不是委托变量?在 C#中的委托和事件 中,我提出了两个为什么在类型中使用事件向外部提供方法注

2016-04-02 11:57:56 438

转载 C# 中的委托和事件

引言委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事

2016-04-02 11:34:52 370

转载 Java关键字final、static使用总结

转载http://lavasoft.blog.51cto.com/62575/18771一、final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。        final类不能被继承,没有子类,final类中的方法默认是fina

2015-10-09 17:55:03 355

原创 通过I/O方式模拟串口接收

通过I/O模拟串口方式是通过定时器 定时扫描I/O口电平,void GPCDE_IRQHandler(void)  //下降沿中断,打开定时计数{if(GPIOD->ISRC & 0x0040) {TIMER0->TCSR.CEN = 1;}}void TMR0_IRQHandler(void){volatile uchar vmCR

2015-06-25 15:38:21 5119

转载 CAN比较

常用的CAN总线分为:单线CAN、低速容错CAN、高速CAN。在讨论它们的区别之前先明确以下几点:1、讨论它们是A类、B类还是C类总线并没有多大意义,因为高速CAN同样可以使用低速CAN的波特率(单线CAN的波特率一般为33.3KHz),而且在实际应用中也不会有问题。但低速CAN使用高速CAN的波特率就会出现问题,这个问题不是纯粹由波特率引起的,而是由收发器引起的,因为在电平转换效率方面,

2015-06-02 16:53:44 4355

转载 STM32 IAP 在线升级

STM32很强大的一个功能是支持IAP在线升级,IAP(In-Application Programming),即在“应用程序中编程 ",  通俗的来将是程序自己可以往程序存储器里写数据或修改程序。有了IAP功能, 即使在产品发布之后也可以方便的通过预留的通信端口(如串口、USB、IIC等)对产品中的程序固件进行更新升级,而无需通过传统的JTAG方式做烧录更新。IAP功能的固件一般包含两个部分:B

2015-03-20 11:49:14 952

原创 JTAG接口到SWD接口连接

2015-03-18 14:41:13 1195

原创 IIC通信

开始结束写操作ACK写数据完整的写数据读多个数据写多个数据读多个数据

2015-01-05 15:36:35 525

转载 s3c2440 地址分配硬件连接及其启动原理分析

一.CPU 地址分配:1.   s3c2440A 的存储器控制器有以下特性:l  大小端(通过软件选择)l  地址空间:每个bank有128M 的字节(总共1G字节/8个banks)l  可编程的访问位宽,bank0(16/32 位),其他bank(8/16/32 位)l  共8个存储器banksl  6 个是ROM,SRAM 等类型存储器bank 

2014-11-14 14:06:53 536

原创 u-boot1.1.6下mkconfig解析

假设现在我们在u-1.1.6-mini2440下执行make mini2440_config

2014-11-12 17:59:35 375

原创 patch 补丁文件制作

1、网上下载u-boot-1.1.6.tar.bz2;2、解压到跟

2014-11-08 15:46:52 655

原创 Ubuntu 下NFS按在配置

以前就听说过nfs服务,但是一直没有用,在学习制作根文件系统的时候,才算是真正用上它了,我感觉它还不错,通过它“挂载”制作好的根文件系统。它在嵌入式中的角色就用下面的一张图说明吧!

2014-10-28 15:18:36 367

原创 LINUX启动分析

2014-10-27 18:19:58 293

转载 arm-linux-gcc:command not found 解析

问题:

2014-10-27 18:02:14 776

转载 在linux上安装交叉编译器

什么是交叉编译:在计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,如在keil软件编译,在单片机上运行。这就是交叉编译。

2014-10-24 09:43:51 801

转载 sudo apt-get和 dpkg命令大全

一、APT的使用(Ubuntu Linux软件包管理工具一)apt-cache search # ------(package 搜索包)apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等)sudo apt-get install # ------(package 安装包)sudo apt-get install # -----(pa

2014-10-23 20:06:20 473

原创 ubuntu linux内核编译

一)准备工作  在编译linux内核时首先要安装一些tools,如:gcc,make,make-kpkg等; 安装软件包有:build-essential,kernel-package,qt库等 1)build-essential :里面有gcc,make等; 2)kernel-package:里面有make-kpkg等; 3)qt库:主要是为了用make xconfig图形界

2014-10-23 17:03:02 559

原创 解决登陆 cuteFTP 的问题

1:ubuntu里面:sudo apt-get install vsftpd2:ubuntu里面: adduser +  name3:ubuntu里面:设置name对应的用户的密码4:cutefTP里面,文件--->站点管理器--->站点标签,用户名,密码设置好5:在ubuntu里面,执行service  vsftpd start,启动这项服务6:在cute

2014-10-23 12:10:50 1749

原创 如何使用SecureCRT连接ubuntu

用secureCRT连接Ubuntu是出现远程系统拒绝访问。。经过一翻研究才知道Ubuntu上没有ssh..一下为连接过程。1. 首先要明白什么是ssh?可以把ssh看做是telnet的加强版,telnet的密码和信息都是不加密的,而ssh则加密。2. 开启ubuntu上的ssh功能先安装,安装后就自动开启了.sudo apt-get install openssh

2014-10-23 12:02:08 665

OsekNm示例代码

基于osek的直接网络管理,可参考并应用于实际项目开发中

2018-04-20

J1939程序带UCOS II

J1939协议开发,带有UCOS II,为学习开发者提供参考

2012-09-27

CANopen代码

canopen 开发示例代码 有c51和PIC18F

2012-09-07

空空如也

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

TA关注的人

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