windowsCE
shuiii
windowsCE Linux ARM
展开
-
安装WINCE6.0经验和试用版 Plarform Builder 6.0到期后的解决办法
安装WINCE6.0经验和试用版 Plarform Builder 6.0到期后的解决办法今天师妹的WinCE6.0 Platform Builder过期了,打开工程提示已超过180天,问我,我以前只是关注了一下,知道有人问过类似的问题,但是具体怎么做也说不上来。只好google了一下,找到了解决办法:把gooogleman大侠提供的方法贴出来与大家共享之:"在PB安装目录下有个etkremov.转载 2010-04-22 23:24:00 · 1169 阅读 · 0 评论 -
在RELEASE版本中快速定位DATA ABORT的方法
转自:http://www.cnblogs.com/walzer/archive/2007/09/28/909626.html 07年10月11日补充:注意,该方法只能定位显性泄漏,定位到的C语句一定产生泄漏了,但可能这个位置是"理论上"不会出问题的代码.那么这是由于同进程内其他代码泄漏而影响了进程的堆区或栈区(隐性泄漏,这个地方不会产生data abort exception)转载 2009-09-08 12:09:00 · 1021 阅读 · 0 评论 -
2450上实现XIP只用烧写一个文件了?
以前2440上实现XIP非得烧两次image文件,第一次烧XIP.BIN,第二次烧XIPKERNEL.BIN。今天调2450的XIP时居然只用把XIP.bin文件烧进去就可以了。其实也就是ReadOSImageFromBootMedia时,只读XIPKERNEL.bin的大小到内存去执行。难道以前调2440时都没有这样试过???等有时间再把2440拿出来玩玩了要看来。 CINF原创 2009-09-07 17:13:00 · 896 阅读 · 1 评论 -
s3c2450下camera重新手动加载后不能产生中断
最近调试S3C2450+ADV7180的驱动,编译后的DLL总是不能手动加载,每次都需复位一下,才能产生中断,很不方便。 但是每次重新加载也没报出什么错误,但是每次打印出来的逻辑中断号是不一样的。问题似乎找到。 camera每次初始化过程中都会将物理中断映射一个动态的逻辑中断号。 if (!KernelIoControl(IOCTL_HAL_REQUEST_SYSINTR原创 2009-09-02 15:58:00 · 903 阅读 · 5 评论 -
把RES资源文件打包成DLL
在EVC中有时候需要把资源文件打包成DLL分开加载,资源文件太大可以加快加载速度,可以动态更换皮肤,可以自动检测LCD的大小来加载适合屏幕的UI资源,可以加密一些重要的资源文件等等。 先新建一个TEST的对话框工程。TEST.cpp文件主要内容如下: CTestApp::CTestApp() : CWinApp(){ // TODO: add construc原创 2009-06-11 09:27:00 · 1242 阅读 · 0 评论 -
PB5.0导出SDK时出错
之前导出SDK都很顺利 ,看到网上说SDK导出有错误的文章也没有在意过,今天自己也出现这个问题了,贴下解决过程。设置完成后点platform->sdk->build sdk,开始创建SDK 时后, 提示: It is recommedned that you build a run-time image before building an SDK.Otherwise,the原创 2009-06-10 10:24:00 · 772 阅读 · 0 评论 -
EVC中重绘窗口时屏幕会闪动的解决方法
EVC中重绘窗口时屏幕会闪动的解决方法重绘的函数UpdateData、Invalidate、InvalidateRect和UpdateWindow。 重绘控件时一般用UpdateData函数。 当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对原创 2009-06-08 21:35:00 · 1224 阅读 · 0 评论 -
OpenGL ES
什么是OpenGL ES? OpenGL® ES 是免授权费的,跨平台的,功能完善的2D和3D图形应用程序接口API,它针对多种嵌入式系统专门设计 -包括控制台、移动电话、手持设备、家电设备和汽车。它由精心定义的桌面OpenGL子集组成,创造了软件与图形加速间灵活强大的底层交互接口。OpenGL ES 包含浮点运算和定点运算系统描述以及 EGL™ 针对便携设备的本地视窗转载 2009-05-27 14:25:00 · 2284 阅读 · 0 评论 -
2440上U口的WIFI与U盘居然不能同时使用
开发中经常会遇到这样一些问题,现象很怪,感觉很棘手,到处看资料,找人,找技术支持,磨了几天了磨得没脾气了,只有静下心来仔细分析,研究代码,最后解决问题时发现其实就一个小小的问题,小问题的郁闷。 由于项目需要把2440的两个USB都用作了HOST,一个接WIFI,固定在机器内部,另一个就用来外接鼠标,键盘等外设,测试时都个HOST都接U盘都是正常的,就没多试了,后来一直都是两个HOST一起使原创 2009-03-25 10:10:00 · 1039 阅读 · 1 评论 -
wince5下128M SDRAM,CDMA,wifi与DM9000的调试
wince5下128M SDRAM,CDMA,wifi与DM9000的调试 做2440也有一段时间了。最近又新做了一些功能,现在就把调试过程中遇到的一些问题简单总结一下吧。 1.首先是SDRAM换成了128M,硬件改动不大,软件改动本来也很小,就是内存控制器的BANK6参数改一下。;************************************************原创 2009-03-11 16:31:00 · 1115 阅读 · 2 评论 -
wince的安全机制 数字签名
你的应用程序想在我的wince系统上运行的话先找我签名吧.让你的CE系统只能运行你签过名的应用程序环境其实很简单.1.在OEMInit()函数中添加 // Set the module signature verification hooks // pOEMLoadInit = OEMLoadInit; pOEMLoadModule = OEMLoadModule;原创 2008-12-12 18:31:00 · 799 阅读 · 0 评论 -
进程间通信—事件
主进程A中新建一子进程B ,如果子进程B退出了,怎么样通知主进程A。 主进程A中新建子进程B: if(!(CreateProcess(strDefault,NULL,NULL,NULL,NULL,CREATE_NEW_CONSOLE, NULL,NULL,NULL,&infoGPS))) { error_dlg.n_strError原创 2009-09-20 22:29:00 · 816 阅读 · 0 评论 -
在WinCE下,应用程序直接读/写/擦除flash设备的方法
作者:ARM-WINCE在网上的很多论坛中都看到有人提问:应用程序如何直接读写Flash的扇区,或者是类似的问题。总之,就是希望应用程序能够直接访问Flash设备,直接读写扇区的数据,或者作其他的操作。这几天没事,就尝试着做了一下,把我的方法介绍给大家。先做个简单的介绍。WinCE支持Flash设备,一般指Nandflash或者是NORFlash,采用的架构一般是FAL+FMD架构,我们实转载 2009-10-27 16:37:00 · 492 阅读 · 0 评论 -
wince&evc下加载BMP位图文件
LoadImage()函数怎么就不行呢?????????This function loads an icon, cursor, or bitmap.HANDLE LoadImage( HINSTANCE <a class="synParam" onclick="function onclick(){showTip(this)}">hinst, LPCTSTR原创 2010-01-05 23:10:00 · 877 阅读 · 1 评论 -
如何使用Win32下的GDI等接口实现绚丽、高效的界面
1.如何让界面绚丽?怎么样的算绚丽?有很漂亮的图片?有Alpha透明?有Animation?每个人的审美观点都不同,所以如果你的界面很多人认为绚丽那就可以了。设计界面主要是Designer的工作,包括UI逻辑的设计,色彩搭配设计等,我认为这也可以进一步分工:熟悉用户习惯的Designer、美学Designer等。但是一般情况下这些让程序员给代劳了。下面介绍Windows提供给开发人员的转载 2009-12-30 18:22:00 · 1339 阅读 · 0 评论 -
WM/WINCE代码研读系列之Power Management(6)
下面在对UpdateDeviceState(pds)做具体说明UpdateDeviceState{ //获取当前设备的电源级别最大值(ceilingDx)和最小值(floorDx) GetNewDeviceStateInfo { 1.对于newCeilingDx //首先每个系统电源状态都对应一个默认的所有设备的最大电源级别转载 2009-11-21 11:03:00 · 470 阅读 · 0 评论 -
WM/WINCE代码研读系列之Power Management(5)
下面是pNewPowerState->EnterState的具体内容pNewPowerState->EnterState{ PmSetSystemPowerState_I(GetStateString(),0 ,0, TRUE); { if (((!_tcsicmp(szStateName,_T("suspend"))) || (dwStateHint==P转载 2009-11-21 11:02:00 · 605 阅读 · 0 评论 -
WM/WINCE代码研读系列之Power Management(4)
下面是PmSetSystemPowerState函数的详细内容PmSetSystemPowerState{ PlatformSendSystemPowerState { SendSystemPowerState { PlatformMapPowerStateHint; //将StateFlags转化成电源状态名转载 2009-11-21 11:02:00 · 472 阅读 · 0 评论 -
WM/WINCE代码研读系列之 Power Management(1)
本文对Power Management这部分代码的研究是基于Wince5.0的(注:在最新的Wince 6.0上对电源管理的架构做了较大改变)。这部分的代码在/PUBLIC/COMMON/OAK/DRIVERS/PM下,在OS中以PM.dll的形式存在。 一、PowerManagement Architecture 在/PUBLIC/COMMON/OAK/DRIVERS/PM转载 2009-11-21 10:55:00 · 625 阅读 · 0 评论 -
WM/WINCE代码研读系列之 Power Management(3)
二、Power Managements Functions我们可以在PM.def里面看到以下14个函数系统电源管理相关:PmSetSystemPowerState ------ 设置系统电源状态PmGetSystemPowerState ------ 得到系统电源状态设备电源管理相关:PmDevicePowerNotify ------ 要求设备转载 2009-11-21 11:01:00 · 498 阅读 · 0 评论 -
WM/WINCE代码研读系列之 Power Management(2)
系统电源状态变迁示意图 1. Backlightoff Timeout2. User Activity or AppButtonPressed3. UserIdle Timeout4. User Activity or AppButtonPressed5. PowerButtonPressed or Suspend Timeout6. PowerButtonPress转载 2009-11-21 11:01:00 · 510 阅读 · 0 评论 -
NAND Flash的驱动程序设计
摘要 以三星公司K9F2808UOB为例,设计了NAND Flash与S3C2410的接口电路,介绍了NAND Flash在ARM嵌入式系统中的设计与实现方法,并在UBoot上进行了验证。所设计的驱动易于移植,可简化嵌入式系统开发。 引言 当前各类嵌入式系统开发设计中,存储模块设计是不可或缺的重要方面。NOR和 NAND是目前市场上两种主要的非易失闪存技术。NOR Flash转载 2009-11-02 18:19:00 · 814 阅读 · 0 评论 -
可卖的易名中国域名列表
兄弟的域名,太多了,让给卖卖,都还挺好记的。 geautos.com.cn 金鹰汽车网 详见geautos.com网站 geautos.cn 0734zpw.com.cn 衡阳人才网 详见0734zpw.com网站 0759rcw.cn 区号0579 金华地区及其下属县市人才网 hnask.cn 湖南/海南/河南市 hnqcw.com.cn 湖南/海南/河南原创 2009-11-09 09:24:00 · 1085 阅读 · 0 评论 -
S3C2440 串口波特率115200下发送大文件会丢数据
S3C2440 串口波特率115200下发送大文件会丢数据这问题还真是挺能折腾人的.努力了一周都没搞定.最后不得不让步了.在38400下设两位停止位可以成功.就是速度慢了很多.希望碰到同样问题的朋友可以交流交流.原创 2008-12-16 13:06:00 · 1016 阅读 · 0 评论 -
Eboot 中给nandflash分区实现
Eboot 中给nandflash分区实现 提到分区就不得不提到MBR,不得不提到分区表。什么是MBR硬盘的0柱面、0磁头、1扇区称为主引导扇区,NANDFLASH由BLOCK和Sector组成,所以NANDFLASH的第0 BLOCK,第1 Sector为主引导扇区,FDISK程序写到该扇区的内容称为主引导记录(MBR)。该记录占用512个字节,它用于硬盘启动时将系统控制权原创 2009-02-17 17:53:00 · 3880 阅读 · 1 评论 -
Windows CE .NET的实时性
最近做一个项目,通过无线模块每125US需要采集一次数据,对CE实时性的要求比较高,所以找了一些这方面的资料。 这是linux2.4跟wince.net的一个对比,测试过程的计时功能通过CPLD编程实现,感觉误差还是有点大,如果中断响应时间都超过1MS了,那实时性也太差了。再看一下Microsoft的官方测试结果。Lets take a look at the numbers o原创 2007-12-03 15:58:00 · 845 阅读 · 0 评论 -
应用程序中断处理
处理应用程序或驱动程序的中断需要两个步骤。首先,中断必须使用关联的事件进行初始化。其次,IST 必须等待响应内核中断的中断事件。中断初始化以下示例代码将设置 IST 并将 IST 与特定的中断相关联。初始化中断的关键步骤包括: 创建事件 获取 IRO 的系统中断号 创建挂起的中断服务线程 (IST) 调用 InterruptInitialize 以创建 IRQ 与事原创 2007-12-01 11:27:00 · 2219 阅读 · 1 评论 -
问题:读nand flash时ECC校验通不过
经过三天的努力,nand驱动总算是可以工作了。但是新的问题又出来了。由于代码是从64M直接移植到128M,当时把ECC部分代码注释掉了,nand虽是可以工作的,但是加载文件系统之后,没有ECC校验还是会造成nand驱动不稳定, 所以ECC还得加上。首先,还是先了解一下SSFDC软件规范。我们知道nandflash设备是存在坏块的,但是为了和上层文件系统接口,nand设备的驱动程序必须给文件系统原创 2007-08-17 16:47:00 · 2043 阅读 · 1 评论 -
系统挂起后,再唤醒出现的一系列问题。。
系统挂起后,oempoweroff()函数会被调用,通过跟踪代码,发现几乎所有的问题都出在这个函数里面。首先保存各寄存器的值。随后是cpupoweroff()函数的调用 ,然后关掉外设的时钟,电源,尽可能把功耗减少到最低。对于流驱动,系统会自动调用XXX_poweroff()函数,之后就进入漫长的等待状态。唤醒信号过来之后,首先就是恢复各寄存器的值了。然后给外设供电,供时钟。对于流驱动,系原创 2007-05-14 18:33:00 · 807 阅读 · 0 评论 -
k9f1g08 2K page nand flash驱动调试
k9f1208secotr size = 512byte,block_pre_sector =32sector, block size = 512*32 =16K, device=4096block=64Mk9f1g08secotr size = 2k, block_pre_sector =64sector, block size = 2*64 =128K, device=1024bl原创 2007-08-15 17:14:00 · 3451 阅读 · 2 评论 -
2410,2440RTC无法保存时间
WINCE时间如此保存WINCE的时间无法保存,是由于冷驱动,WINCE会初始化RTC,把下面的代码注释掉就可以了!case IOCTL_HAL_INIT_RTC: // The kernel has detected a cold-boot. We probably need to reset our Real Time Clock if( nInBufSi转载 2007-04-30 11:30:00 · 991 阅读 · 0 评论 -
写注册表永久保存之后,系统性能变慢的解决!
注册表永久保存终于是搞定了,但新的问题又来了。由于注册表保存在nandflash,每次修改注册表都会去读写nandflash,播放视频时,对会写入很多新的注册表键值,每次读写nandflash来保存这些键值会造成很多CPU资源的浪费,所以每次刚开始播放都会有停顿的现象。解决:修改注册表platform.reg[HKEY_LOCAL_MACHINE/init/BootVars] "Sys原创 2007-04-27 15:33:00 · 1569 阅读 · 0 评论 -
也写在S3C2440A平台+winCE5.0+NAND +HIVE注册表的实现
最近一直弄这个注册表的永久保存,在网上看到很多相关的贴子,就像大部分人说的一样,很少有人照着做就可以成功的。 今天总算成功了,总结经验如下,但愿对后来者有所帮助。首先,要实现注册表的永久保存,你的NAND FLASH一定要可以分一块区出来,实现永久保存数据。这一步我的做法是在nand flash驱动里面实现的,也就没有用到binfs文件格式。如果这一步成功的话,也就完成的一大半了。剩下的就只是原创 2007-04-18 16:15:00 · 1617 阅读 · 2 评论 -
调试已久的wince5.0+2440+SD2.0终于告一段落了。
调试已久的wince5.0+2440+SD2.0终于告一段落了。算一下弄了差不多一月。速度可以达到1M多每秒,晌应时间3秒以内,支持各种各样的SD卡。总算没有白费,最大的收获应该是对DMA熟悉多了。以前总是看一些文档,都没有具体操作过,现在SD里面就用DMA传输数据,一个一个寄存器的去了解,去配置。感触比看文档深多了。看来还是要在具体实现过程中才能真正去了解一个东西。原创 2007-07-13 11:41:00 · 1061 阅读 · 0 评论 -
解决EVC4.0不能调试PXA270
用EVC4.0在线调试PXA270解决过程全记录。首先是ActiveSync可以连接上,也可以同步数据,但是不是单步调试。错误:Debugger Swap ErroreVC cannot locate a debugger able to debug the attached device. The debugging session cannot begin.EVC不能支持目标设备的CP原创 2006-07-24 23:27:00 · 1523 阅读 · 2 评论 -
| WinCE驱动开发问题精华集锦
如何让系统加载自己写的驱动程序? 两种办法: 1、在[HKEY_LOCAL_MACHINE/Drivers/BuiltIn]下添加注册键。 2、在应用程序中调用ActivateDeviceEx。 在一些文件中用分号来表示注释,例如下面的内容 ; @CESYSGEN IF SERVERS_MODULES_HTTPD ; @CESYSGEN ENDIF 在“CESYSGEN..转载 2007-12-04 09:38:00 · 2002 阅读 · 2 评论 -
MULTI BIN的wince 5.0,smdk2440下的实现
说在前面,通过本人的实现经验,如果按下面的步骤不能成功实现的话,估计就是NAND没有正确分区了。先把EBOOT的代码熟悉一下。MULTI BIN的wince 5.0,smdk2440下的实现(转自驱动程序开发社区)XIP实现总结.step1:修改config.bib文件.内核子集XIPKERNEL的SIZE根据你自己编译出来的XIPKERNEL.BIN实际大小调整,XIPKERNEL转载 2007-12-04 12:00:00 · 2973 阅读 · 21 评论 -
如何在wince中建立PPPoE拨号?
1.在wince中添加支持的组件需要添加2个组件,分别是Dial Up Networking (RAS/PPP)和Point-to-Point Protocol over Ethernet (PPPoE),路径如下: [Core OS]|——[Communication Services and Networking] |——[Networking - Wid转载 2009-02-06 13:48:00 · 1497 阅读 · 0 评论 -
24**系列对SD20的支持
24**系列对SD20的支持pb6已经默认包含了对sd20的支持。pb5在打过2007全年补丁后,就增加了对sd20协议以及SDHC卡的支持,需要设置一个新的环境变量IMGSDBUS2=1.在驱动里面的对应修改非常简单, 就是增加对CMD8命令的响应, 根据sd20协议,cmd8的响应类型是R7, 所以, 简单的在1208和1308行增加case ResponseR7:就可以了。说明, sdh转载 2008-11-12 18:00:00 · 844 阅读 · 0 评论 -
玩了下破解 vspd.dll
做GPS的都熟悉,机器要一起运行导航和电子狗就不得不用一个虚拟串口软件,数据从一个物理串口出来,分给两个虚拟串口,虚拟串口得到的数据是一样的. 最近公司需要,玩了一下虚拟串口,自己写了一个虚拟串口驱动,两个虚拟串口一起收数据总是不能同步,没那么多时间了,怎么办,只有用人家的了.. GOOGLE了一下,发现用Serial Splitter CE 2.9这个软件的人还不少.下.把原创 2008-11-12 11:46:00 · 3037 阅读 · 6 评论