上一页 1 2 3 4 5 6 7 8 ··· 39 下一页
摘要: 进程间通讯应该是老的内容了,相信用VC的大侠们都知道,书本上也都有介绍。我在这只是对自己用过的东西简单的总结一下,希望对有兴趣者有帮助。WINDOWS中进程间通讯的方式很多,如:消息机制,共享内存机制,SOCKET,COM,RPC等等,需要时可以根据具体情况来选择使用的方式。我在这本文中仅介绍进程间的自定义消息通讯机制。1,WINDOWS中自定义消息的定义和使用;在WNDOWS中消息分系统消息和自定义消息。系统消息定义从0到0x3FF,使用0x400到0x7FFF定义自己的消息。Windows把0x400定义为WM_USER。如果想定义自己的一个消息,可以在WM_USER上加上一个值:#def 阅读全文
posted @ 2010-12-27 23:18 GT_Andy 阅读(1757) 评论(0) 推荐(0) 编辑
摘要: 应用程序和驱动程序的通信过程是:应用程序使用CreateFile函数打开设备,然后用DeviceIoControl与驱动程序进行通信,包括读和写两种操作。还可以用ReadFile读数据用WriteFile写数据。操作完毕时用CloseHandle关闭设备。我们比较常用的就是用DeviceIoControl对设备进行读写操作。先看看DeviceIoControl是怎么定义的:BOOL DeviceIoControl( HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOu 阅读全文
posted @ 2010-12-27 23:10 GT_Andy 阅读(617) 评论(0) 推荐(0) 编辑
摘要: 常言道:物以类聚,人以群分。视频文件也不例外,细细算起来,视频文件可以分成两大类:其一是影像文件,比如说常见的VCD便是一例。其二是流式视频文件,这是随着国际互联网的发展而诞生的后起视频之秀,比如说在线实况转播,就是构架在流式视频技术之上的。   影像格式(Video)   日常生活中接触较多的VCD、多媒体CD光盘中的动画……这些都是影像文件。影像文件不仅包含了大量图像信息,同时还容纳大量音频信息。所以,影像文件的“身材”往往不可小觑,动辄就是几MB甚至几十MB。  1、AVI格式  如果你是一名游戏玩家,应该会注意到很多游戏的片首动画都是AVI格式的吧。比如很多人喜欢玩的《仙剑奇侠传》,片 阅读全文
posted @ 2010-12-26 20:35 GT_Andy 阅读(990) 评论(0) 推荐(0) 编辑
摘要: 1 YUV与RGB彩色空间变换 在考虑人的视觉系统和阴极射线管(CRT)的非线性特性之后,RGB和YUV的对应关系可以近似地用下面的方程式表示: Y = 0.299R + 0.587G + 0.114B U = - 0.147R- 0.289G + 0.436B V = 0.615R - 0.515G - 0.100B 或者写成矩阵的形式,   2 YCrCb与RGB彩色空间变换 数字域中的彩色空间变换与模拟域的彩色空间变换不同。它们的分量使用Y、Cr和Cb来表示,与RGB空间的转换关系如下: Y=0.299R+0.578G+0.114B Cr=(0.5 阅读全文
posted @ 2010-12-26 20:30 GT_Andy 阅读(2399) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2010-12-26 20:25 GT_Andy 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 随着USB设备的不断增加,我们这些开发人员也就多了对USB设备进行驱动程序开发的工作。但是对于很多初学者来说,存在以下三个困难: 一是对WinCE的驱动程序结构了解得太少,没办法得心应手的专注于驱动程序的开发工作; 二是对WinCE自带的USB驱动程序的例子没有弄懂,看到一大堆文件夹结构和源程序思维混乱; 三是几乎没有什么中文的参考资料,不知如何下手。 第三条是很多开发人员都遇到的,我也一样,很多朋友问我有没有什么资料,我也只能说抱歉,因为我也同样有这个问题,一切都靠自己的黑暗中摸索,因此本文不谈第三条。 第一条是可以找到资料的,如《Windows CE .NET系统分析及实验教程》,因此本文 阅读全文
posted @ 2010-12-25 19:39 GT_Andy 阅读(723) 评论(0) 推荐(0) 编辑
摘要: 一.实现multbin 1.首先修改config.bib 比如:#elif defined IMGMULTIBIN; NAME START ADDR SIZE TYPE; ---------------------------------------------------------------- NK 80220000 007DE000 RAMIMAGE SHELL 809FE000 00100000 RAMIMAGE APPS 80AFE000 00100000 RAMIMAGE CHAIN 80BFE000 00002000 RESERVED ; XIP chain info R 阅读全文
posted @ 2010-12-25 19:30 GT_Andy 阅读(821) 评论(0) 推荐(0) 编辑
摘要: 在Windows CE 6.0中,内核(Kenerl)和OEM代码被分成oal.exe、kernel.dll和kitl.dll三个部分,其中启动代码(startup)和OAL层的实现部分不再与内核链接生成NK.exe,取而代之的是启动代码(startup)和硬件相关且独立于内核的OAL层的实现部分编译成oal.exe,而与内核相关且独立于硬件的OAL层代码包含在kernel.dll中;内核无关传输层(KITL)的支持代码从OAL层分离出来编译成kitl.dll。 从表面上看,好像只是代码重新组合了一下,从帮助文档中BSP的移植过程看好像也是这么一回事,实际上,整个Windows CE 6.0内 阅读全文
posted @ 2010-12-25 19:27 GT_Andy 阅读(1165) 评论(0) 推荐(0) 编辑
摘要: CE用*.bib來决定(reloade?) memory layout。一般的project中會包含兩個 image : bootloader , OS,所以Project中會有 boot.bib和config.bib。以下大略說明bib的內容:OEMAddressTable這個table宣告在code中,用來放置在mmu的位址轉換register中。所以這個Table的內容是 Virtual - Physical Address,格式:Virtual, Physical, SizeCE內的code address都是virtual address。藉由這個table,轉換到實體的addres 阅读全文
posted @ 2010-12-25 17:57 GT_Andy 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 对于嵌入式系统来说,一般都需要一个bootloader来下载和引导操作系统,常用的bootloader有eboot,uboot以及vivi等,对于windows ce来说最理想的bootloader当然是eboot(我也做了利用uboot下载和引导ce,以后我会介绍)。下面我就把自己开发eboot的过程和大家分享。eboot的流程可以如下图所示: 1)eboot和nk公用一段起始代码fw.s,所以我们会在eboot文件夹下的arm子文件夹找到fw.s,里面就一句话: INCLUDE ..\\..\\kernel\\hal\\arm\\fw.s,对于这段起始代码我就不详细分析,无非是建立好中断向 阅读全文
posted @ 2010-12-25 17:54 GT_Andy 阅读(392) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 39 下一页