WINCE驱动开发
loongembedded
本人目前在佛山一家上市公司负责智能终端、服务机器人的研发工作,欢迎大家的指教和交流!。
展开
-
activesync对应的COM口
<br />因工作需要,在调整COM口的分配时,发现COM5已被占用,却不知道是被哪个驱动占用了,前两天才发现时被activesync占用了, activesync在platform.reg下的部分信息如下:<br /> <br />[HKEY_LOCAL_MACHINE/Drivers/USB/FunctionDrivers/Serial_Class]<br /> "FriendlyName"=LOC_USBFN_SERIAL_NAME<br /> "idVendor"原创 2010-10-13 13:16:00 · 1478 阅读 · 0 评论 -
WINCE6.0+S3C2443睡眠和唤醒(sleep and wake up)的实现
<br />1. 系统进入睡眠状态的过程<br />1.1 硬件相关电路<br />我们的产品使用GPF0/EINT0作为系统进入睡眠和从睡眠中唤醒的唤醒源,如下图所示:<br /> <br />EINT0作为唤醒源,而EINT0在S3C2443的datasheet中相关描述如下:<br /> <br />那么我们就需要知道触发这个中断(EINT0)的电平变化情况,是低电平触发?或是高电平触发?或是下降沿触发?或是上升沿触发?或是上升沿和下降沿触发?上面的设计是:在未按下按键(S5)时,EINT0是低电平,原创 2010-10-13 13:18:00 · 2549 阅读 · 5 评论 -
基于S3C2440A+SDRAM(K4M51163)
<br /><br />本系统是采用两片K4M51163-BG75的SDRAM,大小为2*64M。<br />1. SDRAM的工作原理<br />1.1 SDRAM概述<br />SDRAM:Synchronous Dynamic Random Access Memory,同步动态随机存储器。同步是指其时钟频率(CLK)与CPU的AHB总线时钟频率(HCLK)相同,并且内部的命令的发送于数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进原创 2010-10-13 13:21:00 · 1888 阅读 · 0 评论 -
Nandflash K9F1208U0B学习
注:Row也就是page1. 引脚描述I/O0 ~ I/O7-----data inputs/outputs通过这8个I/O引脚,可以输入命令,地址和数据,也可以在读操作时输出数据。CLE-----command latch enableCLE输入控制了发送到命令寄存器的命令。CLE为高电平时激活,在nWE的上升沿,命令通过I/O端口被锁存到命令寄存器中,结合datasheet的相关时序图来理解更为深刻。ALE-----address latch enableALE输入控制了地址发送到内部地址寄原创 2010-10-13 13:23:00 · 2732 阅读 · 2 评论 -
WINCE6.0+S3C2443的RTC初始化及存在的问题
1.系统启动过程中RTC初始化在WINCE6.0中,我们知道是通过OALIoCtlHalInitRTC()函数来设置RTC的时间的,但是如何调用到这个函数的呢?我们就从NKStartup()函数开始,但系统从nboot开始是如何执行到NKStartup()函数的呢?我后面会抽空写关于eboot和nk的启动过程中有涉及。在SystemStartupFunc函数中,通过下面语句来创建一个内核线程RunApps:hTh = CreateKernelThread (RunApps原创 2010-10-13 13:28:00 · 2167 阅读 · 0 评论 -
WINCE6.0+2443系统大概过10分钟进入sleep状态
<br />最近在开发基于WINCE6.0+2443的GPS产品的时候,发现我的机器在电池供电的时候,开机之后,如果没有其他动作,那么大概10分钟左右,我的系统会进入sleep的状态,后来发现我在实现电池驱动的时候把函数BatteryPDDGetStatus()下面部分注释掉了<br /> memcpy(pstatus, &gpStatus->sps, sizeof(*pstatus));<br /> *pfBatteriesChangedSinceLastCall = gpStatus->fChan原创 2010-10-14 08:04:00 · 1592 阅读 · 0 评论 -
WINCE6.0+S3C2443自动重启的实现
<br /> 为了实现WINCE标准UI和我们产品的SHELL的切换,系统需要实现自动重启的功能,这里的自动重启并不是按下reset键之后的从nboot开始执行的复位重启,而只是跳转到NK的开始地址处执行,和bootloader没有关系。<br />在src/inc/oal_ioctl_tab.h中,我们看到自动重启的函数OALIoCtlHalReboot(),我们来看看这个函数体<br /><br />这个函数是利用看门狗来实现的复位重启方式,是从nboot开始执行的,我们来实现直接从NK的起始地址原创 2010-10-15 07:39:00 · 5242 阅读 · 10 评论 -
WINCE下如何虚拟多个串口
<br />应用背景<br />我们的产品是GPS产品,GPS模块是通过TX与RX来和CPU串口控制器的UART2连接的,对应于COM3(这个可以根据自己的项目的需要来定),platform.reg中注册表信息如下:<br />;==========GPS===== UART2===COM3===============<br />[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial2]<br /> "DeviceArrayIndex"=dword:2<br /> "原创 2010-10-15 07:40:00 · 2341 阅读 · 1 评论 -
WINCE下实现基于USB的camera
<br />我们是做基于WINCE的GPS产品,客户需要camera功能,我们产品集成了两种方案的camera功能:USB摄像头和基于TVP5150视频编解码(camera sensor)的camera,在这里只介绍USB摄像头<br />要实现这个功能能,我们需要做下面的工作。<br /> <br />1. 支持WICNE的USB摄像头应该有很多种,而且驱动应该是不能共用的,所以我们需要根据项目需要(比如像素的要求)来选择USB摄像头,选定之后,就要找到卖USB摄像头转换器的公司提供的WINC原创 2010-10-15 07:42:00 · 1835 阅读 · 0 评论 -
WINCE下实现USB转RS232
<br />WINCE下可以通过一个USB TO RS232转换器来实现USB转RS232,也即WINCE设备的USB host接USB TO RS232转换器的USB端,而USB TO RS232转换器的RS232端可以接PC机的RS232接口,或者可以接其他设备的RS232接口,这样WINCE设备和PC端就可以通过以串口的形式来相互通讯了,因为我们的系统采用的是USB TO RS232转换器,要实现这个功能能,我们需要做下面的工作。<br /> <br />1. 支持WICNE的USB TO原创 2010-10-15 07:41:00 · 2304 阅读 · 0 评论 -
WINCE5.0+S3C2443系统每隔几分钟会自动关闭LCD显示
<br />这几天在调试WINCE5.0+S3C2443系统的时候,发现大概每隔6分钟的时候,系统就会自动关闭LCD屏的显示,这时候如果去点击触摸屏就会恢复显示。刚开始我还以为是系统进入了sleep状态了,发现在关闭LCD显示的时候各个驱动的PowerUp和PowerDown函数的串口输出信息并没有输出,说明并不是进入sleep状态。<br /> <br />后来我找到了不让系统关闭LCD显示的地方,是comon.reg下面的注册表项<br />; @CESYSGEN IF CE_MODULES_GWES<原创 2010-10-16 08:42:00 · 1529 阅读 · 0 评论 -
WINCE5.0+2443 camera中断不能进来的原因
<br />因为项目需要,我需要调试和完成WINCE5.0+2443系统和驱动的功能,在调试camera驱动的时候,发现一个很郁闷的问题,就是camera的中断一直进不来,因为我之前在WINCE6.0+2443系统中已实现了camera中断了,而WINCE5.0和WINCE6.0下的camra驱动架构基本一样,可是为什么camera中断一直会进不来呢?分析如下:<br />1. 中断ISR对camera中断设置不正确。<br />在OEMInterruptHandler()函数中加入调试信息,只原创 2010-10-16 08:43:00 · 1310 阅读 · 0 评论 -
WINCE6.0+S3C6410 watchdog重新启动
<br />// File: watchdog_sw_rst.c<br />//<br />// Samsung SMDK6410 SW_RST using watchdog timer support code.<br />//<br />#include <windows.h><br />#include <ceddk.h><br />#include <oal.h><br />#include <s3c6410.h><br /><br />// WTCON - control register, bi转载 2010-10-19 12:36:00 · 3329 阅读 · 5 评论 -
在WinCE 6.0系统下实现USB功能定制
<br />USB的广泛应用就不用多说了,相信目前的各个领域的嵌入式产品中,很少有不用USB的。USB是主从结构的,分为USB Host和USB Slave,从USB1.0,USB1.1到现在的USB2.0,基于USB2.0还有USB OTG,也就是同时支持Host和Slave设备。目前最新的好像是USB3.0,刚开始普及吧。<br />在WinCE6.0中,对USB是有很好的支持。一般来说,如果USB的设备驱动做好了,USB的协议层以及上层的应用都是现成的,而且还有源码。也就是说,我们只需要在BSP中完成转载 2010-10-21 16:24:00 · 1430 阅读 · 0 评论 -
WINCE基于PWM实现的背光驱动
<br />********************************LoongEmbedded********************************<br />作者:LoongEmbedded(kandi)<br />时间:2010.12.16<br />类别:WINCE驱动开发<br />********************************LoongEmbedded********************************<br /> <br />硬件<br />CPU原创 2010-12-16 08:18:00 · 5994 阅读 · 8 评论 -
LCD控制器时序参数的确定(基于TFT LCD: KD50G9-40NM-A3)
LCD控制器时序参数的确定(基于TFT LCD: KD50G9-40NM-A3)********************************LoongEmbedded********************************作者:LoongEmbedded(kandi)时间:2010.10.30类别:WINCE驱动开发********************************LoongEmbedded********************************一般TFT型LCD时序图如下原创 2010-10-30 08:59:00 · 13920 阅读 · 10 评论 -
USB 3G驱动和USB HOST驱动加载
********************************LoongEmbedded********************************作者:LoongEmbedded(kandi)时间:2010.11.02类别:WINCE驱动开发********************************LoongEmbedded********************************USB 3G驱动和USB HOST驱动加载环境:WINCE6.0+S3C2443,USB HOST通过USB原创 2010-11-02 21:26:00 · 2736 阅读 · 0 评论 -
WINCE基于CH7024实现TV OUT (VGA)功能
********************************LoongEmbedded********************************作者:LoongEmbedded(kandi)时间:2011.01.03类别:WINCE驱动开发********************************LoongEmbedded********************************系统:WINCE6.0+S3C2443实现原理CPU(在此为S3C2443)输出的RGB数字信号通过CH70原创 2011-01-03 10:15:00 · 2572 阅读 · 1 评论 -
WINCE下创建多个文件分区
<br />********************************LoongEmbedded********************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.01.11<br />类别:WINCE驱动开发<br />********************************LoongEmbedded********************************<br />系统:WINCE6.0+S3C244原创 2011-01-11 22:22:00 · 3070 阅读 · 2 评论 -
WINCE基于MC8630的3G模块的控制和加载
<br />********************************LoongEmbedded********************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.01.14<br />类别:WINCE驱动开发<br />********************************LoongEmbedded********************************<br />系统:WINCE5.0+s3c244原创 2011-01-14 21:56:00 · 3760 阅读 · 11 评论 -
WINCE对USB HOST供电的控制
<br /><br />上图的USBH_EN(对应于GPG6)是用于对USB HOST供电的,这个需要在BSP中进行控制,可在init.c文件的OEMInit() ->ConfigureGPIO()函数中假如下面的代码:<br /> <br />//Ser GPG6 to Output an USBH_EN<br />s2440IOP->GPGCON &= ~(3<<12);<br />s2440IOP->GPGCON |= (1<<12); // ou原创 2010-11-24 13:17:00 · 2837 阅读 · 0 评论 -
基于WINCE6.0的nandflash驱动(基于K9F1G08U0B)
<br />*******************************LoongEmbedded********************************<br />作者:LoongEmbedded<br />时间:2010.11.26<br />类别:WINCE驱动开发<br />********************************LoongEmbedded********************************<br /> <br /> <br />1. nan原创 2010-11-26 08:49:00 · 6876 阅读 · 8 评论 -
WINCE下基于SL031的RFID功能的实现
********************************LoongEmbedded********************************作者:LoongEmbedded(kandi)时间:2011.01.23类别:WINCE 驱动开发********************************LoongEmbedded********************************系统:WINCE5.0+S3C2440非标准的BSP包,也就是从WINCE4.2移植过来的BSP包1.原创 2011-01-23 14:32:00 · 2697 阅读 · 2 评论 -
WINCE6.0+S3C2443下的activesync问题
<br /> ********************************LoongEmbedded********************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.01.27<br />类别:WINCE 驱动开发<br />********************************LoongEmbedded********************************<br /> <br />系统:WINCE6原创 2011-01-27 10:12:00 · 1586 阅读 · 0 评论 -
WINCE6.0+S3C2443下SD卡驱动
WINCE6.0+S3C2443下SD卡驱动********************************LoongEmbedded************************作者:LoongEmbedded(kandi)时间:2011.02.24类别:WINCE 驱动开发********************************LoongEmbedded************************1. SD卡驱动架构图1SD卡驱动分为client驱动,bus驱动和SD主控制器驱动,其中c原创 2011-02-24 17:07:00 · 4099 阅读 · 2 评论 -
WINCE6.0+S3C2443下ADC在电池驱动应用
<br />********************************LoongEmbedded************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.02.25<br />类别:WINCE 驱动开发<br />********************************LoongEmbedded************************<br /> <br />1. ADC在电池驱动中的应用<br /原创 2011-02-26 17:24:00 · 3681 阅读 · 4 评论 -
基于WINCE6.0+S3C2443的camera驱动
<br />********************************LoongEmbedded************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.02.13<br />类别:WINCE 驱动开发<br />********************************LoongEmbedded************************<br /> <br /> <br />备注:camera sensor:OV原创 2011-02-13 16:55:00 · 3059 阅读 · 0 评论 -
WINCE5.0+S3C2440支持大容量SD卡(SDHC卡)
********************************LoongEmbedded************************作者:LoongEmbedded(kandi)时间:2011.02.17类别:WINCE 驱动开发********************************LoongEmbedded************************1. 要确保至少更新了07年全年的更新包。2. 在platform->setting->environment 中原创 2011-02-17 17:01:00 · 3163 阅读 · 0 评论 -
WINCE6.0+S3C2443下的usb function(功能)驱动
<br />********************************LoongEmbedded************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.03.16<br />类别:WINCE驱动开发<br />********************************LoongEmbedded************************<br /> <br />注:这里提到的MDD层和PDD层是对于usb func原创 2011-03-16 15:39:00 · 6247 阅读 · 9 评论 -
Keyboard驱动中button中断的处理机制
<br />Keyboard驱动中button中断的处理机制<br /> <br />********************************LoongEmbedded************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.05.015<br />类别:WINCE驱动开发<br />********************************LoongEmbedded************************<b原创 2011-05-15 17:34:00 · 2079 阅读 · 0 评论 -
开机启动加载驱动过程中调用PostMessage函数出错
今天在WINCE5.0+S3C2440系统调试检测出租车是否载客的驱动的时候遇到这样的问题:发现在开机启动加载驱动过程中调用PostMessage函数时会导致调用的线程崩溃,比如如果下面的线程在创建时调用了:PostMessage(HWND_BROADCAST, MSG_TAXI_BUSY, 0, 1);//taxi idle就会弹出下面的信息:AKY=00000005 PC=8c2d54fc(NK.EXE+0x000d54fc) RA=8c2c0b38(NK.EXE+0x000c0b38) BVA=000原创 2011-03-25 14:47:00 · 1769 阅读 · 0 评论 -
WINCE下SOS驱动开发
********************************LoongEmbedded************************作者:LoongEmbedded(kandi)时间:2011.03.30类别:WINCE驱动开发********************************LoongEmbedded************************备注:系统是WINCE4.2移植过来的BSP包+S3C2440A1. SOSS.O.S.是国际莫尔斯电码救难信号,并非任何单字的原创 2011-03-30 12:21:00 · 1780 阅读 · 0 评论 -
WINCE6.0+S3C6410下的DM9000A驱动
********************************LoongEmbedded************************作者:LoongEmbedded(kandi)时间:2011.05.26类别:WINCE驱动开发********************************LoongEmbedded************************1. 原理图设计图1DM9000的总线是16位的,接在6410的Xm0的总线上。 DM9000 默认I/0 基地址为300H。原创 2011-05-28 13:05:00 · 6014 阅读 · 1 评论 -
USB OTG概述
********************************LoongEmbedded************************作者:LoongEmbedded(kandi)时间:2011.05.30类别:WINCE驱动开发********************************LoongEmbedded************************关键字:HNP:主机协商协议(Host Negotiation Protocol)。SRP:会话请求协议(Session Request P原创 2011-05-30 21:11:00 · 3607 阅读 · 0 评论 -
WINCE6.0+S3C6410串口驱动
<br />********************************LoongEmbedded************************<br />作者:LoongEmbedded(kandi)<br />时间:2011.05.21<br />类别:WINCE驱动开发<br />********************************LoongEmbedded************************<br />WINCE串口驱动<br /> <br />备注:本博文基于Real原创 2011-05-28 11:07:00 · 3608 阅读 · 2 评论 -
WINCE6.0显示驱动模型介绍
********************************LoongEmbedded*****************作者:LoongEmbedded(kandi)时间:2011.06.4类别:WINCE驱动开发********************************LoongEmbedded***************** 关键字DDGPE的DD是指DirectD原创 2011-06-08 18:08:00 · 2924 阅读 · 6 评论 -
6410调试LCD屏AT050TN22遇到的问题
问题如下:1.eboot的背景色本来是黑色的,但显示的是淡蓝色2.进入WINCE标注界面后,本来是蓝色的,如果从垂直的角度来看显示的是白色,从倾斜,比如是20°(以水平线为基准)来看却是深蓝色,越接近0°就越接近原来的颜色 这是我们的新板,经过测试发现VCOM端不同的电压显示清晰度和亮度不同VCOM为1.28V的时候,显示如下图:而VOM为3.63V的时候,显示如下:目前我都不确定是驱动还原创 2011-06-15 11:00:00 · 3118 阅读 · 4 评论 -
WINCE基于AT050TN22屏的时序描述
********************************LoongEmbedded*****************作者:LoongEmbedded(kandi)时间:2011.06.4类别:WINCE驱动开发********************************LoongEmbedded***************** 根据AT050TN22屏时序的描述,可以知道原创 2011-06-15 16:33:00 · 2121 阅读 · 0 评论 -
WINCE6.0+S3C6410主要时钟控制
********************************LoongEmbedded*****************作者:LoongEmbedded(kandi)时间:2011.06.19类别:WINCE驱动开发********************************LoongEmbedded***************** 备注:S3C6410的ARM内核时钟(AR原创 2011-06-19 14:54:00 · 3421 阅读 · 2 评论 -
WINCE下调试AT050TN22屏及触摸屏小结
********************************LoongEmbedded*****************作者:LoongEmbedded(kandi)时间:2011.06.23类别:WINCE驱动开发********************************LoongEmbedded***************** 目前的项目是在调试AT050TN22(5寸原创 2011-06-23 15:57:00 · 2806 阅读 · 1 评论