导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[爱吃肉][原创]编写Windows CE程序 (



No.39701
作者:爱吃肉
邮件:wa.fiet@yahoo.com.cn
ID:95577
登陆:1次
文章数:78篇
最后登陆IP:
最后登陆:2007/12/5 16:33:41
注册:2007/12/5 16:33:41
财富:100
发帖时间:2008/5/28 16:21:00
发贴者IP:123.123.155.53
标题:爱吃肉:[原创]编写Windows CE程序 (三)
摘要:No.39701[原创]编写Windows CE程序 (三) Windows CE应用程序可以用Visual Studio开发两种不同的应用程序。Microsoft Mobile Information工具套件(MMIT)允许开发人员建立thin client应用程序,它可以在其访问设备的基础上用来传送信息。而Windows CE内建浏览器以及使用WAP的移动电话都可以使用已经建立的这种应用程序。
大多数Windows CE设备不需要full-time的互联网连接,而且也没有本地的Web服务器,所以保留主ASP.NET应用程序以及Web服务没有多大意义。当然,这并没有限制设备的Web服务能力,只是限制了它们充当主机的能力。由于EVC和EVB工具套件没有提供表格控件,所以开发者不得不创建自己的控件,因此如果用.NET编程无疑在这个方面简化了不少时间。
CF集成了ADO.NET和SQL Server/CE。只要开发者熟悉如何在完全版.NET框架下用VB.NET或者C#开发数据库应用程序,那么就可以在Windows CE下用同样的技巧来开发应用程序。

IRQHandler中断处理:
IRQHandler就是中断处理句柄,IRQ在外部中断源在需要向处理器请求服务时发生,比如:时钟、外围器件FIFO上/下溢出、按键等等。
NESTED_ENTRY IRQHandler 
Sub     Lr, Lr, #4
//保存将要用到的寄存器和Lr压入STACK_IRQ
Stmfd   sp!, {r0-r3, r12, Lr}
PROLOG_END 
将要用到的寄存器压入STACK_IRQ,这样就完成了准备工作。 
//Test interlocked API status.
//INTERLOCKED_START EQU USER_KPAGE+0x380 
//INTERLOCKED_END EQU USER_KPAGE+0x400 
sub     r0, Lr, #INTERLOCKED_START 
cmp     r0, #INTERLOCKED_END-INTERLOCKED_START 
bllo    CheckInterlockedRestart 
以上内容是关于互锁的检测。如果中断发生在互锁API的执行过程中,需要专门的处理。
这些API都是放在INTERLOCKED_START和INTERLOCKED_END之间的,通过Lr很容易就检查出是否是INTERLOCKEDXXX的过程。
……
CALL    OEMInterruptHandler 
ldmfd   sp!, {r1} 
ldmfd   sp!, {lr} 
msr     cpsr_c, #IRQ_MODE:OR:0x80 
ldmfd   sp!, {r1}
msr     spsr, r1
ldr     lr, =KData 
//时间片已到,进行调度 
cmp     r0, #SYSINTR_RES ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:5328毫秒 查询6次