自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (1)
  • 收藏
  • 关注

转载 STL 基本容器

在STL中基本容器有: string、vector、list、deque、set、mapset 和map都是无序的保存元素,只能通过它提供的接口对里面的元素进行访问set:集合, 用来判断某一个元素是不是在一个组里面,使用的比较少map:映射,相当于字典,把一个值映射成另一个值,如果想创建字典的话使用它好了string、 vector、list、deque、set 是有序容器1

2013-09-09 20:05:56 541

转载 Linux 信号signal处理机制

信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念、Linux对信号机制的大致实现方法、如何使用信号,以及有关信号的几个系统调用。 信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实质和使用很象中断。所以,信号可以说是进程控制的一部分。 一、信号的基本概念 本节先介绍信号的一些基本概念,然后给出一些基本的信号类型和信号对

2013-04-21 21:44:05 486

转载 openGL相关博客

http://blog.csdn.net/Augusdi/article/category/685679/1openGL博客,介绍非常详细,可以参考。

2012-11-28 08:21:55 456

转载 用malloc()函数更好还是用calloc()函数更好

函数malloc()和calloc()都可以用来动态分配内存空间,但两者稍有区别。malloc()函数有一个参数,即要分配的内存空间的大小:void*malloc(size_tsize);calloc()函数有两个参数,分别为元素的数目和每个元素的大小,这两个参数的乘积就是要分配的内存空间的大小。void*calloc(size_tnumElements,size_

2012-08-10 10:57:39 756

转载 gcc/g++编译makefile文件

2011-05-24 17:19:05|  分类:linux |  标签:|字号大中小 订阅(本文主要以gcc为演示,如果是C++程序直接将给 gcc改为g++即可)1.         gcc与g++编译流程:1)         编译流程:2)         预处理:生成.i的预处理文件。? 只激活预处理,这个不生成文件,需要把它重定向一个

2012-08-10 10:19:29 2154

转载 uImage与zImage的区别

内核编译(make)之后会生成两个文件,一个Image,一个zImage,其中Image为内核映像文件,而zImage为内核的一种映像压缩文件,Image大约为4M,而zImage不到2M。        那么uImage又是什么的?它是uboot专用的映像文件,它是在zImage之前加上一个长度为64字节的“头”,说明这个内核的版本、加载位置、生成时间、大小等信息;其0x40之后与zIm

2012-08-05 12:56:59 547

转载 LTIB详解(六)部署文件

让内核/根文件系统 运行在目标板上怎样让内核和根文件系统运行在目标板上呢,最常见的方法是使用tftp下载内核到目标板上,然后通过适当的参数引导内核来挂载根文件系统(通过主机使用NFS)。5.2.1使用NFS从主机导出根文件系统我们介绍一些需要执行的典型的步骤(需要root权限):1.                  选择一个在您的网络上未被使用的IP地址分配给您的目标。同

2012-08-05 12:56:25 1253

转载 LTIB详解(五)编译新的U-Boot

LTIB原来的U-boot版本为u-boot-2009.11-rc1,本节的内容是移植最新的u-boot到ltib中。移植成功后可以在原来的uboot版本和现在的uboot版本中进行选择编译。本小节只讲述如何如何移植,u-boot本身的分析可以参考本人编著的《嵌入式开发应用笔记》。从denx官网下载u-boot-2012.04-rc3(这时本笔记使用的版本,您也可以下载其他的希望移植的版本,此

2012-08-05 12:55:39 1177

转载 LTIB详解(四)根文件系统与镜像文件

根文件系统4.7.1怎样添加文件到目标根文件系统,但是不创建一个包您需要创建一个merge目录,这儿有2个选项:1.顶层merge目录,适用于所有目标2.  平台特定的merge目录平台特定的merge目录会覆盖顶层的merge目录,也将覆盖rootfs中相应的文件。例:您有一个git版本的LTIB,已经编译了tqm823l的默认配置,现在,您需要添加一个平台specifi

2012-08-05 12:55:11 1057

转载 LTIB详解(三)包和源码

LTIB 中的包4.3.1  查看哪些包是使能的,并且可以安装在配置ltib之前,您可以在一个ltib配置文件上运行bin/listpkgs 。例如,对于mpc8548cds,您可以运行:# bin/listpkgs config/platform/mpc8548cds/deconfig这将列出所有可以选择的的包。那些在“Enable”列有一个‘y’将默认编译/安装。如果您已经

2012-08-05 12:54:41 1727

转载 LTIB 详解(二)配置选项与命令

LTIB 编译配置选项根据说明文档,ltib 可以通过以下的命令配置:* # ./ltib          安装后第一次运行,采用默认配置* # ./ltib -m config  仅配置* # ./ltib --configure 配置和编译执行./ltib是LTIB的默认配置,事实上可以通过./ltib –c 来配置编译选项。运行该命令,将出现一个蓝色的配置窗口,类似Li

2012-08-05 12:54:09 1737

转载 LTIB 详解(一) 安装与卸载

本文中,使用的linux操作系统为Ubuntu10.1,里面但凡涉及到与操作系统相关的配置和更改,大部分是针对Ubuntu而言,当然,因为有些地方是说明文档的翻译,它的描述可能是基于另外的操作系统,不过这并不会影响您对本文的理解。       部分内容是参照英文文档进行翻译,限于英语翻译水平,难免存在错误,在此恳请各位朋友予以指正。同时也非常欢迎大家和我进行技术上的交流。有兴趣的朋友可以记住我

2012-08-05 12:53:07 1095

转载 ltib 使用 小试一把

第一步 解压出源码包$./ltib -m prep -p kernel 第二步 修改源码包解出的源码包在/rpm/BUILD下,我的是linux-2.6.25。现在可以对这个源码包进行修改操作。添加ATP8624的驱动主要有三步:把atp8624.h和atp8624.c复制进source tree;修改其所在目录的makefile添加编译选项;修改其所在目录的kconfig文件添加

2012-07-27 11:49:03 830

转载 linux 共享内存

"developerWorks 中国Linux文档库Linux环境进程间通信(五): 共享内存(上)郑彦兴 ([email protected]), 国防科大攻读博士学位郑彦兴,国防科大攻读博士学位。联系方式:[email protected] 简介: 共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式。两个不同进程A、B共享内

2012-06-08 16:37:56 542

转载 linux 共享内存

"developerWorks 中国Linux文档库Linux环境进程间通信(五): 共享内存(下)郑彦兴 ([email protected]), 国防科大攻读博士学位郑彦兴,国防科大攻读博士学位。联系方式:[email protected] 简介: 在共享内存(上)中,主要围绕着系统调用mmap()进行讨论的,本部分将讨论系统V共享内

2012-06-08 16:36:47 499

转载 linux优先级调度策略2

一篇文章介绍了Linux下的调度策略和优先级,在Ubuntu09.10上的一些特性,这里测试一下其中的两种特性,SCHED_OTHER和SCHED_RR,还有就是优先级的问题,是不是能够保证,高优先级的线程,就可以保证先运行。    下面的这个测试程序,创建了三个线程,默认创建的线程的调度策略是SCHED_OTHER,其余的两个线程的调度策略设置成SCHED_RR。我的 Linux的内核版本是

2012-04-19 11:53:19 552

转载 linux优先级调度策略1

Linux内核的三种调度策略:  1,SCHED_OTHER 分时调度策略,2,SCHED_FIFO实时调度策略,先到先服务。一旦占用cpu则一直运行。一直运行直到有更高优先级任务到达或自己放弃   3,SCHED_RR实时调度策略,时间片轮转。当进程的时间片用完,系统将重新分配时间片,并置于就绪队列尾。放在队列尾保证了所有具有相同优先级的RR任务的调度公平Linux线程优先级

2012-04-19 11:51:46 599

转载 freescale ltib 使用说明1

freescale LTIB使用总结12009-11-30 9:57这里附上很久以前写的LTIB使用总结,学习资料主要来自飞思卡尔的板子MPC8349E-mITXE板子的资料,主要参考了,写的不是很详细,而且后来发现中间还有部分错误,不过懒得再修改了。板级支持包BSP的下载http://www.freescale.com/powerbsp 搜索MPC8349E-

2012-03-23 15:29:52 837

转载 freescale ltib 使用说明2

freescale LTIB使用总结22009-11-30 9:59上面已经对ltib编译流程及主要操作做了大致描述,下面分别描述内核修改配置以文件系统添加应用程序和脚本在需要修改内核配置,比如为内核添加编译新的模块功能时,该如何完成,下面以将支持8021Q VLAN协议的模块编译进我们需要的内核中为例来演示:##首先按照前面所说的简单快捷的方式,执行命令:$

2012-03-23 15:28:03 720

原创 linux NFS相关tip

This is a tip about how to update special file on rootfs on bench via NFS. Initial phase:prepare a  writable rootfs on bench and exported shared directory.               1 modify /home/user/LTIB

2012-03-12 12:23:24 505

原创 linux 常用提示

find . | xargs grep -n "linux_ltib.mak"  在目录文件中搜索字符串makefile里:= 定义的变量如果值内容本身就是变量,他不会延伸。如果是=,会延伸。所以在使用时,不需要延伸的时候一定要加上: ,防止不可控的情况。Make -n 所有命令顺序显示,但不执行Vm 中静态IP的设置:1 config a static ip(192.168.

2012-03-12 10:49:27 291

转载 linux 中NFS环境配置

建立的目的:可以直接在开发板上挂载开发主机上的文件系统,减少程序的烧写次数,提高程序开发速度。NFS(Network File System, 网络文件系统)可以通过NFS把远程主机的目录挂载到本机,使得访问远程主机的目录就像访问本地目录一样方便快捷。NFS一般是实现linux系统之间实现共享.当然和unix之间也应该可以使用它来实现共享。但如果需要在linux和windows系统

2012-03-12 10:45:27 428

原创 半透效果实现

evc下两种实现半透明背景的函数<br />作者:中国嵌入式系统开发<br />实现两张图片叠加,半透明效果。<br />sdmmclogozx.bmp和sdmmclogohangsheng.bmp<br />void CGPS_eDogDlg::TransBitmap(HDC hDC,RECT rect,double Trans)<br />{      <br />    int nWidth   = rect.right - rect.left;                          //

2010-06-03 16:56:00 32562

转载 WINCE的挂起和唤醒过程

挂起的过程:1.先进行平台相关的动作,比如清屏,设置AD,usb等.2.保存芯片所有的寄存器值到一个静态数组(就是堆栈中)3.设置io,关闭kitl等4.呼叫OALCPUPowerOff()进行挂起.  OALCPUPowerOff()是一个位于startup.s中的汇编函数,它按照下面的流程实现挂起功能5.保存通用寄存器r4-r12,lr到堆栈6. 保存wakeup后的地址,MMU寄存器,进入各

2010-05-20 15:41:00 673

原创 Windows Mobile中的文件改变通知

在资源管理器中,删除一个文件,更改一个文件夹名称,都能及时刷新。这是怎么做到的呢?答案是使用了文件改变通知。先看一个结构typedef struct tagSHCHANGENOTIFYENTRY {  DWORD dwEventMask;  LPTSTR pszWatchDir;  BOOL fRecursive;} SHCHANGENOTIFYENTRY;要接收文件改

2009-08-28 14:31:00 412

原创 Windows Mobile下的窗体半透明实现

这里说的半透明,是说把窗体下的桌面内容透出来。windows mobile不像windows那么方便,有SetLayeredWindowAttributes可以使用来实现半透明。在显示一个窗体之前,需要得到得到桌面DC,将其拷贝至内存DC中,再将相应区域的内容拷贝至窗口DC,最后进行半透明处理。用到的函数有GetDCCreateCompatibleDCBitBltAlphaBlen

2009-08-28 14:15:00 440

原创 Windows mobile上获取输入光标位置

用户在输入过程中,光标的位置在不停变化,如何得到这个位置来进行一些操作呢?似乎很简单,GetCaretPos,这个函数能得到光标的位置。看看MSDN上如何说的:GetCaretPosSee AlsoSetCaretPos | POINT | Carets Functions RequirementsOS Versions: Windows CE 1.0 and late

2009-08-28 14:07:00 506

原创 Windows Mobile下实现图片的3D效果

有些时候需要酷酷的效果,来装扮一下我们的程序。以下是类似S1从右至左滑动的效果示意图。     看起来还有点那个意思吧?其实原理并不复杂,用到了一个画图函数StretchBlt。函数功能:函数从源矩形中复制一个位图到目标矩形,必要时按目前目标设备设置的模式进行图像的拉伸或压缩。  函数原型:BOOL StretchBlt(HDC hdcDest, int nXO

2009-08-28 14:07:00 507

原创 windows mobile下实现程序安装和卸载

安装CAB包的方法,网上一查就有:1)ShellExecuteEx;2)CreateProcess;都要借助wceload.exe来实现。当程序安装成功后,我们在设置->系统->删除程序里可以看到已安装程序列表。这些列表信息放在哪里呢?答案是在注册表项HKEY_LOCAL_MACHINE/Security/AppInstall下,在该目录下可以看到刚才提到的相关程序名称。来试试卸载:假如A

2009-08-28 14:06:00 498

原创 Windows Mobile上使用钩子

wince系统对于钩子技术的支持,显然不及windows。有一些技术文档干脆说wince不支持钩子。其实,不尽然。我们还是可以从coredll.dll中,得到一些有用的接口,来实现拦截一些简单的键盘或鼠标的动作。还是代码最有说服力:#define WH_JOURNALRECORD     0#define WH_JOURNALPLAYBACK   1#define WH_KEYBOARD_

2009-08-28 14:05:00 350

原创 windows mobile下文件的压缩与解压缩

zlib是用于数据压缩的函数库,在windows和linux上都被广泛应用。当然,windows mobile上也可以顺利地使用该函数库。先进入到下面的地址去下载一个包,是专门针对wince系统的:http://www.tenik.co.jp/~adachi/wince/zlibce/index.html。其中Download有三项,如果你并不想深入源码的话,选择第三项zlib for Win

2009-08-28 14:05:00 510

原创 windows mobile中区分cmwap或cmnet接入点

我在之前的一篇文章中谈到了使用网络接入点的问题:http://blog.csdn.net/pknife/archive/2008/05/21/2467602.aspx,另外的一篇文章演示了如何创建cmwap接入点:http://blog.csdn.net/pknife/archive/2008/05/22/2469126.aspx。不过,总是觉得什么地方不对劲,说得不清不楚。精心下来仔细研究了

2009-08-28 14:04:00 1265

原创 windows mobile中求存储空间大小

以下函数可得到主内存信息:BOOL GetStoreInformation(   LPSTORE_INFORMATION lpsi );参数定义:typedef struct STORE_INFORMATION {    DWORD dwStoreSize;    DWORD dwFreeSize;} STORE_INFORMATION, *LPSTORE_INFORMATION;以下函数

2009-08-28 14:03:00 372

原创 windows mobile中开发九宫格界面的方法

一)使用按钮控件可以做一个最简单的九宫格界面,就是在对话框放上九个按钮,拉拽对齐。如果想要美观一点,再每个按钮都贴张美图。在ppc上非常好做,此界面可响应触笔和按键动作。smartphone上,微软不推荐使用按钮。二)使用ListCtrl(ListView)控件在对话框上使用ListCtrl控件,设置某些属性:View属性设为Icon,等等。使用CListCtrl和CImageList的组合,

2009-08-28 14:03:00 6249

原创 WInCE下线程的事件同步

程序开发中,我们经常会用到多线程。而某个线程的运行可能会依赖或影响另一线程的运行。如果一个线程需要通知其他线程某个事件发生了,可使用Event同步事件。先来看看与Event相关的函数:HANDLE CreateEvent(  LPSECURITY_ATTRIBUTES lpEventAttributes,   BOOL bManualReset,   BOOL bInitialState,  

2009-08-28 14:02:00 246

原创 WinCE下的非常用字符串操作函数

Windows CE是一种Unicode环境,使用wchar_t来描述字符型变量。注意,这并不是说它不支持char型字符,char* p = "你好"同样是合法的,只不过在显示的时候必须转换成wchar_t类型。来看看WinCE下的字符串操作函数:wcscatwcschrwcscmpwcscpywcscspnwcslenwcsncatwcsncmpwcsncpywcsnlenwcspbrkwc

2009-08-28 14:02:00 514

原创 windows mobile上调用摄像头接口

使用SHCameraCapture接口可以调出照相机进行拍照、摄像,并得到图片或视频文件的路径。以下代码进行拍照:SHCAMERACAPTURE shcc;ZeroMemory(&shcc, sizeof(shcc));shcc.cbSize             = sizeof(shcc);shcc.hwndOwner          = NULL;shcc.pszInitialDir

2009-08-28 14:01:00 524

原创 VS2005编译的程序在XP系统下不能运行的解决办法

我们有这样的经验,在VC6.0、VS2003下使用Use MFC in a shared DLL选项编译出来的程序,如果在一台纯洁的机器上运行,会弹出警告,提示我们缺少某些dll。我们乖乖的把那些库收集起来,打包的时候裹到一起就OK了。 可是,在VS2005下,好日子不再有了。在VS2005下使用Use MFC in a shared DLL选项编译出来的程序,在Windows 2003或

2009-08-28 14:00:00 857

原创 Windows mobile下获取系统图标

这个问题其实是由pocket pc的CFileDialog问题引发来的。 CFileDialog打开后,只能选择My Documents下的目录和文件,功能超弱的说(其实应该叫CDocumentFileDialog才对)。 好想自己做一个Dialog啊,就跟PC上一样,可以选择任务目录和文件...... 枝节不叙,捡点重要的来啰嗦。 用到一个CListCtrl控件,

2009-08-28 14:00:00 364

原创 Windows mobile下写IE cookie

登录csdn一次,会记录下用户名和密码,频繁刷新网页时,并不需要频繁登录。这一切归功于cookie。Cookie文件只是个纯粹的文本文件,以换行符(ASCII=10)为分隔符,格式如下:cnt_uid_wwwfa565c5abe27b0eb1f0497csdn.net/153656045017629956594200932566429943116*其中第1行为Cookie名称;第2行是Cookie

2009-08-28 13:59:00 366

嵌入式C语言特性说明

针对嵌入式C语言的特性做的相关解释,对做嵌入式的朋友应该很有帮助

2008-12-25

空空如也

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

TA关注的人

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