- 博客(35)
- 收藏
- 关注
原创 基于Lin协议的UDS调度表
需要UDS请求时,等待当前normal communication schedule table执行完成,开始执行diagnostic master request schedule table,执行完后,返回normal communication schedule table从头开始调度,此后在normal communication schedule table调度完成后,再开始执行diagnostic slave request schedule table。参考ISO 17987-2.
2023-08-17 16:13:03
1243
原创 S32K进入hardfault问题排查方法
查看此地址处的数据,观察到某些数据表示的地址处于flash中,通过map文件查看此地址落在哪些函数中来判断出问题的位置。
2023-04-10 19:05:57
946
原创 gnu make如何找默认target
make只会执行第一个出现的规则,规则中有多个目标时,只执行第一个目标。有两个例外:1.以句号开头的target会被忽略2.模板规则会被忽略如下,前两个规则不会被认为是默认规则:BINODIR=a.c: $(BINODIR).c echo "111111111111"%.o: $(BINODIR).c echo "22222222222"a.out:a.c gcc a.c -o a.out至于模板规则可以理解成就是target中带%的:...
2020-09-10 15:06:26
720
1
原创 win10 作为tcp服务器时局域网内其他设备无法连接的问题
需要在防火墙添加新的入站规则:win+x --> 设置 --> 更新和安全 --> windows安全中心 --> 防火墙和网络保护 --> 高级设置右键入站规则 --> 新建规则 按照自己的需要进行选择。另外遇到过发送数据接收不到的一种情况是连接路由器的设备太多,所以遇到数据接收不到的情况时,最好建立手机热点尝试。...
2020-09-03 12:45:20
2767
原创 WAP PSK加密中的PSK密码并不是wifi密码
在IEEE802.11i中有定义,PSK密码是256位,也就是64位的16进制数。对于用户很难输入,所以用了一层计算关系,而且定义了用户输入的密码长度需要在8-63之间,如下:
2020-08-13 09:28:54
4203
原创 关于C的回调函数
#include "stdio.h"typedef void (*pfun)(int a);struct t{ int a; int b;};void bfun(struct t a, int c){ printf("===bfun %d %d %d\n", a.a, a.b, c);}void cfun(pfun f, int a){ f(a);}void main(){ cfun(bfun, 1);}运行结果如下:tes.
2020-07-10 15:44:46
375
1
原创 关于float
float可以表示成:Sign(1位):用来表示浮点数是正数还是负数,0表示正数,1表示负数。Exponentc(8位):指数部分。即上文提到数字c,但是这里不是直接存储c,为了同时表示正负指数以及他们的大小顺序,这里实际存储的是c+127。Mantissab(23位):尾数部分。也就是上文中提到的数字b。举个例子就明白了:所以, c = 3 + 127二进制存储:0|1000 0010|10000100000000000000000浮点数的表示范围是:[-3.4028...
2020-05-25 14:11:16
709
原创 bss段等代码字段以及ram空间使用情况
bss是英文Block Started by Symbol的简称,通常是指用来存放程序中未初始化的全局变量的一块内存区域,在程序载入时由内核清0。BSS段属于静态内存分配。它的初始值也是由用户自己定义的连接定位文件所确定,用户应该将它定义在可读写的RAM区内,源程序中使用malloc分配的内存就是这一块,它不是根据data大小确定,主要由程序中同时分配内存最大值所确定,不过如果超出了范围,也就是分配失败,可以等空间释放之后再分配。text段是程序代码段,在AT91库中是表示程序段的大小,它是由编译器在编译连
2020-05-11 11:16:01
1972
原创 c语言实现字符串与十六进制数的互转
#include <ctype.h>#include <stdio.h>#include <stdint.h>void strToHex(uint8_t *pbDest, const char *pbSrc, int nLen){ uint8_t s1,s2; int i = 0; if(nLen % 2){ s1 = touppe...
2020-04-28 09:14:08
788
原创 使用eclipse建立本地git仓库
这个建仓库的方法肯定不是标准方法,但是是个可以使用的方法。1. 先在你要建立的仓库的路径下建立本地仓库文件夹,比如:E:\git_repository\test2. 在eclipse中以此文件夹为根目录导入工程new->project->选择(General->Project)->Next->输入Project name,去掉Use default loc...
2020-04-03 10:54:06
826
原创 android studio配置
使用的是android studio 3.5.2Android SDK建议在AS内部下载,单独下载的Android SDK Manager搜索到的SDK只到4.4。使用的是第一行代码中的第一个例程。首先使用gradle同步,不然make project配置时没有module可选,File->sync project with gradle files出现如下错误:Err...
2020-03-26 15:41:46
517
原创 elf文件
elf 文件 主要用于linux平台。windows下是PE/COFF格式。ELF文件组成部分:文件头、段表(section)、程序头。几个重要的段:.text(代码)段 、.data(数据)段、.bss段 。.text:保存程序代码,权限为只读.data:保存已初始化的全局变量和局部静态变量,可读可写.bss:保存未初始化的全局变量和局部静态变量。初始化为...
2020-03-26 15:08:23
378
原创 调试tiny4412遇到的问题
开始我是想把uboot,kernel驱动移植,ramdisk,文件系统一步全部搞通的,发现难度太大。1.ubootuboot的编译,原版的uboot是不行的,我在晚上提前就看到了这个问题,所以就没有尝试,直接下载修改版的,据说是因为ddr使用的芯片改了。另外编译要注意,用最新版的gnueabihf编译工具报错,要用友善之臂提供的使用友善之臂提供的工具烧录是烧不进去的,估计这个uboot...
2020-01-09 18:47:19
408
原创 makefile的调试方法
查看makefile时的调试方法:https://blog.youkuaiyun.com/piaopiaopiaopiaopiao/article/details/843075021.$(warning string)函数可以放在makefile中的任何地方,执行到该函数时,会将string输出eg: $(warning ============================PATH is $...
2020-01-07 14:15:20
220
原创 写函数的三步走策略
前提先想明白函数要实现的功能,尽量实现成通用灵活的函数,尽可能不受需求约束。1.根据函数要调的接口,确定需要的变量,定义变量2.计算变量的值3.调接口...
2019-12-26 14:00:23
237
原创 烧写uboot,kernel
没有uboot,烧写uboot:1.从外部设备引导启动,通过串口或USB烧写(DNW)2.使用jlink烧写(open jtag)3.fuse制作SD卡启动,启动后进入uboot命令行(使用tiny4412开发板,此方法只需要连接串口即可):先分区,格式化mmc open 0loady 0x40000000 向0x40000000处写文件,使用SecureCRT...
2019-12-20 09:17:39
380
原创 CRC校验算法
发现网上好多人把CRC8的校验算法搞错了,尤其是查表法,把多项式和表的对应关系搞错了,虽然对校验功能没有影响,但是明显是没有理解CRC8的算法过程。当要校验字节为1时,table[1]肯定应该就是校验多项式,网上好多把下面的表对应到x^8+x^5+x^4+x^0的,其实应该是x8+x6+x4+x3+x2+x1static const unsigned int crc8Table[256] ...
2019-12-11 17:15:29
772
1
原创 编译linux uboot,kernel
都是三个步骤:1.清过去的编译配置信息make distclean2.生成配置信息 make (ARCH=arm) xxx_defconfig,需要fine tuning时使用make menuconfig,注意默认是x86架构,使用arm时加上 ARCH=arm3.make,指定编译工具时加上CROSS_COMPILE=备注:1.可能需要root权限2.kernel生成...
2019-12-05 14:26:14
277
原创 Linux系统的启动过程
1.直接从外部Nor Flash启动:上电后,CPU直接从NorFlash读取程序,配合内部的SRAM,把Uboot拷贝到DDR中执行,DDR再从emmc中拷贝kernel执行。2.芯片内部带有Bootrom,上电后,bootrom从拨码开关指定的位置拷贝4kB的spl到SRAM中执行,SRAM中执行spl把Uboot拷贝到DDR中执行,DDR再从emmc中拷贝kernel执行。...
2019-12-05 14:22:04
140
原创 关于linux环境下交叉编译GCC_爱联模组Liteos&Hilink二次开发工程的问题
折腾了一天。把工程文件放到当前用户目录下编译即可,之前放在了共享目录下了。又试了下在根目录下也可以。
2019-10-09 13:58:45
708
原创 ubuntu18.4 64位系统运行32位可执行文件依赖库安装
下载地址链接:https://pkgs.org/需安装lib32ncurses,lib32z1。lib32ncurses(依赖lib32tinfo5(依赖libc6-i386),libc6-i386(依赖libc6(依赖libgcc1(依赖gcc-8-base,libc6))))lib32z1(依赖libc6-i386)安装命令:dpkg -i 安装包名字以上安装包都在页面中选...
2019-09-19 09:03:00
2728
原创 你所不知道或不熟悉的C语言知识
##是把两个宏参数连接的运算符,#define NAME(y) name_y 则宏NAME(1)展开时仍为name_y#define NAME(y) name_##y 则宏NAME(1)展开为name_1=========================================volatile指定的关键字可能被系统、硬件、进程/线程改变,强制编译器每次从内存中取得该变量的值...
2019-08-22 19:42:01
420
原创 YOLO算法概述与细节
R-CNN系列算法是two-stage(两步走算法),yolo和ssd属于one-stage算法。yolo v1:把图片分成若干个小区域,每个小区域负责检测是否有物体的中心点落在其中,每个小区域可预测多个box,但是只能检测一个物体。算法首先把输入图像划分成S*S的格子,然后对每个格子都预测B个bounding boxes,每个bounding box都包含5个预测值:x,y,w,h和co...
2019-08-19 16:13:25
1756
原创 CNN经典网络模型概述
AlexNet:五层卷积,每层卷积层后面都有relu激活函数,第一二层后通过了LRN层和池化层,三层全连接网络,最终的输出层是1000通道的softmax。文章中说该模型有5层卷积,去掉任意一层都会使结果不好。在训练模型过程中,覆盖的池化层更不容易过拟合。前两层全连接层使用了dropout。VGGNet:有VGG11,13,16,19,每个VGG网络都有3个FC层,5个池化层,...
2019-08-16 16:14:32
2429
原创 关于RCNN系列框架中一些细节的理解
Faster rcnn的整体框架:上图1是faster rcnn的整体框架,图2是anchor的选取1.在RPN网络中对每个特征点选取9种anchor,其中anchor的位置对应的是在原图上的位置,而不是在特征图上的位置,对bbox做回归修正包围也是使用原图中的GT区域做loss。2.在RPN层之后的ROI POOLing的输入是根据RPN中的anchor通过原图找到的对应的特...
2019-08-10 11:13:03
271
原创 关于子元素选择器
.aaa strong,span {color:red;}This is very very important.This is really very important.上代码中红色部分表示的是aaa类中的strong元素和body中的span元素,而不仅仅是aaa中的span元素。
2017-02-18 14:21:25
293
原创 div居中代码 DIV水平居中显示CSS代码
主要css代码有两个,一个为text-align:center(内容居中),另外一个为margin:0 auto;其两个样式需要配合使用才能实现div盒子的居中显示排版。实际使用发现只设置margin:0 auto;即可。
2017-02-17 12:35:39
738
原创 js的数组可以使用字符串作为下标,以及for...in
var mycars = new Array()mycars["aa"] = ["宝马",12];mycars[1] = "奔驰"mycars[2] = "宾利"for (x in mycars){document.write(mycars[x] + "");document.write(x + "");}此段代码打印出的结果如下:可
2017-02-16 16:28:35
5613
原创 首字下沉的设置方法
首字下沉的代码.art3_left .p3:first-letter{ float:left; font-size:70px; color: #f5e327; font-family:微软雅黑; margin: 25px 5px 25px 0px;}关键在于float:left;和调整margin。
2017-02-14 15:30:23
1262
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人