Windows Embedded Blog from China

June 2008 - Posts

  • Windows Embedded Standard开发初体验(一)

    作者:马宁 Windows Embedded Standard ,微软又创造了一个新名词。与此同时, XP Embedded ,成为了一个历史名词。微软在年初推出了新的 Windows Embedded 产品线命名规则: Windows CE 改名为 Windows Embedded Compact ,而 XP Embedded 改名为 Windows Embedded Standard , WEPOS 改名为 Windows Embedded POSReady ,还有新推出的针对导航产品的 Windows Read More...
  • 22, .Net Micro Framework研究—让MF支持英文输入法

    作者: 刘洪峰 一旦支持了鼠标功能,MF可研究的领域,似乎变得无穷无尽,这也许是我近几天一直陷于此中不能自拔的原因了。 有了鼠标即使没有键盘,我们也可以通过虚拟键盘完成输入工作。这个工作很有意义,也很有挑战性,因为这不是windows平台,也不是Dos平台,这是“一穷二白”的MF平台,所有的工作都得从头做起(实现绘制键盘,向有输入焦点控件发送按键信息,删除,添加字符等等功能)。 目前字符串不仅无法转换为数字,并且没有字符插入功能,所以这个函数也必须自己来实现,此外输入焦点光标也需要自己绘制,好了,先不说难处了,先看看最终成果。 Read More...
  • 21, .Net Micro Framework研究—实现SideShow窗体界面

    作者: 刘洪峰 基于MF系统的Windows SideShow界面是非常炫的(如下图)。既然微软能用.Net Micro Framework实现这么棒的界面效果,我想我们也能做到。 (SideShow模拟器界面和游戏程序中的右键菜单—注意菜单弹出后,其它的界面变暗了) 现在的任务是设计一套支持鼠标(或触摸屏)的窗体框架(目前MF提供的Window类仅支持按键功能),所以正好把SideShow如此炫的界面元素也可以添加进来。 用过MF的人知道是用下面的方法来实现按键事件接收的,既然我们要支持鼠标功能,所以最好也用类似的机理实现。 Read More...
  • 20, .Net Micro Framework研究—数据的永久存储

    作者: 刘洪峰 .Net Micro Framework不支持文件系统(目前该项功能正在研发之中),所以无法像Windows和windows ce平台那样把需要永久保存的数据保存到文件之中。内存中保存的数据只要系统一掉电,所有的数据也都消失了,这对一些需要保存参数的应用来说真是不妙。 这几天在研究MF触摸屏功能时就遇到该问题,因为触摸屏校准之后,需要保存校准后的参数,否则MF一重启,难道还需要重新校准不成? 感谢Donald Thompson 和 Rob S. Miles,从他们的大作上找到了问题的解决办法。办法就是把对象保存到Flash(EEPROM)中(有点像对象的二进制序列化)。 Read More...
  • 19, .Net Micro Framework研究—用MF控制机器人

    作者: 刘洪峰 机器人研究一直是我很早以前的梦想,没有想到在深入研究.Net Micro Framework同时能和机器人搭上了联系。 美国iRobot作为一家大型的机器人军工机械厂,其家用机器人吸尘器(电不足时能自动充电的机器人)已经让iRobot公司名满天下。我们研究的机器人就是iRobot公司推出了的新作——一个可以自己编程的机器人移动平台iRobot Create。 由于最近才从微软拿到这个机器人,所以我们第一步就是先要了解这个机器人,然后MF才能作为它的大脑控制该机器人。 让我们先一睹iRobot Read More...
  • 18,.Net Micro Framework研究—让MF支持鼠标

    作者: 刘洪峰 MF的标准模块仅支持按键,并不支持鼠标功能。但是对一些常见应用来说,如果没有鼠标(或触摸屏)用起来就太不习惯了。有什么办法可以让MF支持鼠标功能呢?第一,外部设备必须把鼠标信息传到MF应用程序,应用程序根据这些信息绘制鼠标及执行相应的动作。鼠标信息最少包含三种,鼠标按键状态(按下或放开),鼠标坐标(x,y)。 目前,Spi通道可以非常方便地建立设备和用户程序之间的联系,所以就考虑用Spi来实现该功能。 第一步,还是从我编写的模拟器入手,添加了一个Spi驱动类。 //MouseDevice Read More...
  • 17, .Net Micro Framework研究—用MF编写俄罗斯方块

    作者: 刘洪峰 上次编写俄罗斯方块,好像是N年前的大学时代,使用TC2.0在DOS平台上开发的,由于当时的代码是保存在3.5寸软盘上的,到现在那些程序早已经作了古,没有了踪影。俄罗斯方块其实编写并不太容易,要考虑的东西还是蛮多的,以前想在PPC上用.Net精简框架集实现,后来起了个头,没有太大的动力,也就作罢了。现在对MF充满了激情,所以从零做起(没有参考任何现成代码,只不过还是依照我早期的思路编写而成),花费我大半天的时间才编写完毕(在编写过程中,还发现MF对二维数组支持不大好,我后面会提到)。 Read More...
  • 16, .Net Micro Framework研究—模拟器直接运行MF程序

    作者: 刘洪峰 上次用MF做了一个Windows桌面,感觉还不错,所以就想做一做如俄罗斯方块、贪吃蛇之类的小游戏,不过每次用模拟器运行MF程序,都需要打开VS2005的源码程序,然后单击启动。VS2005是个庞大的家伙,启动它至少要半分钟,所以很是麻烦。模拟器有没有可能直接运行MF程序啊(或者说不需安装VS2005及MF开发包,在其它windows上仅借助模拟器就可以运行)?就像一些游戏模拟器一样直接加载相应的文件就可以使游戏运行起来。 既然VS2005能启动运行,我想我们也可以,唯一不同的是模拟器加载的参数不同而已。 Read More...
  • 15, .Net Micro Framework研究—Windows桌面

    作者: 刘洪峰 今天是 2007年最后一天,还有几个小时就迎来充满期待的2008年了。元旦放假至今不到48个小时的时间里,我至少有30多个小时坐在电脑前研究MF相关技术,在缺少必要的硬件的情况下,利用现有的资料,扩充了现有的模拟器功能。也希望像我这样的穷人们,借助模拟器,能体验一下以前只有拥有硬件才能调试的功能。 以前为了介绍 MF图形方面的功能,我做了一个“北京2008奥运场馆查询”程序,现在看来那个程序,已经不足以展示MF整体功能的强大。既然Windows 2000 /XP/vista,Windows Read More...
  • 14, .Net Micro Framework研究—带I2C总线的模拟器

    作者: 刘洪峰 I2C以前没有怎么接触过,所以做它的模拟功能,只能靠着感觉走,有不妥之处,还望方家指正。做出了spi相关的模拟功能,做I2C相对也就不难了,只不过用户操作I2C总线读写数据的时候要稍微麻烦一点。 测试程序运行界面: 模拟器中的I2C总线的相关代码如下: public class I2CComponent : I2cDevice { public byte [] bytData = new byte [8]; protected override void DeviceRead( byte Read More...
  • 13,.Net Micro Framework研究—带AD的模拟器

    作者: 刘洪峰 继昨天的研究,希望再接再厉把AD模入模出在模拟器上也实现出来,本以为挺简单,其实AD相关功能,与GPIO不同,在模拟器中前者通过GpioPort实现,后者通过SpiDevice实现。幸好有Temperature(温度采集)示例可以参考,否则一时真无法下手。不知道为什么,很简单的代码他们总写的很复杂,让你很难看懂,幸好有以前的相关的经验做底子,用了大半天的时间模入模出都搞定了。 下面就是模拟器中的AD输入输出的相关代码。 public class SpiADComponent : SpiDevice Read More...
  • 12, .Net Micro Framework研究—带IO的模拟器

    作者: 刘洪峰 原打算用 MF开发一个类似Windows桌面的程序(因为发现MF居然支持渐进色,可以绘很炫的界面),由于目前的模拟器仅支持5个键,所以在做类Windows开始菜单的时候犯了难,4个方向键和一个OK键,没有一个适合做开始菜单键的。记得Digi的模拟器至少支持9个键,既然他能做,理论上我也可以。一阵研究后还真有了成效,在五个键的基础上我又添加了两个键,一个是菜单键(对应PC键盘可以是Windows键或空格键),一个是返回键(对应PC键盘上的ESC键),也就是说我原来做得模拟器上的那两个键终于起作用了。 Read More...
  • 11,.Net Micro Framework研究—Tinyfnt字体研究

    作者: 刘洪峰 目前.Net Micro Framework系统仅支持Tinyfnt字体文件,官方仅提供两种字库: NinaB.tinyfnt,small.tinyfnt。用我后来做的程序打开这两种字体,发现它们仅支持如下100字符: !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€°■▪ 如果要显示汉字,并且设置大小、粗细等等参数,必须要用专门的转换工具把 Read More...
  • 6,革新2410D开发板试用手记(六)

    作者:马宁 上篇文章: http://www.cnblogs.com/aawolf/archive/2008/06/23/1228203.html 下载 Image 的过程与 Digi 开发板类似,在 Image 编译成功后,我们打开 Platform Builder 的 Target 菜单,选择 Connectivity Options 。 我们可以使用 CE Device 作为下载的 Target Device ,为了之后的部署方便,我们还是创建一个革新的 Device ,作为下载目标设备。在 Read More...
  • 5,革新2410D开发板试用手记(五)

    作者:马宁 设置 Boot-loader 上篇文章: http://www.cnblogs.com/aawolf/archive/2008/06/05/1214281.html 编译成功后,我们就要将 NK.bin 文件下载到开发板上了。下载镜像文件需要 boot-loader 和 EBoot 的支持,与 Digi 开发板相同,革新开发板也将 boot-loader 和 Eboot 烧写到了 NAND Flash 中,我们只需要通过超级终端来完成 boot-loader 的设置和 Eboot 的启动即可。 Read More...
  • 3'革新2410D开发板试用手记(三)

    上篇文章: http://www.cnblogs.com/aawolf/archive/2008/05/30/1210738.html 创建平台 Windows CE 6.0 R2 的开发平台基于 Visual Studio 2005 。打开 Visual Studio 2005 后,创建新工程,在 Platform Builder 选项中选择创建新的 OS Design ,启动平台定制的向导。我们忽略向导的欢迎界面,第二个界面为选择 BSP 的界面: 之前安装了 Digi 的 BSP ,在我们部署了革新 Read More...
  • 4'革新2410D开发板试用手记(四)

    作者:马宁 添加 Catalog Item 上篇文章: http://www.cnblogs.com/aawolf/archive/2008/06/03/1212696.html 在完成向导之后,我们不再演示 Bib,Dat 和 Reg 文件编辑器的使用,而是直接进入添加 Catalog Item 的编辑。需要指出的是,我第一次做的时候是直接编译了 OS Design ,结果产生了错误,如下: 这个错误告诉我们 BSP 中缺少 ohci2.dll 的组件。经过确认这是革新 BSP 中的一个小 BUG Read More...
  • Windows Embedded Standard CTP发布!

    在国际儿童节,接到了 Windows Embedded Standard 产品组施老师的邮件。当然,她不是祝我节日快乐(失败啊,今年连 5.4 都是最后一年了,还敢到 6.1 添乱?),而是告诉我 Windows Embedded Standard 的 CTP (社区预览版)发布了。 Windows Embedded Standard ,原名 Windows XP Embedded ,籍贯:华盛顿州雷德蒙市……需要说明的是,这次 Windows Embedded Standard 只是 CTP 版本的发布,大家先拿来玩玩就好了,正式 Read More...
  • Windows Embedded从入门到精通6月预告

    经历了九个月的时间,“ Windows Embedded 从入门到精通”系列课程终于到了收官阶段。 尽管很俗套,还是要感谢参与了这个系列课程的所有讲师,没有他们认真而执着的工作,就不会有如此高质量的课程系列。在做这个系列课程之前,我们对于 Windows Embedded 的讲师资源几乎一无所知,于是我们从 MVP 开始,然后到微软内部的技术专家,再到大学老师、公司内的技术专家,慢慢的开始有了 Windows Embedded 的讲师列表。 很多讲师之前都没接触过 Webcast 的形式,但是都无一例外地为我们留下了精彩的技术演讲,一方面是他们精湛的技术,另一方面是他们诚恳的态度。我不知道他们在背后下了多少功夫,但我知道,每个讲师都是在自己的休息时间,将自己开发检验的点滴积累起来,给大家呈现出精彩的一个小时。特别感谢的是程胜辅老师,特地因为 Read More...

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Microsoft
Page view tracker