自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (5)
  • 问答 (3)
  • 收藏
  • 关注

原创 互联网及相关公司的求职经历分享

找工作算是告一段落了。从今年过年回来开始,到这个月,整整9个月的求职路。然而,如果真的算找工作所花的时间,又怎么可能仅仅9个月就可以完成所有的工作。不过,这篇文章就不铺开太多了,仅讨论找实习找工作的一些经验体会吧。我找工作这段时间,除了中途投了一个唯品会的php工程师,其它应聘的岗位都是C++工程师相关的。所以,我下文所讲的内容,很大一部分都是针对C++软件开发工程师的。当然,我觉得软开工程师也可以

2015-11-23 00:30:44 959 1

转载 C/C++中的日期和时间 TIME_T与STRUCT TM转换

摘要:本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)1

2015-10-30 11:27:44 613

转载 linux socket的select函数例子

使用select函数可以以非阻塞的方式和多个socket通信。程序只是演示select函数的使用,功能非常简单,即使某个连接关闭以后也不会修改当前连接数,连接数达到最大值后会终止程序。程序使用了一个数组fd_A,通信开始后把需要通信的多个socket描述符都放入此数组。首先生成一个叫sock_fd的socket描述符,用于监听端口。将sock_fd和数组fd_A中不为0的描述符放入select

2015-10-28 16:40:19 536

原创 使用opencv训练问题及解决办法

在Windows下安装好opencv2.4.9之后,在"xxx/build/x64/vc10/bin"下有训练中要用到的可执行程序opencv_xxxx.exe等四个可执行程序。注意,由于本人为win7 64bits系统,安装了VS2010,故使用该目录下的可执行程序。    当使用自带程序进行人脸检测训练时,遇到一些问题,整理如下:1.训练中途,程序突然终止,提示"OpenCV Erro

2015-10-19 18:00:23 5789 3

原创 单例模式中静态类成员变量初始化问题

最近做一个项目,C++语言,使用到了单例模式做设计。在具体编写代码时,使用了静态成员变量和静态函数。代码如下:class Camera{ private: //(省略若干代码) static Camera* pCamera ; //(省略若干代码) public: //(省略若干代码) static Camera* getInstance() { if(p

2015-10-15 10:31:53 4053

原创 关于子目录源码文件编写makefile文件

在编写代码时,为了防止一个目录下代码文件过多,可能会采用子目录来存放代码文件。这时候,在编译的过程中,就需要对子目录的文件进行编译,其中涉及到头文件和源文件的处理。对于头文件来说,需要增加头文件目录引用。对于C/C++文件,makefile中系统定义了CFLAGS和CXXFLAGS来指定头文件引用目录,故对于C文件,可在makefile中增加如下语句:CFLAGS += -I./dir/

2015-10-12 22:56:37 519

转载 起个名字好难:关于变量命名的思考与总结

最近半年多,随着编写代码工程变大,代码行数也在增加。类名、函数形参、成员变量名、全局变量等等开始变得混淆不清,自己也有时搞不清变量的意义、作用域等等。故,在网上翻阅了大牛们关于变量命名的一些文章,思考并总结了,写下了这篇关于代码中变量命名的文章。希望与所有与我有共同困惑的人共勉。一、语法过关    在所有关于语言类入门书籍中,一般最开始就会提到关于命名的语法规则,C++的语法规则大致如下:

2015-10-09 20:44:08 943

转载 互斥锁与条件变量(基于控制输出面试题的思考)

昨天笔试唯品会时,遇到一道编程题: 编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。’      当时看到这道题时,就想到了要使用互斥锁和条件变量。奈何,没有深入了解过,只能干瞪眼。回来之后,在网上查了查资料,也找到了相关题目,故整理这篇文章,算是学习笔记吧。      代码

2015-09-14 22:20:21 942

原创 基于开源库jsoncpp的json字符串解析

json(JavaScript Object Notation)是一种轻量级高效数据交换格式。相比于XML,其更加简洁,解析更加方便。在实习期间,我负责的程序模块,多次使用到json进行数据传输。由于之前只对json稍稍了解,而且不熟悉项目组使用的开源json解析库,故在编码过程中效率很低,而且还出现过bug。虽然,最后项目组的事情比较顺利的完成了,但感觉自己对json的编解码熟悉仍然不够,故翻阅

2015-09-13 22:58:58 9429

转载 查看文件常用指令cat,tac,nl,more,less,head,tail,od

linux中查看文件的命令如下:cat: 由第一行开始显示档案内容 tac: 从最后一行开始显示,可以看出 tac 是 cat 的反向显示! nl: 显示的时候,随便输出行号! more: 一页一页的显示档案内容 less 与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页! head: 查看头几行 tail: 查看尾几行 od: 以二进制的方式读取

2015-08-01 21:22:04 618

原创 make编译出现'\241'错误

昨天从word文档里复制了一段代码,粘贴到了cpp文件里。当通过make命令进行编译时,出现了几十条关于’\241’的错误,具体见下图。     后来,上网查了下资料主要是由于代码中存在特殊字符所导致的。可通过如下两个办法解决:         1.将代码粘贴到txt文档中,去除格式;         2.如果步骤1仍然没有解决问题,则可通过手动重新键入所有空格,或者通过复制替换按钮,将代

2015-07-11 15:04:07 1048

转载 pthread多线程资源回收策略

在写网络服务器程序时可能需要实现多线程接收多个客户端的数据,我实现方式比较傻,死循环等待client的connect,connect之后创建thread,这样其实有一个问题,服务器程序需要长期运行,长时间线程的创建,线程资源的回收就是一个问题。       Linux系统中程序的线程资源是有限的,表现为对于一个程序其能同时运行的线程数是有限的。而默认的条件下,一个线程结束后,其对应的资源不会被释放,

2015-06-17 16:52:28 1143

转载 Linux命令工具 top详解

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序

2015-06-09 16:14:57 395

转载 正确释放Vector的内存

今天在看微博的时候, 有人提出了一个对于Vector内存泄露的疑问。博主采用 Vector存储一些数据,但是发现在执行 clear() 之后内存并没有释放,于是怀疑产生了内存泄露。随后有人回复:“vector 的 clear 不影响 capacity , 你应该 swap 一个空的 vector。”开始并不知道回复者在说什么,于是在谷歌上搜索 vector swap clear 发现已经有类似的问题

2015-06-08 17:16:47 448

原创 使用GDB在ARM上进行开发调试

一、安装GDB及GDB server 1.1 GDB简介 GDB调试环境由宿主机GDB和目标开发板的GDB server共同构成,两者通过串口或TCP连接。使用GDB标准串行协议协同工作,实现对目标机的系统内核和上层应用的监控和调试功能。 GdbServer是GDB的一个组件,但通常不随发行版本的GDB一同发布,需要用户自行编译GDB的源代码包得到相应的GDB和GDBServe

2015-05-24 18:23:20 2341

原创 关于YUV420转RGB24的一些思考

近期由于在做导师的一个关于人脸识别的项目。通过arm开发板的摄像头捕捉人脸图像,然后对人脸进行识别。

2015-05-17 21:59:56 787

原创 海思开发板中的YUV420格式解析

一、什么是YUV YUV是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是PAL和SECAM模拟彩色电视制式采用的颜色空间。 YUV主要是用于优化彩色视频信号的传输,使其与早期的黑白电视机相容。采用YUV色彩空间的重要性是它的亮度信号Y和色度信号U、V是分离的。其中“Y”表示明亮度(Luminance或Luma),也就是灰阶值;而“U”和“V” 表示的

2015-05-17 19:12:14 3527

原创 基于海思开发板进行OPENCV交叉编译时的问题

之前一直在摸索,为什么使用海思3515官方提供的编译器在对opencv进行交叉编译时会出现各种莫名其妙的错误。后来买了一块3520D的开发板,商家为我提供了新版的SDK,编译器版本升级为4.4.1。当我用新版的编译器再进行交叉编译时,竟然一路顺畅,很容易地就完成了整个编译过程。再回过头来,反省之前遇到的各种问题,发现其实最大的问题出在编译器版本上。在旧版的SDK里,编译器版本为gcc 3.4.3,

2015-04-08 20:57:03 2373

转载 五大常用算法

分治算法一、基本概念   在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)……    任何一个可以用计算机求解的

2015-04-08 16:39:39 557

原创 关于百度地图在web端二次开发经验分享

标题党,先做个记号,最近两天更新。

2015-02-04 10:44:12 11498 1

原创 海思3515,交叉编译opencv2.4.9,个人经验分享,欢迎补充

由于项目需要,最近几个月开始接触arm9,开始接触opencv。

2015-02-03 20:55:35 4745

原创 基于STM32,低速CAN通信的收发器芯片选择问题

本电路系统第一版测试电路使用的CAN收发器芯片为philips公司生产的TJA1050,电路参考了战舰STM32开发版的电路,如下图。电路测试没有问题,但是性能不能满足工程要求。经测试在STM32F103C8T6芯片上,工作于24MHZ,在代码中设置SJW,BS2,BS1,BRP分别为1,8,7,125时可以实现12kbps的速率,可正常发送与接收数据。在外部条件最优的前提下,12

2013-12-01 11:03:32 11953 4

原创 基于STM32的CAN网络开发笔记之滤波器配置和ID设置

看了很多关于配置滤波器和设置ID(StdID ExtID)的文章,发现都有问题。经过自己实验测试,得到的结果如下:(1)  设置ID   如果你想使用的StdID,则ExtID可以随意设置,只需要配置正确StdID即可。同时,需要设置IDE=0。如果你想使用的是EXTID,则只需要正确配置EXTID即可,STDID可随意设置。注意,这一点很多地方认为是扩展ID的前11位由StdID设置,后

2013-12-01 10:47:26 10652

原创 基于STM32的CAN通信网-----一种ID配置方法

分布式CAN通信网ID分配方法   在介绍本方法前,先构建CAN通信网系统模型:只有一个管理中心节点,其他均为从节点。主节点可与所有从节点之间相互通信,从节点之间不相互通信。CAN通信网采用网桥扩展方式增大网络中的节点。报文帧格式帧信息IDE=1RTR=0XXDLC扩展帧远程

2013-12-01 10:33:13 8696 1

转载 STM32(Cortex-M3)中的中断优先级概念

本篇转自网上,忘了地址,如果原作看到的话,可以留言给我,我会加上出处的,谢谢! NVIC:Nested Vectored Interrupt Controller STM32(Cortex-M3)中有两个优先级的概念——抢占式优先级和响应优先级,有人把响应优先级称作'亚优先级'或'副优先级',每个中断源都需要被指定这两种优先级。具有高抢占式优先级的中断可以在具有低抢占式优先级的中断

2013-12-01 10:26:16 1188

原创 STM32基于库函数版本的系统工作频率与CAN工作波特率设置

1,系统工作频率设置    STM32系统工作频率设置寄存器版和库函数版相差较大。库函数版本系统工作频率通过system_stm32f10x.c 中的SystemInit()函数进行设置,其他的配置主要在stm32f10x_rcc.c文件中。对于系统时钟,默认情况下是在SystemInit函数的SetSysClock()函数中间判断的,而设置是通过宏定义设置的。static void Se

2013-12-01 10:22:14 4836

单片机取模软件

用于单片机取模,12864的显示代码提取。工具简单易用,已破解。。。

2012-03-07

全国大学生电子设计竞赛常用电路模块制作

全国大学生电子设计竞赛常用电路模块制作,实用性恒强!

2011-09-04

串口转USB protel图

基于ch341a的51单片机下载线设计,主要用于STC单片机下载,原理图简单实用

2011-08-16

Easy 51Pro v2.0宇宙版

用于下载51程序,支持atmel51单片机的下载,实用性强。。。。

2011-08-16

LibFetion精简版

将传统的飞信进行了精简,占用内存小,运行速度快,好用

2010-07-19

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

TA关注的人

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