针对Micro Framework 3.0模拟器进行改造方法(浅谈)
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文件即可完成注册。
转载于:https://blog.51cto.com/lailjiaaie/1087185
针对Micro Framework 3.0模拟器进行改造方法(浅谈)相关推荐
- Micro Framework 3 0模拟器改造
Micro Framework 3.0的SDK去年十月份就已经发布了,本打算在该SDK发布之后就把我以前开发的,可支持GPIO.I2C.SPI测试的模拟器同步升级为3.0版,以便早点支持VS2008( ...
- 值得期待的.Net Micro Framework 3.0
大约在今年秋天的时候,微软就会推出令人期待的.Net Micro Framework 3.0.在业内对微软的产品,有这个么说法,3.0之前的只能算体验版,只有在3.0之后,才是比较稳定可靠及实用的.. ...
- .Net Micro Framework 4.0 RTM一览
.Net Micro Framework 4.0 终于在最近推出了RTM正式版,目前在SD中已经可以看到该分支,全部下载下来大概需要3.3G硬盘空间. 不过目前普通用户依然无法下载相关源码,估计完全开 ...
- Android 改造无线电,浅谈Android平台的物联网网关方案设计
提出了一种基于Android平台的物联网网关方案.该网关通过蓝牙串口通信实现物联网中WSN (无线传感器网络)中心节点和Android网关的数据传输,在Android平台上实现WSN节点信息管理并通过 ...
- .Net Micro Framework 快速入门
一.简介 Microsoft .NET Micro Framework 2001年由微软研究院开始研发,并随后在其MSN Direct项目中使用该技术,2007年9月微软对外发布2.0,2008年10 ...
- .Net Micro Framework 嵌入式开发
原文: http://www.cnblogs.com/yefanqiu/archive/2010/03/02/1676844.html ; .Net Micro Framework 快速入门 一.简介 ...
- .NET Micro Framework开发板用户简明手册(v3.0)
说明:前段时间已经先后发布了<.Net Micro Framework开发板用户简明手册>和< .NET Micro Framework开发板用户简明手册(v2.0)>,分别对 ...
- 在.Net Micro Framework中显示汉字
摘要:MF平台支持的字体是专有格式,扩展名为tinyfnt,需要用专门的转化工具才能把windows平台上的字体转换为tinyfnt字体.在.Net Micro Framework SDK中提供了一个 ...
- 【.Net Micro Framework PortingKit – 14】TinyCLR编译与测试
在前面的系列文章中我们不厌其烦地一一介绍了在NativeSample中如何开发和调试驱动.从今天开始,我们将介绍TinyCLR项目的相关知识,也许读者以为这又得需要洋洋洒洒十几篇才能介绍的完,其实不然 ...
最新文章
- SpringMVC启动后自动执行
- 对E—R模型的深入理解
- Python中静态方法的实现
- python_魔法方法(二):算术运算
- 阿里与腾讯“智慧城市”的O2O谁更强?(分享)
- iTOP4412 gdbserver安装
- RPC简介以及冲击波介绍
- php调用笛风接口,优雅的用PHP来实现解析抖音无水印视频!
- 前端下载svg格式图片
- BICC呼叫建立过程
- TensorFlow Lite,ML Kit 和 Flutter 移动深度学习:1~5
- 《50个教育法:我把三个儿子送入了斯坦福》书中的精髓:了解教育的本质,以言传身教、耐心引导的教育方式培养孩子成才。
- 图片热区自适应和设置热区边框
- 如何强化淘宝店铺标签 店铺标签优化方法
- Adobe Audition将音频转化为PCM
- FPGA学习——数字密码锁(上)
- Chess Tournament (巧用思维)
- 基于RBM的推荐算法
- 解决DeepLinux 15.8在I3 6100的核心显卡hd530播放视频隔1分钟卡顿几秒的问题
- php学习基础篇之html
热门文章
- html查看ie版本,jquery怎么判断浏览器是否是ie
- 打印html文件都是空白页,我打印时的额外空白页面(IE中除外) – 是我的打印css吗?...
- python3数据库框架_Python3 MySQL 数据库连接:安装pymysql(mysql数据库驱动), sqlalchemy(ORM框架)。...
- c# 程序员学习android(2)登陆界面
- fastreport调用frf文件直接打印_打印日志时 Logback 内部都做了些什么
- 计算机专业计算机 等级怎样填,计算机水平一般怎么填
- 评分卡模型开发(五)--定性指标筛选
- 运动目标跟踪(十四)--MIL跟踪
- 前景检测算法(十三)--KDE2000
- mysql中设置字符,MySQL 修改默认字符集