自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Your Dream Started

in short measures,life will perfect be !!

  • 博客(71)
  • 资源 (4)
  • 收藏
  • 关注

原创 Linux编辑器vim或vi文件模板脚本

vimrc,vim模板

2022-11-27 11:08:20 508 1

原创 逆变器和Modbus浅理解

最近有兄弟去了能源部门,刚好跟着学了一些相关的知识,撇在这记录一下。当然理解的可能不是很正确,尤其Modbus协议压根没有写过,轻喷~~

2021-11-21 22:41:35 1155

原创 牛客网C语言考试输入输出问题

如果是用C语言考试,且HW的需要自己写输入输出的,请注意。以下绝对不能用void main() { return ;}图省事不写返回值,但是会导致网站一直报错,输出无法正常输出,fflush(stdout)刷新控制台输出也搞不定,只能在printf最后加\n才能解决。用下面的没有问题int main { return 0;}main函数的返回值处理有问题。牛客网大概率用的是模拟linux的VT100类终端,才会导致这种莫名其妙的错误,千...

2021-04-03 21:51:12 1438

原创 Linux平台下安全编译

1.操作系统的软件堆栈、内存映射等区域配置,mmap、vdso页、共享库等,实现方式:修改操作系统文件:/proc/sys/kernel/randomize_va_space,内容改为2。原因:ASLR针对缓冲区溢出攻击,此处将堆栈、共享库映射等内存地址随机化,增加难度。注意:randomize_va_space=1时表明栈、数据段、VDSO随机化,为2时表明堆栈、数据段、VDSO会随机化 作用范围:Linux下的软件(包括用户、系统服务进程)2.软件堆栈保护 实现方式:编译时给gcc传参:

2021-04-03 21:12:39 1991

原创 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)

调试内核时候报错如下:明眼一看就是文件系统里边写了一些不为人知的数据,导致人Linux3.4版本的不认识了,这就尴尬了,工具吧版本高了也不是啥好事。得对应,适用了才好。整个低版本的虚拟机报错不要紧,慢慢分析,别急,任何错误都来自代码。...

2020-12-26 23:28:53 1075

原创 MinGW gcc下载链接及sjlj、dwarf、seh异同以及gcc安装

前言:MinGW gcc是Windows版本的gcc编译器,下载后,在Windows下增加对应的环境变量就可以在命令行愉快地使用gcc编译出a.exe,一如Linux下的a.out,可以直接执行,并在命令行输出结果,不再饱受Windows的IDE折磨。正文:一、MinGW软件下载地址:32位下载链接:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/

2020-12-23 23:35:36 12627 4

原创 移植RT-Thread 3.1.3到STM32F2上

1.预备工作: I、首先准备源代码: RT-Thread:https://www.rt-thread.org/page/download.html这个网站下载 其次:搭建一个STM32的编译环境,这里使用的是Keil MDK 5.2.9的IDE。2.开始移植 将RT-Thread的源码和HAL代码放在工程目录下,...

2020-12-10 00:05:21 478

原创 Error: L6218E: Undefined symbol assert_param (referred from misc.o).

Keil MDK 5编译工程时遇到以下问题:不懂就搜,CSDN上也搜到很多的类似问题,需要定义USE_STDPERIPH_DRIVER,STM32F10X_HD。意思需要引入传递给C代码的宏定义,开启某些功能,本着从代码中找到问题的原则,先在工程中搜索一把:结果~~~~~函数实现的原型找不到,emmm~~不过在Keil的options for target,也就是编译选项之类的操作界面,如下一顿操作就能去掉assert_param找不到的错误。这就完了吗?我觉

2020-12-06 20:51:29 3814 3

原创 用Solidworks建立元件的3D模型

一、环境准备:OS:Windows-10Software:Solidworks-2016(版本不限制)、Google Chrome浏览器模型建立对象:立创EDA元件3D模型建立二、绘制步骤2.1、Solidworks绘制3D模型根据实际的尺寸(datasheet有描述),绘制相应的模型,此处演示如下:模型文件需要另存为*.wrl格式,在另存为中选择2.2、在立创EDA中新建模型2.3、引用元件,并导出3D模型注意:保存为*.wrl文件后,Solid

2020-08-24 00:04:12 3533

原创 SolidWorks快速绘制齿轮模型

前言:齿轮的建模计算相对比较复杂,利用工具绘制基本图形后再建模相对较快。 该方法是大学期间的一位高手传授给我的,工作后没有机会用一直放置,偶然间需要用想起来,记录一下,感谢我的朋友。一、绘图工具 1.1、CAXA-2016,支持齿轮自动生成即可。 安装及下载链接可参考百度经验,地址:https://jingyan.baidu.com/article/925f8cb8ac52e0c0dde056fe.html ...

2020-05-31 01:09:54 8101 2

原创 华为机试——Linux Shell实现

题目描述:Linux Shell脚本中${xxx}代表变量xxx的值,给定一个字符串存在一个或多个${xxx},需要将字符串中所有的${xxx}替换成实际值输入描述:第一行位赋值语句的行数第二行开始后面的每一行为一个变量的赋值语句,左边是变量名,右边是变量的值,变量的值为纯字符串,且整个一行都没有空格,${xxx}代表变量xxx的值注:a、同一个变量不存在多次赋值b、变量的赋值语句可以在变量引用的后面,比如: xxx=lyf/${ttt}/test t...

2020-05-09 22:44:08 1138

原创 华为机试——输出最小跳跃次数

题目描述* 题目描述:给出一组正整数,你从第一个数向最后一个数方向跳跃,* 每次至少跳跃1格,每个数字的值表示你这个位置可以跳跃的最大长度。* 计算如何以最少的跳跃次数跳到最后一个数。* 输入描述:* 第一行表示有多少个数n * 第二行依次是1到n,一个数一行。* 输出描述:* 输出一行,表示跳跃最少...

2020-04-06 14:17:13 1117

原创 华为机试——素勾股数

题目描述* 题目:勾股数,是由三个正整数组成的数组;能符合勾股定理 a*a + b*b = c*c ,(a, b, c) 的正整数解。* 如果 (a, b, c) 是勾股数,它们的正整数倍数,也是勾股数。* 如果 (a, b, c) 互质,它们就称为素勾股数。* 给定正整数N, 计算出小于或等于N的素勾股数个数。* 输入描述:输一个正整数* 输出描...

2020-04-06 12:51:50 2593

原创 华为机试——将一个数分解成两个质数之和

题目描述* 题目描述:数字分解,将一个数字分解成两个质数相加* 输入描述:给定数字* 输出描述:两个质数之和* 输入示例:10* 输出示例:10=3+7代码实现/************************************************** 题目描述:数字分解,将一个数字分解成两个质数相加* 输入描述:给定数字* 输出描述:两个质数之和* 输入示...

2020-04-06 12:01:22 3188 2

原创 华为机试——字符串过滤

题目描述* 题目:对输入的字符串检查是否存在非法字符,输出合法字符串(去重)和非法字符串(不去重)* 对合法字符串循环左移10次,再进行排序输出。(举例:比如字符串“abc”,循环左移一次的结果为“bca”)* * 输入描述:* (1) 字符串中的字符集合为’0’ - ‘9’,‘a’ - ‘z’,‘A’ - ‘Z’,其余为非法字符(空字符串作为定界符),有非法字...

2020-04-06 10:56:28 1763

原创 华为机试——计算岛屿数量

题目* * 题目描述:* * 给定一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,计算岛屿的数量。* * 一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。* * 你可以假设网格的四个边均被水包围。要求可以持续的工作* ** * 输出描述:* * 岛屿的数量* ** * 示例输入:* ** * 5 5* * 1 1...

2020-04-06 00:10:05 1031

原创 华为机试——硬盘容量排序

题目* 题目:将输入的容量进行排序* 输入描述:先输入磁盘的数量,然后依次输入磁盘的容量* 输出描述:将输入的磁盘容量排序* 输入示例:* 3* 2T* 5G* 3M* 输出示例:* 3M* 5G* 2T测试代码/*--------------------------------------------------------* 题目:将输入的容量进行排序*...

2020-04-06 00:05:15 2236

原创 华为机试——6个数找最大时间

题目描述* 题目描述:给定一个数组,里面有6个整数,求这个数组能够表示的最大24进制的时间是多少,* 输出这个时间,无法表示输出invalid* 输入描述:输入为一个整数数组,数组内有6个整数* 输入整数数组长度为6,不需要考虑其它长度,元素值为0或者正整数,* 6个数字每个数字只能使用一次。* 输出描述:输出为一个24进账...

2020-04-05 18:55:37 8498 1

原创 华为机试——实现一个简单的计算器

题目描述* 题目:实现一个科学计算器完成基本的计算功能* 输入描述:加减乘除的输入数据* 输出描述:计算结果* 示例:输入:-1*6 输出:-6代码实现#include <stdio.h>#include <stdlib.h>#include <string.h>#define STR_SIZE 2048 ...

2020-04-05 18:20:05 1524

原创 C51单片机与实时系统RTX51(Tiny / Full)

一、初识RTX51 该系统在偶然间翻阅时候发现,实现在80C51上运行实时系统,虽然功能简单,但对于STC系列常用的国产C51足以,详细的资料链接:http://www.bol-system.com/APPLICATION/RTX51.htm二、系统提供的相关接口 该实时系统是由Keil公司提供的源码,基于汇编实现的,使用时需要包含头文件:#includ...

2020-03-08 23:38:26 2729

原创 Keil C51和MDK共存及配置

常用的相关链接:I、Keil MDK及C51下载官网:https://www.keil.com/download/product/II、Keil MDK库下载网站:https://www.keil.com/dd2/Pack/一、准备安装包 首先需要准备以下软件安装包 以上三个安装包可以直接百度网盘下载: ...

2020-03-08 18:33:13 2323

原创 Linux下定时器使用

定时器使用的linux自带的信号量:SIGVTALRM代码如下:#include <stdlib.h>#include <stdio.h>#include <string.h>#include <sys/time.h>#include <signal.h>#include <unistd.h>void ...

2019-08-31 22:00:21 232

原创 AltiumDesign下PCB各层含义及对应Gerber文件含义

AltiumDesign-19版本的各PCB层的含义如下表:注:AltiumDesign-19目前仅支持最高16层PCB的设计,Cadence-17.2目前没有限制。 层用途 英文名称 中文翻译 含义 线路绘制等 Top Layer 顶层布线层 ...

2019-08-31 20:54:18 11905 3

原创 Jenkins和Gitlab搭建及配置管理

一、环境配置操作系统:CentOS-7.3 1611 x86_64 系统组件:服务器全安装版 所需安装包:Jenkins安装包:jenkins-2.150.3-1.1.noarch.rpm GitLab安装包:gitlab-ce-11.11.7-ce.0.el7.x86_64.rpm Jenkins插件安装包s CentOS-7.3 1611 x86_64安装IS...

2019-08-24 11:29:09 4970

原创 Linux BSP调试用到的命令

a、mkimage编译的FIT镜像地址,可以在板卡UBoot启动后,imls命令查看到每个镜像的入口地址;b、反编译设备树命令:./dtc -I dtb -O dts LS1021A.dtb -o tmp.dts ;c、上传文件到tftp服务器:tftp –p –l 本地文件名 –r 192.168.130.130 ;d、下载文件到单板:tftp –g –r 远端文件名 192.16...

2019-08-12 23:31:38 734

原创 busybox制作根文件系统

一、环境、源码包准备: OS:Linux x86_64 Compiler:arm-linux-gnueabihf-gcc Compiler Target: 32-bitSource: busybox1.30.1 编译命令:make ARCH=arm menuconfig,配置交叉编译所需的lib路径,如下:...

2019-08-12 23:30:03 344

原创 Flash(NandFlash&NorFlash)基本原理

本文中最主要的资料来源于开源组织对NandFlash的结构定义以及电气规范、测试规范定义的文档:《Open Nand Flash Interface》一、Flash基本原理及分类1.1、基本存储单元存储数据基本的元件:浮栅场效应管 图1.1 浮栅...

2019-08-12 23:12:02 15489

翻译 投影仪相关知识汇总

1.市场常见的光学芯片类型 色彩/色域 对比度 暗部细节表现力 响应速度 寿命 3LCD 最好 好 好 一般 好 DLP 号 一般 好 块 最好 LCOS 最好 最好 最好 一般 一般 2.市场常见的光源类型 光亮度 寿命(h) 缺陷...

2019-07-20 17:34:37 304

原创 Makefile下将文件的MD5写入文件

Makefile下实现,编译完成后执行。TOP_DIR := $(shell pwd)all: $(MAKE) -C apps find $(TOP_DIR)/output -type f -print0 | xargs -0 md5sum &gt; $(TOP_DIR)/output/apps.md5.txt

2019-03-04 09:33:46 896

原创 Altium Design绘制元件库(下)

接 Altium Design绘制元件库(上),完成元件的PCB库绘制。22.开始绘制元件的PCB库(由于示例使用的元件是标准封装之一,因此此处通过元件向导完成元件的封装绘制,如果不是标准封装之一,则需要童鞋们自己查看数据手册,添加焊盘,并手动输入焊盘的尺寸,以完成非标元件的PCB封装绘制)23.封转信息基础知识补充及元件封装类型选择24.指定元件的封装信息25.指定尺寸26....

2019-03-03 13:55:28 1771

原创 Altium Design绘制元件库(上)

一、软件环境OS : win-10Software: Altium Design 19.0.10 该版本相对于18版本没有多大改变,优化部分软件bug,界面操作基本一致。注意:绘库有风险,且绘且当心。百度出来的芯片手册不可靠,要去官网下载,一定要去官网下载。二、绘制原理图库大致步骤1.建立库工程;2.绘制原理图库;3.绘制pcb封装库;4.将原理图库和pcb封装...

2019-03-03 13:54:52 4011

原创 Linux下MII总线驱动不稳定

一、硬件环境配置:          PowerPC+BCM芯片二、软件环境配置          Linux+C语言三、问题          Linux内核在增加实时补丁后(make menuconfig选择了选项“”)后,在MII总线压力读写时出现连续读取数据不一致问题。四、分析和解决         Linux内核版本区别:增加了编译选项如下        ...

2019-02-25 20:14:07 444

原创 字符串匹配算法

字符串匹配算法有:暴力匹配、KMP更正错误2019.12.08KMP算法 先计算出要匹配的字符串的特征数值(字符串首尾相同的字符串最长长度 + 1),依据特征值指导字符跳转。 匹配函数如下:(其中p为查找串的指针,j为p下标,k为匹配的next值) BM算法 BM算法和KMP算法的差别是对模式串的扫描方式自左至右变成...

2019-02-22 18:13:39 755

转载 计算机组成原理相关名词解释

大部分内容引用自百度百科。1、MIPS      指令执行性能评估MIPS(Million Instructions Per Second):单字长定点指令平均执行速度 Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。这是衡量CPU速度的一个指标。像是一个Intel80386 电脑可以每秒处理3百万到5百万机器语言指令,即我们可以说8...

2019-02-21 20:51:58 2131

原创 归并排序算法

一、算法核心分区合并子函数void merge_sub_fun(int* src,int low,int high){ int i = low; int mid = low + (high-low)/2; int j= mid + 1; int k = 0; int tmp[high-low+1]; static int mp=1; int* record_...

2019-02-20 18:15:15 341

原创 快速排序算法

一、快速算法核心void quick_sort(int* src,int left,int right){ int i=left,j=right; int tmp = 0; if(NULL == src) { printf("Func:%s Input Err:src=%s\n\r",src); return ; } /* 递归结束条件 */ ...

2019-02-15 17:54:15 188

原创 冒泡排序示例

目录一、冒泡排序核心二、冒泡排序可执行C程序三、冒泡排序结果及解析更正错误2019.12.08一、冒泡排序核心void bubble_sort(int* src,int length) //整数数组的排序{ int i = 0,j = 0; int tmp = 0; /* 入参检查 */ if(NULL == src || lengt...

2019-02-15 15:41:01 1118

翻译 Linux内核调用关系图

参考源:http://www.makelinux.net/kernel_map/理解尚不完整,还需改进,请多指正。

2019-02-12 18:15:56 1171

转载 网络协议簇

网络通信协议簇转载,转载地址:http://www.52im.net 

2019-02-12 16:16:26 977

原创 宇称不守恒

宇称不守恒描述了物质在弱相互作用下,相同物质粒子呈现出非对称的物理状态(衰变、放射电子束轨道等)。 因此物质的泯灭(正反物质碰撞产生极大的能量)在弱相互作用下可能呈现出更低的能级。...

2019-02-06 20:00:46 740

RFID-Lib.IntLib

AltiumDesign 集成库,内有STM32以及RFID等一系列基础元件的原理图和PCB封装,且经过实际验证,实际可用。元件封装库。

2019-08-31

NotePad++的hex查看插件32bit免费下载

NotePad++的HEX查看插件,使用方式可百度,由于CSDN上传资源最小必须一个资源分,所以在这里大家点击链接到原网站下载不要积分。我并不想赚积分,CSDN的规则太wuchi。 资源网站:https://github.com/chcg/NPP_HexEdit/releases

2018-11-17

讯飞语音开发包SDK

安卓上开发的语音识别,源码由科大讯飞提供的接口设计,可以实现基本的语音识别和响应,处理语音实现语音识别

2018-03-02

单片机C语言学习

从基础开始讲解单片机,供大家基础学习入门

2014-11-15

空空如也

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

TA关注的人

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