- 博客(45)
- 资源 (5)
- 收藏
- 关注
原创 wince driver中,与中断关联过的EVENT,在IST线程中使用WaitForMultipleObjects fail出错
最近在做wince的驱动中,想在一个IST线程中处理两个硬件中断,自己想偷懒,不想用两个线程来做,故就用WaitForMultipleObjects函数去等待那两个中断线程,一直不能成功。用GetLastError(),获取msg全是87,说是传参数有问题,但是我两个事件的创建都是成功的啊,没有相应的error的log信息。郁闷了一个下午,后来在查了帮助ms的帮助文档,终于找到原因了,我不能那样干。自己记性不好,故记录在这里,以防自己忘记。同时希望,能对和我犯同样错误的看客有所帮助。呵呵与中断关联过的EVE
2011-05-04 10:38:00
1804
原创 栈内存与堆内存的区别
<br />http://blogold.chinaunix.net/u3/111709/showart_2518678.html<br />栈内存与堆内存的区别<br />一:程序的内存分配<br />栈区(stack)有编译器自动分配释放,存放函数的参数,局部变量等.<br />堆区(heap)一般由程序员分配和释放,否则就由OS回收。堆用于存放全局变量,静态变量,常量字符串<br />和函数代码(函数体的二进制代码).<br />二:申请后系统的响应<br />栈:只要栈的剩余空间大于所申请的空间,系
2011-04-09 23:37:00
1013
原创 wince系统下用arm汇编实现特定长度的memory拷贝函数,降低系统cpuloading
之前有做avin优化,降低cpu的使用率时。有用自己arm汇编来实现一个内存拷贝的函数,主要是用来替换原来驱动程序中memcpy函数。现在将源码贴在这里,怕自己以后遗忘。呵呵。1.知识要点: arm汇编 arm体系架构下的apcs vs2005的编译器不支持内嵌汇编,但可以编译arm汇编文件,生成obj文件。2.源代码:因为这个函数是为avin驱动专门写的,所以这个现在只支持长度是4字节倍数的拷贝。函数原型:void _avin_memcpy(unsigned char* dst,unsigne
2011-04-05 09:05:00
1450
原创 wince下查看驱动启动加载时间:celog
最近开始负责wince kernel部分了,现在项目也比较多。不过现在做完一个项目的kernel部分的驱动,现在压力轻了许多,其他两个项目的kernel部分的code,改起来也就比较容易了。呵呵。 系统启动时间短,对于产品的来说,是一个重要的地方。想办法,降低各个drivers的启动加载时间,是我们的做底层driver的一个重要的工作要点吧。 首先,我们要降低derivers的启动加载时间,那我们首先要知道一个项目里的,各个drivers的启动时间的具体情况。查看wince的driv
2011-03-06 16:16:00
2040
原创 今天终于体会到关键地方为什么用汇编的好处了。
视频这块的工作都快一年多了。发现在自己还是那么多菜。继续努力。言归正传。 由于我们用的是三星的s5p6443芯片(其实就是阉割版的6440或者s5p6410),没有camera的接口,但我们公司的做的gps设备基本都需要AVIN功能,主要用来做倒车镜功能来用。所以我一们一直采用s5p6443+fpga+tvp5150的架构来做avin的功能。其实,基本工作原理就是,tvp5150将标准的模拟信号(NTSC/PAL/SECAM制式)转换为YCBCR数字信号后,送给fpga,fpga再将其
2011-02-27 20:39:00
2061
1
转载 [转]深入理解sizeof
<br />深入理解sizeof<br /><br /><br />作者:房秉毅<br />转自:http://www.vckbase.com/document/viewdoc/?id=1054<br /><br /> 最近在论坛里总有人问关于sizeof的问题,并且本人对这个问题也一直没有得到很好的解决,索性今天对它来个较为详细的总结,同时结合strlen进行比较,如果能对大家有点点帮助,这是我最大的欣慰了。<br /><br />一、好首先看看sizeof和strlen在MSDN上的定义:<br />
2011-02-09 11:33:00
680
原创 wince debug信息实现:DEBUGMSG,RETAILMSG,NKDbgPrintfW的实现
在BSP中,我们一般会用3个函数来实现打印:DEBUGMSG,RETAILMSG,NKDbgPrintfW。简单介绍一下:(1)NKDbgPrintfW(..)函数一般只在OAL中使用,可以直接从串口中打印出信息,不受编译选项的影响。(2)DEBUGMSG(..)函数只有在工程在Debug模式下编译以后,才会打印出信息来。如果是在Release模式下编译的,就不会打印信息出 来。(3)RETAILMSG(..)函数在Debug模式下和Release模式下编译都会打印出调试信息,但是如果你在工程
2010-12-20 21:08:00
5110
1
原创 如何避免outlook发信,忘记标题和附件
<br />http://hi.baidu.com/%CA%AB%D5%B9/blog/item/c7f8dff9d032d658242df275.html<br />如何避免outlook发信,忘记标题和附件-在outlook 2003中添加“空邮件标题”和“空附件”检查功能2007-05-22 16:44如何避免outlook发信,忘记标题和附件<br />在outlook 2003中添加“空邮件标题”和“空附件”检查功能<br />最近经常发现发Email的时候忘记写邮件标题或遗漏附件,于是在网上搜索
2010-11-30 18:01:00
2839
转载 实现WinCE的转屏(屏幕旋转):转自互联网
<br />实现WinCE的转屏(屏幕旋转)<br /><br /> 在WinCE中实现屏幕的旋转(当然角度只能是90度的整数陪),首先确认显示设备的驱动是否支持旋转功能。在显示设备支持的前提下,可以通过以下两种方法实现屏幕的旋转:<br />一、通过修改注册表实现<br /> 默认情况下,屏幕都是正常显示的,也就是说翻转角度为0度。可以通过修改注册表来做屏幕翻转,通过修改”Angle”的值来完成,具体设置如下:<br /> [HKEY_LOCAL_MACHINESystemGDIRota
2010-11-25 10:58:00
1178
原创 CCIR601和CCIR656标准
<br />CCIR601和CCIR656标准<br />英文缩写: CCIR (Consultative Committee of International Radio) <br />中文译名: 国际无线电咨询委员会 <br />分 类: 其它 <br />解 释: CCIR是国际无线电咨询委员会的简称。成立于1927年,是国际电信联盟(ITU)的常设机构之一。主要职责是研究无线电通信和技术业务问题,并对这类问题通过建议书。 <br />从1993年3月1日起,与国际频率登记委员会(IFRB)合并,
2010-10-09 13:12:00
3421
2
转载 转:S3C2440的camera接口特性及WinCE 下的驱动(3)
S3C2440的camera接口特性及WinCE 下的驱动时间:2010-09-10 10:28:18 来源:单片机与嵌入式系统 作者:魏银库<br /> <br /> 注意:C通道和P通道应分别分配。分配成功后,应将4组YCbCr信号的起始地址与分配给C通道的DMA缓冲区地址关联起来,将4组RGB信号的起始地址与分配给P通道的DMA缓冲区地址关联起来。格式不同时,关联的空间大小是不同的。如果C通道格式为YCbCr4:2:2,图像宽度为CoDstWidtlh,图像高度为CoDstHeight,分配的D
2010-09-19 14:40:00
1105
转载 转:S3C2440的camera接口特性及WinCE 下的驱动(2)
S3C2440的camera接口特性及WinCE 下的驱动时间:2010-09-10 10:28:18 来源:单片机与嵌入式系统 作者:魏银库2 WinCE下的驱动开发 目前,我国市场上的CCD摄像头只有模拟视频输出接口,显然它不能和S3C2440的camera接口直接连接,硬件上需要增加一块解码芯片。解码芯片把CCD的模拟信号解码为BT.601/656 YUV4:2:2格式信号,这个信号和CAMIF信号是匹配的,因此解码芯片输出就可以直接连接到S3C2440的camera接口。典型的解码芯片为SAA
2010-09-19 14:39:00
1023
转载 转:S3C2440的camera接口特性及WinCE 下的驱动(1)
S3C2440的camera接口特性及WinCE 下的驱动时间:2010-09-10 10:28:18 来源:单片机与嵌入式系统 作者:魏银库摘要:分析S3C2440的camera接口特性,介绍当摄像设备为CCD摄像头时,在WinCE 5.0/6.O操作系统环境下开发camera驱动的方法。该方法弥补了目前国内在WinCE 5.0/6.0操作系统环境下CCD摄像头无法连接到S3C2440的camera接口的缺陷。关键词:camera接口;WinCE;驱动 S3C2440是应用十分广泛且适用于嵌入式系统
2010-09-19 14:37:00
1150
原创 使用tvp5150,时关于画面颜色漏色与画面偏移的问题
<br />最近刚做完一个基于avin驱动。遇到的bug总结一下:<br /> 硬件:tvp5150+fpga+s5p6443<br /> 系统:基于wince6.0<br />因为s5p6443没有camera接口,所以就只能是tvp5150将模拟信号,转换为YUV,然后经过fpga转为rgb566,再通过sd驱动,将rgb565的数据送给avin驱动,avin驱动按奇偶场合并成一帧后,经s5p6443的post功能放大或缩小的合适的panle大小,在推屏到framebuffer。<br />其中遇到的一
2010-09-15 16:29:00
4606
转载 转:哈哈,微软的CE6简直是大门洞开啊
原文地址:http://www.armce.com/bbs/thread-1131-1-3.html最近通过看LocalAlloc的问题结合之前研究如何用AP去读写CE6的物理地址的过程,发现CE6的内核存在巨大安全隐患。如果说CE5是蜗牛壳,那么CE6就是鸡蛋壳了,骚味动点脑筋,CE6的核心就能马上被你控制,下面简述几个CE6设计上的败笔。败笔1:KDataStuct位置固定稍微了解一点wi
2010-05-06 18:07:00
807
转载 CE开发中可能遇到的问题
原文地址:http://www.5icceu.com/article.asp?id=209701. 如何加入或删除BSP中的模块 这里以display驱动为例来讲解 BSP的根目录下有一个$(platform name).bat文件里面定义了一系列的开关,比如: set BSP_NODISPLAY= 或 set BSP_NODISPLAY=1 我们可以在wo
2010-04-23 13:16:00
990
原创 wince下,修改private下的代码,如何进行快速编译,比如之编译自己修改部分的代码
1. vs2005的命令行编译方式下,找到你所修改代码所属的lib,或者,dll的目录进入你修改的代码目录,用sysgen_capture 模块名2. 生成source文件3. 拷贝要修改的代码目录,拷贝自己bsp下,删除掉原来的source文件,将刚才在原始目录里生成的,你所需要的模块名的那个source文件改成source 例如:源来:source.
2010-04-22 15:18:00
1779
转载 转:了解MmMapIoSpace以及MmUnmapIoSpace函数的实现原理以及实现方法
了解MmMapIoSpace以及MmUnmapIoSpace函数的实现原理以及实现方法 收藏 了解MmMapIoSpace以及MmUnmapIoSpace函数的实现原理以及实现方法 Code 1 源码路径 2 H:/WINCE600/PUBLIC/COMMON/OAK/DRIVERS/CEDDK/DDK_MAP 3 目的,了解MmMapIoSpace以及MmUnmapIoSpace函数的实现
2010-04-01 14:18:00
1226
转载 转:CE6内核启动过程-新角度
CE6内核启动过程-新角度内核, 角度转自:http://www.armce.com/bbs/thread-403-1-2.html开发人员有必要理解CE系统启动过程。首先回顾一下系统怎样建立起来的。微软工具链生成.exe和.dll文件。这些文件都包含了Portable Executable格式,简称PE格式。它们的结构都是一样的:1、 是一种common objec
2010-03-18 17:59:00
631
原创 wince6.0电源管理之应用程序调用SetSystemPowerState的执行过程
wince6.0电源管理之应用程序调用SetSystemPowerState的执行过程欢迎转贴,但请保留源blog链接,谢谢。http://blog.youkuaiyun.com/bbw2008/archive/2010/03/18/5393463.aspx如有错误,欢迎各位看客,不吝赐教,小弟先谢过了。SetSystemPowerState() ----------------ap layer
2010-03-18 16:55:00
4793
转载 转wince team blog:wince驱动开发人员必看的绝世好文章:Memory marshalling in Windows CE( Windows CE的内存地址重构),
原文地址:http://blogs.msdn.com/ce_base/archive/2006/11/09/Memory-marshalling-in-Windows-CE.aspxMemory marshalling in Windows CE Posted by: Sue Loh This article explains how memory access and memor
2010-03-11 09:42:00
1288
原创 深入剖析wince6.0下kernelIOctl()的调用过程分析
wince6.0下kernelIOctl()的调用过程分析一初始化部分:1.LoaderInit() //:private/winceos/coreos/nk/kernel/loader.c{......... // load OAL ioctl dll; this is valid only if image has coredll LockLoader (g_pprcNK);
2010-03-03 16:56:00
1700
原创 三星arm,6410,6400,6443硬件资源图比较
最近在看三星公司的s5p6443的芯片手册,同时对比了一下,这款新的arm处理器,与6410和6400的硬件资源区别1>6443硬件资源图:2>6400硬件资源图:3》6410硬件资源图:
2010-03-03 14:43:00
2425
转载 如何写出高效优美的C语言代码
如何写出高效优美的C语言代码 转自:http://hi.baidu.com/cusney/blog/item/ac3259ec2b0c852063d09f72.html2009/02/16 10:02程序能跑起来并不见得你的代码就是很好的c代码了,衡量代码的好坏应该从以下几个方面来看1,代码稳定,没有隐患。2,执行效率高。3,可读性高。4,便于移植。
2009-12-17 11:45:00
762
转载 wince驱动的分类问题
2009-11-23 13:50 http://hi.baidu.com/relayon 首先是wince驱动的分类问题。按照书上讲的说CE下驱动分成单体驱动和分层驱动,而看到另一种说法是本机驱动和流式驱动。经过microsun大哥的指点,把这两种分类法分开了。在这里引用一下:“单体与分层只是从代码的形式上做的分类.分层驱动代码上分为PDD与MDD,一般的微软
2009-12-14 15:59:00
468
原创 【转】C语言中如何使用宏 包括单双井号 可变参数
【转】C语言中如何使用宏 包括单双井号 可变参数2009-05-04 11:15C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念)。下面对常遇到的宏的使用问题做了简单总结。关于#和##在C语言的宏中,#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量通过替换后在其左右
2009-12-14 15:53:00
530
转载 WinCE驱动开发 -- volatile关键字
转自:http://hi.baidu.com/cnxfy/blog/item/d68efbcdde4b1c1801e92894.html http://hi.baidu.com/cnxfyvolatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改。用volatile关键字声明的变量每一次被访问时,执行部件都会从相应的内存单元中取出其值。
2009-12-14 15:12:00
619
转载 ARM体系的各种异常的分析(转)
ARM体系的各种异常的分析(转)ARM 2009-08-11 11:22 阅读29 评论0 字号: 大大 中中 小小 ARM体系的各种异常的分析(学习日记) - [ARM7TDMI]版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://kellycan.blogbus.com/logs/10669519.html1.复位异常(1)当内核的
2009-12-03 20:11:00
2099
原创 查看linux内核版本
查看内核版本: uname -a more /etc/*release more /etc/redhat-release more /proc/version 查看C
2008-03-15 20:41:00
1035
原创 vi命令一览表
vi命令一览表- - 进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与patte
2008-03-15 08:36:00
649
原创 一位软件工程师的6年总结作者:成晓旭 -转自互联网
一位软件工程师的6年总结作者:成晓旭“又是一年毕业时”,看到一批批学子离开人生的象牙塔,走上各自的工作岗位;想想自己也曾经意气风发、踌躇满志,不觉感叹万千……本文是自己工作6年的经历沉淀或者经验提炼,希望对所有的软件工程师们有所帮助,早日实现自己的人生目标。本文主要是关于软件开发人员如何提高自己的软件专业技术方面的具体建议,前面几点旨在确定大的方向,算是废话吧。谨以此文献给那个自己为你奉献
2008-03-15 08:33:00
855
原创 开始准备做MP3了
上学期的考嵌入式系统 设计师过了,现在不打算考始末证了,要好好做点实在的东西了,做MP3资料一准备的查不多了,这学期就开始了,马上要找工作了。加油,鼓励一下自己
2008-03-09 11:13:00
542
原创 开始学习vxowrks了,从网上找的关于按装的方法
VxWorks 5.5 安装方法!2007-09-11 14:26VxWorks 5.5 for ARM 安装简介 现在用vxworks的人越来越多,但很多爱好者不只如何安装,小弟总结了一下,介绍如下!安装方法(请安装在win2000/NT中,9x安装有问题!):1、先安装daemon虚拟光盘软件;2、使用daemon tool映射(mount)虚拟文件(*.cue,*.bin);3、一路选择默
2008-03-09 11:06:00
1532
嵌入式系统开发的模式与流程.pdf
2016-01-09
Windows Embedded CE 6.0 Fundamentals.chm
2010-01-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人