您的位置:首页 > 其它

针对Micro Framework 3.0模拟器进行改造方法(浅谈)

2012-12-12 16:49 281 查看
Micro Framework 3.0的SDK去年十月份就已经发布了,本打算在该SDK发布之后就把我以前开发的,可支持GPIO、I2C、SPI测试的模拟器同步升级为3.0版,以便早点支持VS2008(Micro Framework v2.x仅支持VS2005,Micro Framework v3.0仅支持VS2008)。不过前段时间太忙了,现在趁着年假,花了一两天的工夫,终于达成了心愿。

新的模拟器相对于以前的模拟器有了两部分改变,下面详细说一下:

一、由于Micro Framework v3.0 SDK已经含有触摸屏组件,所以新模拟器中去掉了以前的SPI通道的鼠标模块,添加了最新的触摸屏支持。

this.lcdDisplay.TouchPort = (TouchGpioPort)_emulator.GpioPorts[TouchGpioPort.DefaultTouchPin];

protected override void OnMouseDown(MouseEventArgs e)

{

base.OnMouseDown(e);

flags = TouchSampleValidFlag | TouchSampleDownFlag;

_touchPort.WriteTouchData(flags, e.X, e.Y);

}

protected override void OnMouseUp(MouseEventArgs e)

{

base.OnMouseUp(e);

flags = TouchSampleValidFlag | TouchSamplePreviousDownFlag;

_touchPort.WriteTouchData(flags, e.X, e.Y);

}

protected override void OnMouseMove(MouseEventArgs e)

{

base.OnMouseMove(e);

if ((flags & (TouchSampleValidFlag | TouchSampleDownFlag)) == (TouchSampleValidFlag | TouchSampleDownFlag))

{

flags = TouchSampleValidFlag | TouchSamplePreviousDownFlag | TouchSampleDownFlag;

if ((e.X >= 0) && (e.Y >= 0))

{

_touchPort.WriteTouchData(flags, e.X, e.Y);

}

}

}

二、3.0 SDK已经支持文件系统,所以新模拟器添加了这部分功能支持,不过新功能有些讨巧,不像虚拟机能支持真正的磁盘镜像文件,而是引用了windows自身文件操作API,把windows的文件操作封装到模拟器中。

List bsdList = new List();

removableBSDs = new Dictionary();

foreach (BlockStorageDevice bsd in _emulator.BlockStorageDevices)

{

if (bsd is EmulatorRemovableBlockStorageDevice)

{

bsdList.Add((EmulatorRemovableBlockStorageDevice)bsd);

}

}

if (bsdList.Count > 0)

{

insertEjectMenuItem.Visible = true;

foreach (EmulatorRemovableBlockStorageDevice removableBSD in bsdList)

{

ToolStripItem item = new ToolStripMenuItem(GetItemText(removableBSD), null, InsertEjectOnClick);

item.Name = removableBSD.Namespace;

insertEjectMenuItem.DropDownItems.Add(item);

removableBSDs.Add(removableBSD.Namespace, removableBSD);

}

}





模拟器V3.0





新模拟器改进了注册机制,下载后解压到任一目录,直接运行YFMFEmulator.exe文件即可完成注册。

本文出自 “程序快乐天使” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐