自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 关于调试打印

【代码】关于调试打印。

2024-04-03 14:49:18 98

原创 用到的东西

1.查看某个目录 下各个文件和文件夹的大小du -ah --max-depth=1 a表示显示目录下所有的文件和文件夹(不含子目录),h表示以人类能看懂的方式,max-depth表示目录的深度...

2020-03-23 14:00:22 124

转载 SVN常用命令

1.如果希望显示限定N条记录的目录信息,使用 svn log -l N -v2.比较 svn 工作版本中版本号2和3的这个文件的变化: svn diff -r 2:3 file.c3.如果只希望查看特定的某两个版本之间的信息,可以使用:svn log -r 6:84.查询最近50条commit log中 ljia用户的日志  svn log --search ljia -l 505...

2018-11-02 21:33:58 190

原创 指针的妙用

typedef struct{ int *handle; int msg_type; int parm;}message_t;typedef void (* object_callback)(message_t *message);typedef struct{ int *handle; int object_id; object_ca

2017-03-11 18:21:19 425

原创 libcurl的使用

1.libcurl  source code下载路径: http://curl.haxx.se/download.html 点curl-7.46.0.tar.gz下载2.解压之后cd到curl-7.46.0目录下(1)执行./configure --prefix=/home/curl(2)make(3)sudo make install这样编译完成之后会在/home/curl下

2015-12-31 20:10:04 1779

原创 虚拟机连接不上网络

由于很久没用虚拟机了,最近用装了个虚拟机连不网,在网上查了N多方法都没能解决我的问题,折腾了半天才弄好,由于虚拟网卡的各种服务没有启动导致。这里把需要检查的一些地方以图片的方式列出来:1. 在控制面板\网络和 Internet\网络连接中检查虚拟网卡是否都是启用状态。2.在windows任务管理器中检查与虚拟机网络相关的服务是否处于启动状态。3. 检查虚拟机设置中采

2015-04-09 16:54:52 1100

转载 了解数字高清电视

[转自:http://vga.zol.com.cn/29/290955.html]  [http://baike.baidu.com/view/765885.htm]1080i、720P都是什么?大家在看到数字电视相关的信息时,都会碰到1080i和720P这样的数字,i代表隔行扫描,P代表逐行扫描,这两者孰优孰劣,大家应该很清楚。隔行就像百叶窗,是不完整的图像,逐行才是一次显示一幅完整的画

2013-11-12 19:11:12 1109

原创 这个七月,很惬意

回到“家”,一个人,真安静,这感觉真好!看看上一篇日志的时间,又是好久没有思考问题、思考生活、总结沉淀了。缺少思考的生活真的很可怕,早上睁眼起床上班,晚上闭眼睡觉,一天就过去了,没有在生命中留下一丝痕迹。        这个七月是目前为止我人生中过得最丰富的一个月,因为这个月去了很多地方,泰国(曼谷、芭提雅)、杭州(西湖、乌镇、千岛湖)、澳门。假期越少越发觉得假期的珍贵,对于学生时代浪费掉的那

2013-01-30 23:02:19 654

转载 数字电视节目码流中的PMT表分析

PMT(Program Map Table):节目映射表,该表的PID是由PAT提供给出的。通过该表可以得到一路节目中包含的信息,例如,该路节目由哪些流构成和这些流的类型(视频,音频,数据),指定节目中各流对应的PID,以及该节目的PCR所对应的PID。PMT表中包含的数据如下:        (1) 当前频道中包含的所有Video数据的PID        (2) 当前频道中包含的所

2012-09-27 14:36:53 7475

转载 数字电视节目码流中的PAT表分析

PAT是Program Association Table的简称,即”节目关联表”. PAT定义了当前TS流中所有的节目,其PID恒为0x00,它是PSI信息的根节点,要查找节目必须从PAT表开始.PAT表描述了当前TS流中包含什么样的PID,主要包括当前流的NIT表格的PID,当前流中有多少个不同类型PMT表,每个PMT表对应的频道号等信息.参考链接: http://blog.csd

2012-09-22 14:42:45 6993

转载 Wonderful sayings

每天提醒自己,不要忘记理想,不要忘记目标;每天提醒自己,不要忘记学习,不要忘记看书;每天提醒自己,不要忘记包容,不要忘却善心;每天提醒自己,不要忘记身体,不要忘记锻炼;每天提醒自己,不要忘记美丽,不要忘记快乐;每天提醒自己,不要忘记爸妈,不要忘记亲人。        我们的快乐,源于内心的真实,做最好的自己;我们的不幸,皆因浮躁着灵魂,攀比着他人。每个人都有长处,亦有软肋,艳羡别人的风光,追寻

2012-08-26 23:14:29 543

原创 DirectFB学习

framebuffer是一种能够提取图形的硬件设备,是用户进入图形界面很好的接口,对于用户而言,它和dev下面的其他设备没有什么区别,用户可以把它看成一块内存,既可以写入数据,又可以读出数据,写操作可以直接反应在屏幕上。[待续]

2012-08-07 22:08:55 482

原创 一些简单的排序、查找算法

1、插入排序        算法思想简单描述:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。直接插入排序是稳定的。算法时间复杂度O(n2)。void InsertSort(int array[], int length){    int i, j, key;

2012-08-07 22:08:32 669

转载 AFD与WSS

AFD是活动图像格式描述符(Active Format Description)的缩写。它主要用来描述一个视频编码帧中,人们感兴趣的那部分活动图像的显示格式。它的主要功能是提供给视频解码器以便创建优化的视频显示窗口(比如说元窗口为Overscan的切割,在显示窗口中的位置和大小等)。宽屏信令(Widescreen Signaling,WSS)标准就是一个指导用户端采用正确画面格式来还原图像显示

2012-06-28 23:32:32 3545

原创 比例模式

Dot By Dot        所谓的点对点显示也被称为1:1 Map或者Dot by Dot,简单理解就是视频源的图象构成像素的每一个点,与液晶显示设备面板物理像素点一一对应。对于液晶电视这样的固定像素显示设备,只有当视频源分辨率与其物理像素一一对应时,才能表现出应有的画质,无论清晰度、锐利度都是最佳状态。如果不能与之一一对应,那么图象就会模糊、发虚,类似拍照的时候没聚焦或手抖了的照片效

2012-06-25 14:55:56 691

转载 EDID

EDID: Extended Display Identification Data(扩展显示标识数据)是一种VESA 标准数据格式,其中包含有关监视器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串。 这些信息保存在 display 节中,用来通过一个 DDC(Display Data Channel)与系统进行通信,这是在显示器和

2012-05-15 12:40:32 437

转载 你所羡慕的生活

[转自:你好,时光。 - 人人小站]  [http://zhan.renren.com/hellotime?ref=hotnewsfeed&sfet=3731&fin=0&ff_id=&from=PubNewFeed]         当你早上6点钟在某个城市的出租房被窝内爬起来,然后洗漱干净6点半出了门,去到街边的小摊喝了一块钱的豆浆,吃了一块钱的油条。七点挤上了那辆开往公司的公交车

2012-04-10 23:39:54 1920

转载 office软件技巧收集

一. excel表格中设置下拉选项1、打开excel,选中需要设置下拉选项的列。2、数据/有效性,在【数据有效性】的页面的【允许】下选择【序列】,然后在【来源】中输入需要设置选项的文字,如【是,否】字符之间用英文的逗号分开,然后点【确定】就OK了。

2012-04-06 19:57:53 379

转载 如果一个人,就这样生活

[转自:你好,时光]如果一个人,努力看书,努力练字,对以后的日子有好处。 如果一个人,就这样生活。不用扮淑女或好男人,不用去学贤惠和成熟稳重。一切以自己为中心。能多潇洒就多潇洒,能多豪迈就多豪迈,但不可以邋遢。想去哪里就去哪里,只考虑自己就已经够完善了。如果一个人,就这样生活。不管怎样,都必须得独立,必须得坚强,不可以想找谁为你打点一切。你要专注于工作,或者早点学会

2011-12-25 23:06:33 465

原创 Linux下对移动存储设备的检测

 系统启动经过初始化操作之后,创建一个线程用于检测是否有移动存储设备插入或者拔出。/proc/partitions和/proc/mounts,当有U盘插入时,以上两个文件中都会相应增加设备信息行。不同的是后者显示的是真正挂载上了的分区。可以通过读取这两个文件的方法来判断是否有移动设备插入。char fdata[256] = {0};char name[32] = {0};FILE *fp = NULL;fp = fopen("/proc/partitions", "r")if (fp =

2011-05-12 23:47:00 1147

原创 文件操作:获取一个文件的行数

<br /> 通过文件中换行符号的个数来确定行数,使用fgets()和fgetc()函数<br />1.通过fgets()函数<br />...while ( !feof(fp) ){ if ( fgets(first_line, 128, fp) != NULL ) //读到一个换行符就会结束读取 { lines++; }}...<br /> <br />        fgets函数的调用形式如下:fgets(str,n,fp);此处,fp是文件指针;str是存

2011-05-11 23:01:00 4234

原创 同步、异步,阻塞、非阻塞

        经常遇到这几个词,对它们的概念以及相互之间的关系总是模糊,今天在网上找到一篇介绍得非常清楚的博文,记录一下,希望下回不要再弄混淆。原文:http://blog.csdn.net/historyasamirror/archive/2009/06/15/4270633.aspx        所谓的同步和异步,在这里指的是application和kernel之间的交互方式。如果application不需要等待 kernel的回应,那么它就是异步的。如果application提交完IO请求后,需要

2011-04-27 00:11:00 491

原创 手工释放linux内存——/proc/sys/vm/drop_caches

<br />原文:http://www.cnblogs.com/lidp/archive/2009/05/31/1697946.html<br />最近接触到手动释放内存的地方,暂时还不知道为什么要手动释放。baidu了一下,看到一篇介绍得不错的文章!收录下来

2011-04-25 23:31:00 529

原创 时间在飞!

<br /> 这周打了一个星期的酱油,两个bug一点进展都没有,应该是MTK那边的问题,但他们总能抓到我的漏洞,把问题推给我,让我不知所措。知识面太窄了就是这么悲剧!今天跟室友聊天似乎又激发了我当初的一些想法,当初想着等工作稳定下来,买一块ARM的开发板自己做点东西的,时间一长,这些都忘到九霄云外了。感觉总是没有时间,其实是自己太没时间观念了,做事情没有计划性。等GF同学来深圳了希望能从他那儿得到一点帮助,把曾经做过的那些东西捡起来吧!至于玩了四年多的魔兽,那时陪伴我的朋友们,不知道你们是否还在继续,

2011-04-14 23:59:00 514

原创 network模块小节

网络是很多电子产品应用的基础,因此尤为重要。近期做的互联网电视项目 也是在建立在网络连接的基础之上,可惜我做的只是简单的porting层工作,对各种网络协议、应用以及底层驱动知之甚少。在这里小结一下network模块的工作流程。 首先设备启动的时候会创建一个线程用来检测网络连接的状态,当网线拔出或者插上以及ip地址发生变化就会向显示界面发送相应的消息。目前是通过获取上一次网络连接状态和当前网络连接状态进行比较来判断该发送的消息类型,通过功能强大的ioctl函数。感觉这种实现方法

2011-04-01 23:56:00 2835 1

原创

<br />    又到周四了,再过一小时就到周五了,时间过得真快,感觉是刚过完周末,又到周末了,但是没有一点轻松的感觉。这周麻烦事太多了,主要还是自己对代码不熟悉吧,只想着快点把bug都搞定,却忘了磨刀不误砍柴工的古训,导致现在很被动,时间也紧迫。<br />    安静的感觉真好,每天地铁施工的噪音让人难以忍受,只能趁睡觉前的一点时间好好享受一下这份宁静了。<br />    越发忙碌越发觉得时间的珍贵!

2011-03-17 23:21:00 437

转载 笔试题集

1.查找单向链表中的倒数第n个元素相对于双向链表来说,单向链表只能从头到尾依次访问链表的各个节点,所以如果要找链表的倒数第m个元素也只能从头到尾进行查找,在查找的过程中,设定两个指针,其中current指针指向当前访问的节点,previous指针指向current之前的节点,且两者之间相距m个节点,这样,当current指针指向最后一个节点时,那previous指针指向的元素就是倒数第m个元素,程序的处理过程如下:element *CLinkList::FindMToLastElement(int m){ 

2011-03-15 21:27:00 533

转载 ioctl函数介绍

<br />        ioctl是设备驱动程序中对设备的I/O通道进行管理的函数。所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。他的调用个数如下: <br />int ioctl(int fd, int cmd, …);<br />其中fd就是用户程式打开设备时使用open函数返回的文件标示符,cmd就是用户程式对设备的控制命令,至于后面的省略号,那是一些补充参数,一般最多一个,有或没有是和cmd的意义相关的。ioctl函数是文件结构中的一个属性分量,就

2011-03-13 11:33:00 462

转载 关于多线程编程

<br />原文:http://blog.csdn.net/newzhhsh/archive/2008/08/19/2797302.aspx<br />    CPU是以时间片的方式为进程分配CUP处理时间的,当一个进程以同步的方式去完成几件事情时,此进程必须完成了第一件事情以后再做第二件事,如此按顺序地向CPU请求完成要做的事情。在此单线程的工作模式下,如果把CUP看作是一共有100个时间片的话,CPU可能一直都只是花了其中的10个时间片来处理当前进程所要做的事情,只是用到了CPU的10%的时间片,而其他

2010-12-28 16:04:00 440

转载 函数指针的剖析

原文:http://tieba.baidu.com/f?kz=916766999一 通常的函数调用一个通常的函数调用的例子://自行包含头文件void MyFun(int x); //此处的申明也可写成:void MyFun( int );int main(int argc, char* argv[]){   MyFun(10); //这里是调用MyFun(10);函数   return 0;}void MyFun(int x) //这里定义一个MyFun函数{   printf(“%d/n”,x);}这个

2010-12-21 16:45:00 378

原创 可重入函数

<br />        可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。<br />这个概念在嵌入式操作系统中比较重要,由于存在任务的调度,它实时系统,可剥夺型内核中是危险的,如同一个安静的水雷。可能会被触发,也可能安然无恙

2010-12-08 17:32:00 471

原创 很形象的比喻

一、三国人物1、刘备的经历告诉我们:集团总裁,完全可以从摆地摊做起。  2、诸葛亮的经历告诉我们:进私企,其实比进国企更有发展空间。  3、吕布的经历告诉我们:频繁的跳槽,直接导致没老板敢录用你。  4、庞统的经历告诉我们:长得太丑,可能会影响你的应聘效果。  5、马谡的经历告诉我们:专业课学得再牛B,工作时基本用不上。  6、杨修的经历告诉我们:在职场上,总搞得比领导高明,你会死得很惨。  7、甘宁的经历告诉我们:有不良前科,不影响你考公务员。英雄不问来路。  8、袁绍的经历告诉我们:如果市场自由竞争,国

2010-11-25 15:19:00 1276

原创 Some functions about time

    时间的储存,通过预定义的两种结构来存储:1.日历时间(Calendar Time)是通过time_t数据类型来表示的,用time_t表示的时间(日历时间)是从一个时间点(例如:1970年1月1日0时0分0秒)到此时的秒数。在time.h中,我们也可以看到time_t是一个长整型数:#ifndef _TIME_T_DEFINEDtypedef long time_t;        #define _TIME_T_DEFINED     #endif2.在标准C/C++中,我们可通过tm结构来获得日期

2010-11-09 15:41:00 426

转载 使用"文件浏览"对话框选择文件夹

<br /> 原文:http://babybandf.blog.163.com/blog/static/61993532009313533142/<br />    在进行文件操作时,除了使用"文件"对话框来获得文件路径外,还常常要获得文件夹的路径,这就需要使用"文件浏览"对话框

2010-11-09 14:49:00 643

转载 创建文件夹

#include#includevoid CreateConfigFolder(string str){   CString pathname = str.c_str();if(pathname.Right(1) != "//"){     pathname += "//" ; }int end = pathname.ReverseFind('//'); int pt = pathname.Find('//');if (pathname[pt-1] == ':'){     pt = pathname.Fi

2010-11-09 14:45:00 398

原创 Some commonly used commands in linux

1.查找   find  [path] [-arg] filename例如:find /root -name  ps2.查看进程ps-a 显示终端上的所有进程,包括其他用户的进程-e 显示所有进程,环境变量-f 全格式-r 只显示正在运行的进程常用:ps aux | grep ttserverps ef | grep ttserver3.top动

2010-11-05 14:45:00 537

原创 Some functions and codes about date

#include typedef struct _DATES{ int  year; int  month; int  day;}DATES;//获取某月的天数int GetDaysOfMonth(int year, int month){ bool judge = false;  int  daysOfMonth[12] = {31, 0, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; if ((year%4 == 0) && (year%100 != 0) || (y

2010-11-04 17:25:00 382

转载 C++ vector用法

原文:http://hi.baidu.com/andywangcn/blog/item/7ecfeba54dea37fb9152ee38.html        标准库vector类型使用需要的头文件:#include 。        C++内置的数组支持容器的机制,但是它不支持容器抽象的语义。要解决此问题我们自己实现这样的类。在标准C++中,用容器向量(vector)实现。容器向量也是一个类模板。        vector 是一个类模板。不是一种数据类型,vector是一种数据类型。Vector的存储

2010-11-02 15:15:00 902

转载 C/C++ volatile关键字用法总结

转自:http://blog.csdn.net/one132/archive/2009/07/06/4325378.aspx    volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。    使用该关键字的例子如下:int volatile nVint;    当要求使用volatile 声明的变量的值的时候,系统总是重新从它所在的内

2010-10-28 16:56:00 496

转载 C/C++ static关键字用法总结

文章出处:www.firnow.com):http://dev.firnow.com/course/3_program/c++/cppjs/2008530/118128.htmlstatic关键字是C, C++中都存在的关键字。static从字面理解,是“静态的“的 意思,与此相对应的,应该是“动态的“。static的作用主要有以下3个:(1)扩展生存期;(2)限制作用域;(3)唯一性;1、扩展生存期     这一点主要是针对普通局部变量和static局部变量来说的。声明为static的局部变量的生存期不再

2010-10-28 16:26:00 521

实现MFC对话框最大化

解决MFC窗口最大化后,对话框中的控件也相应的变化大小

2010-08-26

newclient.rar

实现1/4/9/16画面切换的功能的一个例子,常用于视频监控软件

2010-08-18

MFC编程中对话框之间参数传递的两种方法

MFC中对话框之间的参数传递的两种方法的两个实例。对MFC初学者会有很大帮助。

2010-08-02

清华大学C++教程(含例题及答案)

里面有PPT课件和带答案的C++例题~很不错 分享一下!

2009-11-11

51单片机 指令速记(转)

随着微电子技术和超大规模集成电路技术的发展,单片微型计算机以其体积小、 性价比高、功能强、可靠性高等独有的特点,在各个领域(如工业控制、家电产 品、汽车电子、通信、智能仪器仪表)得到了广泛的应用。学习、使用单片机的 人越来越多,而生产单片机的厂家很多,单片机种类繁杂,不知如何选择。据统 计,八位单片机占全球单片机销量的65%。在八位单片机中,Intel 公司的8051 单片机内核已成为8 位单片机事实上的标准。因此,对初学者而言,选择8051 单片机来学习不失为明智的选择。 学习单片机,除了搞清单片机内部功能、存储空间分配及I/O 接口外,还应 掌握其指令系统。MCS-51 共有111 条指令,现介绍我们总结出的快速记忆MCS -51 指令的方法,供大家参考。

2009-04-07

ARM经典300问[arm初学者必看]

第1 问: Q:请问在初始化CPU 堆栈的时候一开始在执行mov r0, LR 这句指令时处理器是什么模式 A:复位后的模式,即管理模式. 第2 问: Q:请教:MOV 中的8 位图立即数,是怎么一回事 0xF0000001 是怎么来的 A:是循环右移,就是一个0—255 之间的数左移或右移偶数位的来的,也就是这个数除以4 一直除, 直到在0-255 的范围内它是整数就说明是可以的! A:8 位数(0-255)循环左移或循环右移偶数位得到的,F0000001 既是0x1F 循环右移4 位, 符合规范,所以是正确的.这样做是因为指令长度的限制,不可能把32 位立即数放在 32 位的指令中.移位偶数也是这个原因.可以看一看ARM 体系结构(ADS 自带的英文文 档)的相关部分.

2009-03-16

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

TA关注的人

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