- 博客(16)
- 资源 (27)
- 收藏
- 关注
转载 WinCE中断结构分析
前言 在嵌入式系统当中,对于中断的处理是非常重要的一部分内容。许多外围设备都需要通过中断来实现自己的功能或者与系统内核交互,系统时钟本身也是由时钟中断产生的。所以本文旨在分析WinCE下的中断的结构,以及常用的几种实现方式,来帮助读者了解WinCE中断体系及实现自己的中断处理结构。 下面的介绍如非特殊说明,均以 ARM 架构为硬件基础,操作系统代码使用 Windows embedded CE 5.0。 WinCE中断体系结构从结构上看,WinCE中断涉及4 层,即:硬件层、内核层、OAL层、IST处
2010-09-29 09:28:00 843 1
转载 WinCE下的中断处理过程15814101899
中断在系统设计中的应用非常广泛,可以说,硬件中断、软件中断无处不在,在WINCE下驱动开发更是如此,比如:按键中断、触摸屏中断、AUDIO中断、DMA中断.....等等,几乎含概每个模块。因此,了解中断的处理过程对驱动开发极其重要,下面对WINCE下的中断处理过程做一个简单介绍。 中断处理可以分为两部分:中断服务例程-ISR、中断服务线程-IST。系统在处理中断异常的时候,应该要尽可能快的完成,因此,我们应该ISR中做简短的处理,把中断标识返回给中断处理器,越快越好。那么就要把大部分的处理留给IST来
2010-09-27 16:17:00 1811
转载 WINCE5.0的中断深入了解
1.总体了解流程首先描述wince5.0 (2440BSP)的中断流程:流程1.创建事件aà创建线程ISTà用InterruptInitialize〈系统中断号绑定线程IST〉à线程IST进入等待事件a状态(挂起状态)。流程2.外部引发中断à OEMInterruptHandlerà操作系统根据系统中断号触发事件a。流程3.挂起的IST线程等待到事件a进入就绪状态,得到执行时间后开始执行中断服务代码, 最后调用InterruptDone重新使能当前的中断。你需要为你的设备驱动写好中断处理请求(ISR)和中断
2010-09-27 15:52:00 995
原创 wince启动问题 INFO: OEMLaunch: Jumping to Physical Address ....死机不动
wince启动问题 INFO: OEMLaunch: Jumping to Physical Address ....死机不动发现问题出在VOID OEMInitDebugSerial() {#if FEILING_DEBUG S3C2440A_IOPORT_REG *pIOPortReg; UINT32 logMask; UINT32 count;[color=Magenta] pIOPortReg = (S3C2440A_IOPORT_REG*)OALPAtoVA
2010-09-25 15:38:00 1104
转载 基于S3C2440A的DM9000A的调试笔记
刘启明2010-5-3 FL2440的开发板提供了DM9000A的驱动源码,在开发板上测试通过,能正常上网。将驱动移到公司的机器上,由于公司的硬件电路和FL2440上连接有一些差别,所以移起来并不是那么一帆风顺。 对比飞凌开发板和公司产品的硬件电路,区别如下: 一:飞凌开发板的DM9000A,中断脚即34脚连到了2440的GPF7,而公司产品连到了GPF3. 二:FL2440的DM9000A选择脚CS脚,即37脚连到了2440的NGCS4,而公司产品连到了NGCS1. 三:FL2440的
2010-09-21 14:32:00 1197
转载 关于DM9000 的讨论
发表于:2009-12-08 09:53:10最近移植bsp发现wince5.0的DM9000A驱动有问题!现在在这个和大家讨论讨论!首先dm9000大部分驱动是官方的,下面就是一些细节的研究、我首先讲讲我的平台情况。1.SD0~SD15 -------- LDATA0~LDATA15 数据线和地址线复用2.CMD -------- LADDR2 唯一的一根地址线用于判断是数据还是地址3.nCS -------- nGCS3 片选BANK3下面是注册表主要部分信息:[HKEY_LOCAL_MACHINE/C
2010-09-21 14:19:00 1313
转载 开贴分析FL2440的bootloader
首先申明本人学习ARM不过数月,根基尚浅。以下分析如有谬误,还请大家之争。本着探讨和共同进步的目的,我把我花了几个星期看完的bootloader并做得分析贴出。首先,bootloader中最重要的就是2440init.s引导代码,现将其贴出,整个文档太大,附件中没法上传,需要的朋友可以去FL群空间里下载;=========================================; NAME: 2440INIT.S; DESC: C start up codes; Configure me
2010-09-21 13:13:00 2380
转载 s3c2440(2410) USB HOST不稳定的原因及解决方法(转)
<br />今天tpu拿出一块2440板子调试,发现尽管采取了种种措施,USBHOST总是会偶尔不工作.把UCLK通过CLKOUT0引出,用示波器查看,发现不工作的时候,UCLK根本就没有稳定下来.于是仔细思考,影响USB的有这几个地方:<br />外部晶振16.9344Mhz <br />LOCKTIME寄存器的UPLL LOCKTIME <br />UPLLCON <br />CLKSLOW寄存器的UPLL开关 <br />接下来逐个排除:<br />晶振是MPLL和UPLL公用,从来没听说过MPLL不
2010-09-16 15:44:00 428
原创 2440 FCLK, HCLK, and PCLK
<br />FCLK, HCLK, and PCLK<br />FCLK is used by ARM920T.HCLK is used for AHB bus, which is used by the ARM920T, the memory controller, the interrupt controller, the LCD controller, the DMA and USB host block.<br />PCLK is used for APB bus, which is used by
2010-09-16 15:41:00 612
转载 介绍一种很棒的wince驱动调试方法——在wince应用程序中直接访问硬件
直接在wince下操作硬件可以避免烧写NK,避免繁琐的驱动调试,用来验证硬件好坏非常有用,是系统起来后调试外设的很好的手段,现在就来分析吧。 一、在wince5.0 平台 wince平台是比较成熟的平台,感觉驱动比较好调试,驱动和应用的写法可以一模一样的,甚至我们可以采用EVC来开发流驱动,我就试过用EVC开发一个流驱动到PDA上,目前已经投产,效果很不错。 在wince5.0 上直接访问硬件有如下方法: 1、直接访问uncached 虚拟地址,成功案例如下: //-GPB for LCD
2010-09-16 15:39:00 613
转载 DNW应用程序错误,DNW错误问题解决
三星的USB驱动一直不是很稳定,有时候调2450,6410的时候,经常会把桌面系统搞得蓝屏。严重的时候,DNW都无法打开,提示DNW应用程序错误。很多人被难在这里了,只能重装系统。其实并不用重装系统,只用把C盘的DNW.ini文件删掉就OK了。 标在这里是为了让更多玩三星处理器的朋友,不要被DNW这破东西给搞得重装系统就不划算了。
2010-09-16 15:36:00 687
原创 PB5.0 奇怪的错误
<br />在 BIB 文件中加入<br /> testdrv.dll $(_FLATRELEASEDIR)/testdrv.dll NK SH<br />结果写成<br /> testdrv $(_FLATRELEASEDIR)/testdrv.dll NK SH<br />在系统调用romimage.exe文件时弹出RUN TIME ERROR !一定要记住呀!不要写错文件名称!
2010-09-15 15:56:00 586
转载 # ; @REM !等符号在WINCE6.0下的意义和作用
其实在我的日志里面很早就有介绍这里面一些符号的意义了,具体可以看我的第二篇日志《 .bat 配置文件的一些符号所代表的意思?》。只是当时学的不是很扎实,今天师妹请教,于是整理一篇日志,方便后面的同学学习。 其实这些文件都是一个批处理文件,具体的指令可以参考windows shell 编程指令。 文章标题中出现的符号不是我们经常所看见的普通标点符号,也不要往C语言哪方面的意思去想。正所谓对事不对人,同一个符号在不同的环境下有着不同的意思。上面提到饿这些符号一般存在于以下几个重要的文件里面:pla
2010-09-14 10:21:00 682
转载 wince 中的Dirs文件和Source文件
<br />1. Dirs文件<br /> 关于Dirs文件,就是指定要编译的路径,这个地球人都知道。还是简单介绍一下。按照文档上面介绍有三种定义:DIRS,DIRS_CE和OPTIONAL_DIRS。<br /> DIRS:就是指定要编译的目录。<br /> DIRS_CE:只有目录下的源代码用于WinCE的映像文件时,才编译该目录。<br /> OPTIONAL_DIRS:指定可以选择编译的目录。比如:OPTIONAL_DIRS=proj1,如果想编译proj1目录,可以设置BUILD_OPTI
2010-09-02 16:00:00 449
转载 wince中解析reg和bib文件的合并
在WINCE中,reg文件和bib文件是两种重要的文件,它影响了整个的CE系统。在解析的过程中,原始的Common.bib, Config.bib, Project.bib, Platform.bib等文件会合成为ce.bib,而原始的Common.reg, Project.reg, Platform.reg等文件会合成Reginit.ini文件,并进一步压缩成为default.ftf。但是在解析过程中,两者的具体合成过程却不尽相同。(1)合成bib文件fmerge –bib命令就是合成bib的,它会依次提
2010-09-02 11:52:00 717
转载 Bad database entry: 错误解决办法
<br />Build時出現這個error<br />BUILD: [00:0000000004:ERRORI] Bad database entry: 複製 -bsp_cfg.h 44 0 1C83BA26E388E00.把 platform 下的build.dat刪掉後就OK了。<br />这个原因是你修改了去驱动的文件夹内容,导致一些莫名的错误。其实你改正了,PB还是认为你没有改正。<br />这就要要手动删除一些信息,build.dat文件。<br />不错的经验。以前因为这个错误老是要重新建立工程
2010-09-01 15:23:00 494
Cadence 元件封装
2012-11-23
RNIDS PC端驱动RNDIS USB kit
2010-12-28
VDD.VEE.VSS什么意思.
2009-04-20
模电基础最基础的教程了
2009-04-20
Proteus 仿真库简介
2009-04-20
运算放大器的原理简介
2009-04-20
电容、电感滤波电路作用原理.
2009-04-20
0欧的电阻在电路中的用法
2009-04-20
场效应管的原理及分类
2009-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人