自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宁静致远,淡泊明志.

千里之行,始于足下.

  • 博客(37)
  • 资源 (6)
  • 收藏
  • 关注

原创 TCC8902(九) 触摸屏问题

TCC89 触摸存在跳点或者手写不圆滑问题。就这个问题,我仔细的看了一下驱动原代码,特将解决办法记录下来。本人发现TCC8902的两个触摸驱动都有跳点或者不好用的情况。1.TSC2003的驱动,这种外加I2C AD的模式,只有一个读中断,并且是低电平有效。有如下缺点:(1)UP与DWON 不能直接用中断来判断。(2)I2C 读数比较占资源,(3)驱动里面没有加定时,直接

2012-05-28 09:50:46 1872 1

原创 TCC8902 (十) 开机加进度条的办法

WINCE的整个启动时间由BOOTLOAD加载NK的时间+NK启动的时间两部分构成。加进度条的时候最好在两个部分都加,然后完美的接合在一起,就可以看到进度条走完就进了系统界面了。这个中间的接合就要细调一下了。下面来说说加进度条的办法。 一、BOOTLOAD里面加进度条在BOOTLOAD 里面加进度条比较简单,在NAND 读取NK到内存的循环里加就好了。 二、NK的启动过程中加进

2012-05-28 10:17:54 1353 3

原创 TCC8900 (八) TVOUT

一、TVOUT无彩色。TELCHIPS 发布的V2.0 BSP包,当使用的主频是600MHZ的时候,TVOUT出输无彩色。解决办法:增加下面红色代码。1.WINCE600/PLATFORM/Magellan/Src/LIB/SOC/DDR/TCC89x/init_ddr.c  2.WINCE600/PLATFORM/Magellan/Src/BOOT/ckc.c

2012-03-15 12:15:27 1380

原创 TCC8900(七) 添加微软雅黑字体

添加微软雅黑字体比较简单,首先从网上下一个MSYH.TTF 字库下来,然后作如下修改即可。一、组件添加:在Catalog View添加“Core OS”->“CEBASE”->“International”->“Locale Specific support”->“Chinese (Simplified)”->“Fonts”->“SimSun & NSimSum(choose 1

2012-03-06 14:42:03 2292

原创 TCC8900 调试(六) 后视与升级不能并存的原因

在BSP包里对SD卡升级,与后视做了限制。!IF "$(REAR_CAM_VIQE)" != "1"CDEFINES=$(CDEFINES) -DSD_UPDATE_INCLUDE!ENDIF做这个限制有两个原因:第一,因为CAMERA 接口与SD卡升级口(

2011-08-12 09:33:14 1562

原创 TCC8900 调试(四) --LCD

TCC8900 BSP V2.0 跟V1.91的LCD 驱动有些变化,致使我碰到了一个问题:不加后视LCD显示正常,加上后视LCD显示不正常?对于这个问题我曾一度以为是后视的原因造成的,后面经过我仔细查看代码,发现原来我犯了个错误了,引起这个问题的根源在LCD初始化上面,

2011-08-11 12:44:03 10642 1

原创 TCC8900调试(五) HIVE注册实现

一、添加组件,如下图所示。二、修改platform.reg注册表,如下所示: 在platform.reg里面加入如下代码:三、三、到这里为止,正常情况下重新编译一下工程就OK了。但在TCC89X里面却不能将HIVE文件保存在NAND 里面,我就觉得很奇怪了,于时打REGINIT.

2011-07-27 18:06:35 1007

原创 WINCE 6.0新发现

在做TCC89X 的时候,修改FILES下面的PLATFORM.REG后。发现/MAGELLAN_ARMV4I_Release下面的PLATFORM.reg也会跟着变化。反过来,也是一样的。也就是说FILES下的面的PLATFORM.REG 与/MAGELLAN_ARMV4I_Release下面的PLATFORM.REG同步了。之前一直没有发现这个问题。 我也试着修改PLATFORM.

2011-06-23 14:55:00 731 1

原创 TCC89X 调试(二) 更改SD卡PORT

TCC8900有8个SD卡,不过都是复用的。在寄存器组织方面,SD以MMC_Controller为中心分为两个核心(分别为Core0和Core1),每个核心分别有两个slot,它们的地址分配情况是: 共有四个SLOT。在注册表里面可以看到:TCC8900用到了SLOT0 跟SLOT2.          "SdhcIPcount"=dword:2          "SlotCou

2011-06-09 09:44:00 1411 2

原创 TCC89X 调试(三)双SD卡盘符固定

在SDBU/sddevuce.cpp sdloaddevice() { .... if(m_sdSlot.GetSlotIndex()==0) { // set the default load path for SD Memory Devices hr = StringCchCopy(loadPath, _countof(loadPath),SDCARD_SDMEMORY_CLASS_REG_PATH); } else { hr = StringCchCopy(loadPath, _countof(loa

2011-06-01 16:57:00 1986 2

原创 TCC89X调试过程(一)

一、安装BSP包,多媒体包,以及验证BSP包。1、将TCC8900 Windows CE v1.91.ZIP解压后拷贝到D:/WINCE600/PLATFORM文件夹下面,并改名为:Magellan2、将TWS89x_v1300.zip解压拷贝到D:/WINCE600/PLATFORM文件夹下面,并改名为:TWS89X3、打开VS2005创建工程,如果要运行3D,一定要将3D MALI200选上。4、将Magellan.bat中的set FWDN_V7=0表示用FWDN_V6下载NK. FWDN V6: s

2011-04-21 18:44:00 5400 7

原创 TCC TP调试心得

现在的嵌入式产品,基本上都用到TouchPanel ,希望我的一点经验会带给大家一点帮助。我这里以TELECHIP7901为例。一、确定X,Y是否镜像:在屏幕上任意拖动出一个矩形虚线框,然后随意上下左右拖动,这时看虚框是否根随触摸笔移动,如果虚线框能跟随触摸笔动,说明X+,X-,

2010-08-30 10:48:00 2181 2

转载 WinCE上BINFS实现详解

<br />WinCE上BINFS实现详解<br />此为ARMCE定制原创稿<br />作者: wwfiney@ARMCE<br />网上不少介绍三星24x0系列的BINFS启动方式实现,有些内容上描述的不是非常全面<br />下面就WinCE6上的BINFS实现,从基本原理到修改BSP,再到如何烧录启动做一个较全面的讲解<br /><br />一 BINFS到底是什么?<br />其实BINFS就是MS给CE做的一种存放系统镜像的一个文件系统。<br />一说文件系统,大家可能比较头大。那么这么说,其实

2010-08-10 00:18:00 905

原创 CH7026调试笔

一、IC功能CH7026 是一颗电视信号编码IC,可以输出SDTV ,HDTV,VGA电视信号。二、调试说明1、由于CH7026寄存器控制是通过I2C实现的,所以在调试之前先要将I2C调试通,这里我就不详细说明了,主要强调一下I2C地址:CH7026 设备地址跟第5脚 AS有关,如果接地就是76,这是没有移关的地址,所以在程序中我们要用0xec。2、CH7026复位有两种,硬件复位与软件复位,在一般情况下RESET 脚我们直接拉高就可以了,然后通过写0X03寄存器进行复位。3、再接下来确定输入的RGB位数,

2010-07-25 13:19:00 10726 10

转载 wince 注册表文件 platform.reg 详解

wince 注册表文件 platform.reg 详解<br />  一、HIVE 注册表功能[HKEY_LOCAL_MACHINE/init/BootVars]  "SystemHive"="Documents and Settings//System.hv"   "ProfileDir"="Documents and Settings"   "DefaultUser"="default"   "Start DevMgr"=dword:1   "Flags"=dword:3   "RegistryFlag

2010-07-19 22:03:00 3580 1

原创 如何取消应用程序弹出的动画效果

<br />实现两个程序的无缝对接,但是在WINce5.0中,打开一个对话框时会出现一个从小到大的动画效果,这样就不能到达无缝对接的目的了,可能通过以下方式取消动画效果。<br /> <br />[HKEY_LOCAL_MACHINE/system/gwe]<br />"PORepaint"=dword:1<br /><br />;;去掉APP窗口的动画显示效果<br />"Animate"=dword:0 <br />"Cursor"=dword:0

2010-07-19 12:13:00 1103

原创 TCC7901 调试过程

首次接触到TELECHIP的平台,不得不感叹一下,这个平台的工具还真是好用,不得不说TELECHIP的工程师们想得周到。本人这次用到的是TCC7901,具体调试过程如下:一、基本开发流程1、首先找到了一个官方的BSP包,本来是想去官方网站下载的,但可惜,只有TELECHIP的客服才能下载,所以通过了其它办法拿到了一个2.2版的BSP包。2、创建了一个基本工程,按默认的配置编译了一下BSP包,验证通过OK。3、利用Config_120.exe工具配置了一下BSP参数;这里主要设定RAM大小,屏大小,TP 用的

2010-07-19 11:22:00 3962 9

原创 应用调节背光亮度的方法

<br />应用调节亮度常用的方法有如下两种:<br />一、利用IOCTL:<br />在背光驱动的IOCTL里面增加调节背光亮度的IOCTL,如下:<br />case IOCTL_BACKLIGHT_ADJUST:<br />  //获取应用传递过来的参数<br />  //调节PWM值<br />case IOCTL_BACKLIGHT_GETLEVEL://这个主要用来查询当前背光亮度。<br />  //传送出背光的当前亮度。<br />在应用程序里面通过deviceiocontrol 传递个参

2010-06-01 22:05:00 3522

转载 Windows CE下中文输入法编辑器

CE包含了一种简体中文输入法编辑器,如果不想编写自己的输入法编辑器,那么可以直接调用默认的。在讲解中文输入法编辑器之前顺便提一下国际化(Internationalization),中文输入法及输入法编辑器只是国际化组件的一小部分。国际化是编写面向不同语言用户的软件过程中一个重要环节,CE的国际化组件包含很多小的组件 。   下表描述了组件的名称、功能: 名称功能Agfa字体压缩支持字体压缩字体

2010-05-24 21:54:00 3564

原创 WINCE 6.0 输入法添加

WINCE6.0里面有两种IME输入法,一个是MSPY 3.0 ,另一个是Pocket IME.这两个任选其一都可以。 组件添加:一、POCKET IME添加:1.在Catalog View添加“Core OS”->“CEBASE”->“International”->“Locale Specific support”->“Chinese (Simplified)”->“

2010-05-24 01:51:00 6447 2

原创 安装WINCE6 过程及升级R3

1、VS2005TEAMSUITE 微软 VS2005 编译环境2、VS80sp1-KB926604-X86-CHS.exe VS2005 SP1 软件包3、Windows Embedded CE 6.0.msi PB6.0 编译环境4、Windows Embedded CE 6.0 Platform Builder Service Pack 1.msi 6.0SP1补丁5、WinCEPB60

2010-05-21 23:03:00 2228 1

转载 “北斗一号”卫星导航定位系统与GPS的区别

转贴: [2008-06-08 13:24:27]主持人:“北斗一号”卫星导航定位系统与我们用的比较多的GPS有什么区别?  赵康宁:虽然GPS已广泛应用,但也绝非完美无缺。例如,其规模太大、造价太高,其他国家很难效仿,俄罗斯和欧洲的空间局就是典型的例子。GPS只能用作导航却无法实现通信功能,因而不能满足日益增长的用户需求。如果仅依赖GPS,则容易受别人的控制。“北斗一号”系统是我们国家自

2010-05-20 09:52:00 6335

原创 IROM 浅见

IROM其实是三星已经固化在CPU里面的一段代码,我们要做的事情就是提供一段可以供IROM读取的8K代码程序,至于这8K代码放在哪里,由CPU的相关引脚决定(OM1-OM4,GPN13-GPN15)。也就是说从哪里启动的意思。 如果从T卡启动我们需要利用相关工具将stepldr.nb0+eboot.nb0(一般会合成一个NB0)烧到T卡里面,CPU上电时根据配置IROM程序会从T卡中读取前

2010-05-16 22:22:00 2466 1

转载 WinCE6.0中应用程序如何直接访问物理空间

 在实际开发过程中,经常希望能在应用程序中直接读写设备的物理空间。以前在做WinCE6.0下的MEMMgr时通过秘密加载一个内核态驱动实现了这个需求。但这种方式有一个明显的缺陷,每次读写都必须经由它才能完成。如果只是读取GPIO,那问题不算大。如果想通过这种方式实现视频播放的加速就比较困难了。估计非但不能加速,反而会变得更慢。      早先曾与ZL仔细的讨论过这个问题,他当时在WinCE6.

2010-05-11 12:28:00 560

转载 如何使DEBUGMSG函数输出打印信息

如何使DEBUGMSG函数输出打印信息?  WINCE的驱动开发中,我们一般将工程编译为release模式。如果编译为debug模式,编译结果(NK)将会非常大,超过代码中对NK的限制范围。        而且有的时候我们只需要了解个别设备驱动的调试信息,并不需要将整个工程编译为debug模式。      在这种情况下可以用这样的方法,在驱动文件的头部加上:#undef DEBUG

2010-05-07 16:11:00 2054

转载 如何获得触摸屏的校验数据

相同型号的LCD触摸屏,它们的校验数值也不是完全一样的。所以,每当用户拿到一个LCD触摸屏时,需要重新使用触摸屏校验程序校验这个触摸屏,并把得到的校验数据永久保存到系统里面,这样每次系统重启时,不需要再次校验,就可以使用触摸笔很准确的点击目标位置。 在WinCE操作系统下,触摸屏的校验过程是这样的:用鼠标点击WinCE桌面图标【我的电脑】,然后在出现的窗口中点击图标【控制面板】,然后点击【笔针

2010-05-07 16:02:00 1466

原创 音频驱动分析

音频驱动分析:1、这里主要介绍一下流式音频驱动,在应用程序进行音频操作之前,首先向内核产生一个调用,内核将这个调用传给驱动程序的WAV_IOCcontrol进行处理,内核传递这个调用的模块被称为Wave_API管理器,然后驱动程序对硬件进行操作,和普通的流接口驱动程一样,音频驱动也使用注册表来存储信息并且向系统注册自身,在Platform.reg中添加如下键:HKEY_LOCAL_MACHIN

2010-05-02 22:12:00 2011

原创 WINCE SOURCES文件详析

1、SOURCES文件的结构:首先我们来看一个SOURCES文件,如下所示,SOURCES主要包括了一些用户的宏定义,这些宏会被MAKEFILE和NMAKE使用,来编译项目的源代码。 !if "$(BSP_NOHSMMC_CH0)"=="1" ##如果SMDK6410.BAT中SET BSP_NOHSMMC_CH0=1那么这个项目将不被编译。SKIPBUILD=1!endif 

2010-05-01 00:37:00 2312

原创 构建运行时映像

首先声明以下所用的到的BAT文件均在:WINCE600/PUBLIC/COMMON/OAK/MISC下面。构建映像文件是通过BldDemo.bat实现的。具体步骤如下:一、BldDemo.bat设置一些内部使用的环境变量。二、BldDemo.bat调用cebuild.bat来执行SYSGEN和BUILD过程,包括缟译源代码和链接库文件;            1、cebuild

2010-04-30 23:43:00 800

转载 如何设置/删除/查询wince环境变量

在WinCE中有很多的环境变量,那么如何设置/删除/查询这些环境变量呢:1. 查询环境变量:无论是在WinCE5.0还是WinCE6.0,当我们在PB里打开或者创建一个工程以后,我们可以在菜单中点“build”->“Open Release Directory in Build Window”,然后会弹出命令行对话框。在对话框中输入“set”命令,然后回车,就会看到当前工程下所有的环境变量以及

2010-04-30 23:22:00 1200

原创 _pass1.txt 跟_pass2.txt的作用

    在编译完一个工程后,在%_WINCEROOT%下的会出现__pass1.txt和__pass2.txt两文件,里面全部是OS组件的环境变量:SYSGEN_AC3_FONT=1sysgen_accessib=1sysgen_agfa_font=1SYSGEN_ASYNCMAC=1sysgen_as_base=1sysgen_as_file=1SYSGEN_ATL=1...... 

2010-04-30 16:18:00 1570

原创 WINCE 睡眠与唤醒

睡眠过程: 1.调用SetSystemPowerState进入睡眠状态. 2.电源管理驱动里设置设备的电源状态; 3.调用PowerOffSystem()进入内核处理; 4.调用各设备驱动的PowerDown(); 5.调用OEMPowerOff(): (1).保存芯片所有的寄存器值到一个静态数组(就是堆栈中); (2).先进行平台相关的动作,比如清屏,设置AD,USB等; (3).设置IO,关闭

2010-04-27 00:17:00 928

原创 WINCE 中句柄传送出现的错误

我曾因为一时大意,碰到了一个这样的问题,今天突然想到刚好可拿出来说说.问题现象:系统在进入睡眠时,驱动弹出一个异常.问题分析:经过我分析发现,异常是其中一个驱动在调用(IOCTL_POWER_SET)时产生的.因为这个驱动是新的,我开始怀疑IOCTL_POWER_SET里面调用的函数有问题,于是我将里面的函数注掉了,但异常照常产生.于是我又怀疑传入的参数有误,将参数也打出来,发现传入的电源的状态也

2010-04-27 00:15:00 586

原创 WINCE 驱动异常分析

WINCE 驱动异常分析 写过驱动的应该都碰到过驱动程序出现异常的问题,引起异常的原因有很多,例如,栈溢出,指针错误等。但我们怎么样才能最快速的找到产生异常的地方与原因。 WINCE 为我们编译连接的每个.dll文件生成了一个同名的.MAP文件,我们只要通过这个MAP文件就可以快速的找到产生异常的代码,MAP文件可以从/WINCE500/PBWorkspaces/project/Rel

2010-04-27 00:13:00 1287 1

原创 增加RIL组件时编辑出现的问题

当我把RIL组件加进到CE6的项目里去编译,本来好好的项目编译不过去了,我就选择了RIL的所有feature,没有改任何东西,理论上sysgen就可以了,但是确总是编译不过去看根目录下的build.log:E:/WINCE600/OSDesigns/POS410/POS410/Wince600/E6000_ARMV4I/cesysgen/oak/lib/ARMV4I/debug/coredll

2010-04-26 17:07:00 1001

原创 USB 时钟源会影响启动.

每次从USB下载NK都能启动系统,但Launch Existing form NAND的时候启动系统时会死机。其打印的信息如下:indows CE Kernel for ARM (Thumb Enabled) Built on Nov 24 2008 at 14:58:01DCache: 128 sets, 4 ways, 32 line size, 16384 sizeICache: 128 s

2010-04-26 16:02:00 1270

原创 vs2008 转换VS2005工程方法:

 vs2008 转换VS2005工程方法:1.第一步将整个VS2008的工程包复制一份,然后将Project.sln,Project.suo 工程文件册掉。(不删也是可以的,但最好删除了)2.第二步找到Project.vcproj文件,然后做如下修改:(1)将Version 从“9.00” 改成“8.00”。(2)如果你的SDK不一样,将Platform Name 修改成你的SDK名称,同时将

2010-04-26 15:42:00 562

CH7026 TOOLS

主要是配置CH7026的寄存器的工具,并自动生成表格。

2010-08-08

S3C6410 I2C DRIVER

S3C6410 I2C DRIVER,include iic read and iic write.

2010-07-24

SMDK2440A_WinCE50_BSP_B1400_1.061009_1.zip

SMDK2440A_WinCE50_BSP_B1400_1.061009_1.zip

2010-05-23

WinCE6.0 R3升级指导.pdf

非常详细的指导文件,WinCE6.0 R3升级指导.pdf

2010-05-21

wince 显示驱动程序开发

wince 显示驱动程序开发: 详细介绍了WINCE 显示驱动程序的每个函数的用法,共90文档,(全中文)。

2010-04-26

WIFI(SDIO8686)

WINCE 6.0 WIFI完整驱动包,下载后可直接用

2010-04-26

空空如也

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

TA关注的人

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