你行你上天
码龄16年
关注
提问 私信
  • 博客:503,700
    503,700
    总访问量
  • 51
    原创
  • 2,189,615
    排名
  • 245
    粉丝
  • 2
    铁粉

个人简介:专注:智能硬件,信号处理算法,数据挖掘算法,Labview虚拟仪器

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2009-02-18
博客简介:

积跬步以至千里

查看详细资料
个人成就
  • 获得281次点赞
  • 内容获得112次评论
  • 获得1,560次收藏
  • 代码片获得885次分享
创作历程
  • 2篇
    2021年
  • 17篇
    2019年
  • 18篇
    2018年
  • 23篇
    2017年
  • 14篇
    2016年
成就勋章
TA的专栏
  • C++
    4篇
  • stm32
    16篇
  • labview
  • 算法
    5篇
  • 嵌入式
    16篇
  • C
    27篇
  • DSP
    1篇
  • matlab
    2篇
  • agilent
    1篇
  • usb
    5篇
  • c8051
    5篇
  • python
    6篇
  • ADS1298
    1篇
  • tensorflow
    11篇
  • PC
  • cc2530
    1篇
  • 网络
    4篇
  • 物联网
    3篇
  • linux
    4篇
  • 信号处理
    5篇
  • git
    1篇
兴趣领域 设置
  • 人工智能
    语音识别
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

为什么日志系统普遍用标准错误输出stderr?而不是标准输出stdcout?

因为stderr是不带缓冲的,每个输出都会立即flush。而stdout是行缓冲的,要等到缓冲满了才flush,或者手动调fflush。前者更符合作为日志的需要,不然你程序执行过程中core了,缓冲里的遗言可能就丢了,而丢掉的往往是最接近出问题的地方的。参考:APUE第5.4节 https://www.zhihu.com/question/67629357...
原创
发布博客 2021.02.17 ·
1120 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

【C++学习笔记】03-图说C++对象模型:对象内存布局详解

0.前言文章较长,而且内容相对来说比较枯燥,希望对C++对象的内存布局、虚表指针、虚基类指针等有深入了解的朋友可以慢慢看。本文的结论都在VS2013上得到验证。不同的编译器在内存布局的细节上可能有所不同。文章如果有解释不清、解释不通或疏漏的地方,恳请指出。1.何为C++对象模型?引用《深度探索C++对象模型》这本书中的话:有两个概念可以解释C++对象模型:语言中直接支持面向对象程序设计的部分。 对于各种支持的底层实现机制。直接支持面向对象程序设计,包括了构造函数、析构函数、
转载
发布博客 2021.01.03 ·
522 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

WSL的坑

在WSL下测试消息队列实现多进程通信,在执行到msgget时报错,错误信息“function not implemented”。在下面链接中发现,WSL不支持消息队列。https://github.com/microsoft/WSL/issues/1443...
原创
发布博客 2019.12.31 ·
1348 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

【C++学习笔记】02-传递常量引用比传值更好

转载自:https://blog.csdn.net/Function_Dou/article/details/86608247在c++中引入了引用, 而引用其实也就是指针, 只是使用起来更加的方便. 使用使用使得在函数传值时可以为对象创造一个别名, 操作时实际上就是操作原对象本身, 这样的传引用可以避免对象传递时产生临时对象. 这样避免就可以减少很多不必要的时间和空间的开销.实际例子以Eff...
转载
发布博客 2019.09.03 ·
394 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

【C++学习笔记】01-理解const引用传递

第一次看到C++中的const引用传递有点困惑。在我的理解中,之所以用引用传递,是因为函数可以修改传递的参数。而不是像值传递那样,只创建参数的副本,无法修改参数。但是加上const,又表示不能修改该参数。那这const引用传递有啥用呢?先不讨论引用传递和值传递。直接默认使用引用传递,看非const引用传递和const引用传递的区别。实际例子考虑如下代码#include<iostrea...
原创
发布博客 2019.09.03 ·
3189 阅读 ·
10 点赞 ·
3 评论 ·
28 收藏

版本控制工具git之生成ppk及使用

本人用的是Git Extensions,用SSH传输。在配置秘钥时遇到问题,参考下面博客解决。转载自:https://www.cnblogs.com/TingJie/p/4992111.html一、简介Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Gi...
转载
发布博客 2019.05.17 ·
1961 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

信号处理学习笔记6——自适应滤波器4-递归最小二乘(RLS)自适应滤波器

前面学习的LMS自适应滤波器的核心思想是最速下降法,并根据当前输入信号和期望输出对代价函数的瞬时梯度进行估计。但它只使用了当前时刻的输入和期望信号,没有充分利用过去的信息。这就导致LMS自适应滤波器误差大、收敛慢。  一个直接的想法就是,如果能把过去的信息也都利用起来,那么梯度估计的误差就会大大减小,算法便会很快收敛。最小二乘(Least Squares,LS)算法正好就实现了这一过程,...
原创
发布博客 2019.03.25 ·
8119 阅读 ·
10 点赞 ·
1 评论 ·
91 收藏

信号处理学习笔记5——自适应滤波器3-LMS自适应滤波器

    LMS算法全称最小均方算法(least mean square),是一种线性自适应滤波算法。它不需要计算相关函数,也不需要矩阵求逆计算。由于其简单性,LMS算法成为其它线性自适应滤波算法的参照标准。  LMS一般包含两个基本过程:滤波过程:a. 计算线性滤波器输出对输入信号的响应;b. 通过比较输出结果与期望响应产生估计误差自适应过程:根据估计误差自动调整滤波器参数1.LMS自...
原创
发布博客 2019.03.13 ·
5021 阅读 ·
4 点赞 ·
0 评论 ·
46 收藏

信号处理学习笔记4——自适应滤波器2-最速下降法用于FIR型维纳滤波

几点说明:上面提到的式(4.4)就是最速下降法中的权值更新公式。在维纳滤波中,期望响应一般就是噪声。因为维纳滤波本身就假设信号和噪声是(即这里的抽头输入u(n)和期望响应w(n))广义联合平稳的,所以输入相关矩阵R\bold RR以及输入和噪声的互相关向量p\bold pp是恒定的。因此式(4.9)和式(4.10)的计算结果仅与迭代时的权值向量有关,并且是可以精确计算的(这是与后面LM...
原创
发布博客 2019.03.13 ·
1906 阅读 ·
1 点赞 ·
0 评论 ·
10 收藏

信号处理学习笔记3——自适应滤波器1-最速下降法理论

关于什么是自适应滤波器,在参考文献1的“关于&amp;amp;amp;amp;amp;amp;amp;lt;自适应滤波器原理&amp;amp;amp;amp;amp;amp;amp;gt;一书”一节中,有如下描述:  自适应信号处理可以在无需先验知识的条件下,通过自学习适应或跟踪外部环境的非平稳随机变化,并最终逼近维纳滤波器和卡尔曼滤波器的最优滤波性能。  由于没有先验知识,自适应滤波器的性能一般只能逼近维纳滤波器和卡尔曼滤波器。这是可以理解的。1. 先导知识——最速下降法最
原创
发布博客 2019.03.07 ·
2226 阅读 ·
2 点赞 ·
0 评论 ·
14 收藏

信号处理学习笔记2——维纳滤波器

在讨论维纳滤波之前,先来看看维纳滤波器在线性滤波器体系中处于什么位置。  经典的FIR和IIR滤波器要求已知信号和噪声的频谱信息,并且信号和噪声的频谱没有交叠。信号和噪声的频谱有交叠时,如果硬要使用FIR和IIR当然也可以,但要么会造成噪声滤除不干净,要么会造成滤除噪声的同时对有用信号造成“误伤”。  实际上,在信号和噪声频谱有交叠时,滤波问题演变为在已知观测量的前提下,对未知信号进行最佳估计的问题(所以这里信号也称为估计量)。既然希望估计是最佳,那必然要有个评价准则,不同的评价准则便衍生出不同的估
原创
发布博客 2019.03.07 ·
25946 阅读 ·
49 点赞 ·
9 评论 ·
211 收藏

信号处理学习笔记1——滤波概述

什么是滤波?按照我个人的理解,滤波就是从观测信号中去除噪声,留下想要信号的过程。线性滤波与非线性滤波根据滤波器的输出是否为输入的线性函数,可将它分为线性滤波器和非线性滤波器两种。若噪声为加性,即噪声是叠加到“干净”信号上的,则可用线性滤波器将噪声滤除。若噪声不是加性,则需要非线性滤波器。典型的线性滤波如经典IIR、FIR滤波,典型的非线性滤波如中值滤波、形态学滤波、同态滤波、基于小波分...
原创
发布博客 2019.03.06 ·
3011 阅读 ·
2 点赞 ·
0 评论 ·
15 收藏

实时嵌入式软件开发的25个常见错误

转载自:https://blog.csdn.net/lulubooboo/article/details/7370808  英文原文由David B. Stewart撰写,  这篇论文对实时嵌入式软件开发的易犯错误做了深入分析,对我们的开发非常有指导意义。 David B. StewartSoftware Engineering for Real-Time Systems ...
转载
发布博客 2019.02.15 ·
3734 阅读 ·
4 点赞 ·
0 评论 ·
13 收藏

《程序设计与数据结构》读书笔记1——2.2节结构体相关

结构体定义时需要注意字节对齐的问题,在串口/网络等数据传输时,有时为了传输帧格式设计方便,将帧格式设计为结构体,这时更要注意结构体对齐,防止出现不希望的补零。为保险起见,可在定义结构体时声明结构体为1字节对齐。因为结构体指针比整个结构体小的多,所以需要向函数传递结构体时,最好传递结构体指针,而不是结构体本身。这样在函数调用时,压入堆栈的效率要更高。结构体的成员不仅可以是变量,还可以是函数指针...
原创
发布博客 2019.02.12 ·
200 阅读 ·
0 点赞 ·
2 评论 ·
1 收藏

浅谈嵌入式 MCU 软件开发之应用工程的堆与栈

转载自:http://huxiongwei.spaces.eepw.com.cn/articles/article/item/136717 内容提要 概述与案例分析1. 嵌入式 C 语言应用工程中堆栈的定义和作用2. 嵌入式 C 语言应用工程的栈大小确定3. 嵌入式 C 语言应用工程的堆栈溢出定义、危害以及应对措施 概述与案例分析过去工作中,我经常遇到客户非...
转载
发布博客 2019.01.31 ·
1535 阅读 ·
2 点赞 ·
0 评论 ·
19 收藏

关于嵌入式开发中堆栈的理解

转载自:https://blog.csdn.net/Eric_01230/article/details/86299949 今天去面试,面试官再一次问到了对堆栈的理解这个问题,答的不是太好,在网上又查阅了一些讲的比较清楚的博客,现在来梳理一下内容,以备下次之需。一个由C/C++编译的程序占用的内存包括下列几项:栈区(stack) 堆区(heap)静态区(全局区)常量区代码区它...
转载
发布博客 2019.01.31 ·
1062 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

STM32学习笔记11——HardFault_Handler处理方法

根据网络资料及自己调试经验总结如下:STM32 出现 HardFault_Handler 故障的原因主要有两个方面:1、内存溢出或者访问越界。这个需要自己写程序的时候规范代码,遇到了需要慢慢排查。2、堆栈溢出。增加堆栈的大小。排查方法:发生异常之后可首先查看 LR 寄存器中的值,确定进入异常前一刻使用的堆栈为 MSP 或 PSP,然后找到相应堆栈的指针?注:在 HardFault_Ha...
转载
发布博客 2019.01.11 ·
3349 阅读 ·
3 点赞 ·
0 评论 ·
28 收藏

嵌入式linux开发板web服务器搭建2——CGIC移植

移植完Boa后,还需要利用C语言的CGI库“CGIC”,并结合html完成Web开发,实现前端网页和设备的数据交互。主要步骤参考https://wenku.baidu.com/view/8d5dd954f01dc281e53af08f.html中的描述,主要步骤如下:CGIC简单测试先编写个test.c程序,如下:#include &amp;amp;amp;amp;lt;stdlib.h&amp;amp;amp;amp;gt;int main(...
原创
发布博客 2019.01.07 ·
2788 阅读 ·
1 点赞 ·
3 评论 ·
22 收藏

嵌入式linux开发板web服务器搭建1——Boa移植

嵌入式linux开发板web服务器Boa移植笔记环境Ubuntu10.04.4boa-0.94.13主要步骤主要参考https://wenku.baidu.com/view/8d5dd954f01dc281e53af08f.html和https://blog.csdn.net/lyiya/article/details/50865947两篇博客的步骤。从http://www.boa....
原创
发布博客 2019.01.07 ·
3021 阅读 ·
2 点赞 ·
0 评论 ·
15 收藏

linux下移植libcurl记录

移植过程主要参考博客:https://blog.csdn.net/wuzhiwuweisun/article/details/79129838也借鉴了博客:https://blog.csdn.net/zhouzhenhe2008/article/details/53768854 下载的文件为:curl-7.61.1.tar.gz,网址为:https://curl.haxx.se/d...
原创
发布博客 2018.12.29 ·
539 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多