`
lovecontry
  • 浏览: 1095027 次
文章分类
社区版块
存档分类
最新评论

.Net Micro Framework研究—带IO的模拟器

 
阅读更多

原打算用MF开发一个类似Windows桌面的程序(因为发现MF居然支持渐进色,可以绘很炫的界面),由于目前的模拟器仅支持5个键,所以在做类Windows开始菜单的时候犯了难,4个方向键和一个OK键,没有一个适合做开始菜单键的。记得Digi的模拟器至少支持9个键,既然他能做,理论上我也可以。一阵研究后还真有了成效,在五个键的基础上我又添加了两个键,一个是菜单键(对应PC键盘可以是Windows键或空格键),一个是返回键(对应PC键盘上的ESC键),也就是说我原来做得模拟器上的那两个键终于起作用了。
添加完这两个键后,突然灵机一动,以前我苦苦不能做的IO模拟功能,应该也可以做了,做Windows界面的心没有了,转为一心研究IO模拟器了,功夫不负有心人,几个小时后便大功能告成了。把以前Digi开发的IO测试程序稍加调整一下就可以试了(需要重新设置一下Pin)。运行界面如下:
测试代码如下:
public class DigiTest
{
public static void Main()
{
//Digi
//Cpu.Pin[] pin = new Cpu.Pin[5] { (Cpu.Pin)0, (Cpu.Pin)1, (Cpu.Pin)2, (Cpu.Pin)5, (Cpu.Pin)6 };
OutputPort[] output = new OutputPort[8];
InputPort[] input = new InputPort[8];
//叶帆模拟器GPIO的pin定义
Cpu.Pin[] pin_I = new Cpu.Pin[8] { (Cpu.Pin)10, (Cpu.Pin)11, (Cpu.Pin)12, (Cpu.Pin)13, (Cpu.Pin)14,(Cpu.Pin)15, (Cpu.Pin)16, (Cpu.Pin)17 };
Cpu.Pin[] pin_Q = new Cpu.Pin[8] { (Cpu.Pin)20, (Cpu.Pin)21, (Cpu.Pin)22, (Cpu.Pin)23, (Cpu.Pin)24, (Cpu.Pin)25, (Cpu.Pin)26, (Cpu.Pin)27 };
for (int i = 0; i < 8; i++)
{
input[i] = new InputPort(pin_I[i], false, Port.ResistorMode.PullDown);
output[i] = new OutputPort(pin_Q[i], false);
}
int intNum = 0;
while (true)
{
output[intNum].Write(!output[intNum].Read());
Debug.Print(input[0].Read().ToString() + " " + input[1].Read().ToString() + " " + input[2].Read().ToString() + " " + input[3].Read().ToString() + " " + input[4].Read().ToString()+ " " + input[5].Read().ToString() + " " + input[6].Read().ToString() + " " + input[7].Read().ToString());
Thread.Sleep(1000);
if (++intNum > 7) intNum = 0;
}
}
}
运行后,效果果然不错,改变输入,则调试信息中出现对应的变化(通过这个也深刻理解了new InputPort(pin_I[i], false, Port.ResistorMode.PullDown)中的上拉和下拉的含义),同时程序中改变输出,则对应的输出灯也在同步亮灭。
细心的读者会发现,我的模拟器可以让InputPort和OutputPort的实例同时运行,原因就是他们的Pin值不同,而Digi的I/O共用了0、1、2、5、6(天知道他们为什么要这样?)。
以后在测试相关的IO应用,不必接上硬件了,直接用模拟器就可以了。不知道模拟器是否支持串口模拟(映射PC机物理串口),以后有时间研究一下。不过我想TCP/IP一定会有问题,一是MF目前的TCP/IP都不完善,第二模拟器目前也不可能支持虚拟网卡(类似PPC模拟器或虚拟机)。
目前模拟器支持8路数字量入,8路数字量出,模拟量以后有机会在加入。
[注:目前微软官方的模拟器仅支持LCD和5个按键功能,其它的都不支持]
分享到:
评论

相关推荐

    Expert .NET Micro Framework

    The Microsoft .NET Micro Framework is a small and efficient .NET runtime environment used to run managed code on devices that are too small and resource constrained for Windows CE and the Compact ...

    Microsoft .net micro framework 4.0 SDK 含源码

    1. **编译器**:这个SDK内含了专门针对.NET Micro Framework优化的C#编译器,使得开发者可以使用C#语法编写代码,同时保持与标准.NET Framework的兼容性。 2. **类库**:NETMF提供了一套丰富的类库,这些类库包括...

    Microsoft .NET Micro Framework嵌入式编程(美 汤普逊)

    《Microsoft .NET Micro Framework嵌入式编程》是美国作者汤普逊所著的一本深入探讨.NET Micro Framework(简称.NET MF)技术的专业书籍。这本书旨在帮助读者理解和掌握如何在嵌入式系统中应用.NET Micro Framework...

    Microsoft .NET Micro Framework 2.5 SDK

    2. **Setup.exe**:这是安装程序,用于在开发计算机上安装.NET Micro Framework 2.5 SDK的所有必要组件,包括编译器、调试器、模拟器等,以便于开发者进行开发和测试工作。 3. **autorun.inf**:这是一个自动运行...

    《玩转.NET Micro Framework移植-基于STM32F10x处理器》源程序.rar

    《玩转.NET Micro Framework移植-基于STM32F10x处理器》这本书的主题聚焦于将.NET Micro Framework(简称.NET MF)应用到STM32F10x系列微控制器上,这是一个涉及嵌入式系统开发、C#编程以及硬件平台集成的重要技术...

    .Net Micro Framework 移植说明文档

    ### .Net Micro Framework 移植说明文档 #### 概述 .Net Micro Framework(.Net MF)是微软为小型设备设计的一个精简版的.NET框架。它不仅继承了.NET的硬件独立性,还提供了两个关键的抽象层:硬件抽象层(HAL)与...

    Expert .NET Micro Framework(德 Jens Kühner)

    11. **案例研究**:书中可能包含实际的项目案例,展示了.NET Micro Framework在不同应用场景中的应用,如智能家居设备或医疗设备。 通过阅读《Expert .NET Micro Framework》,开发者可以掌握在资源受限环境中使用...

    .net micro framework file

    在.NET Micro Framework中,`System.IO`命名空间提供了对文件和目录的基本操作。下面将详细介绍如何在.NET MF中进行文件操作: 1. **创建文件**:你可以使用`File.Create()`方法来创建一个新的文件。例如: ```...

    Windows Embedded从入门到精通系列课程(18):.NET Micro Framework——用模拟器零成本体验MF开发

    在这个部分,我们专注于如何通过模拟器进行零成本的.NET Micro Framework开发,让你无需硬件就能开始实践。 **.NET Micro Framework概述** .NET Micro Framework(NETMF)是微软为小型、低功耗设备开发的一个操作...

    如何顺利编译.Net Micro Framework Porting Kit 4.1

    ### 如何顺利编译.NET Micro Framework Porting Kit 4.1 #### 一、概述 .NET Micro Framework (简称 .NET MF) 是一个轻量级的 .NET 版本,专为资源受限的嵌入式设备设计。.NET Micro Framework Porting Kit 提供了...

    .Net Micro Framework模拟器

    这是我自己改造的.Net Micro Framework模拟器,比windows自带的漂亮多了。 覆盖该目录下的同名文件(路径以实际开发包安装位置为准)即可。 C:\Program Files\Microsoft .NET Micro Framework\v2.0.3036\Tools 支持...

    .NET Micro Framework Key文件部署说明

    ### .NET Micro Framework Key文件部署说明 #### 一、概述 .NET Micro Framework(.NET MF)是一种用于构建和运行小型嵌入式设备上的应用程序的框架。它为开发人员提供了类似于桌面版.NET Framework的功能,但针对...

    GHI .NET Micro Framework培训教材(英文版)

    ### GHI .NET Micro Framework 培训教材知识点解析 #### 一、关于教材与目标受众 本教材《GHI .NET Micro Framework培训教材》专为初学者设计,旨在介绍.NET Micro Framework及其在嵌入式系统开发中的应用。教材...

    .Net Micro Framework 模拟器(支持方向键)

    注:比上一个模拟器多了支持方向键控制 这是我自己改造的.Net Micro Framework模拟器,比windows自带的漂亮多了。 覆盖该目录下的同名文件(路径以实际开发包安装位置为准)即可。 C:\Program Files\...

    .NET Micro Framework for Windows 7(X64) USB驱动安装说明

    .NET Micro Framework(简称.NET MF)是微软开发的一个嵌入式平台,主要面向资源有限的设备,如物联网(IoT)设备、智能家居控制器等。它提供了一个运行环境,使得开发者能够利用C#或VB.NET等高级语言进行编程,而无需...

    expert .net micro framework

    expert .net micro frameworkexpert .net micro frameworkexpert .net micro framework

    .NET Micro Framework Testing Batch File Generator

    .NET Micro Framework自动化测试工具,需.NET Micro Framework3.0和.NET Micro Framework Test Kit支持...

    .NET Micro Framework开发板使用手册(红牛开发板)

    .NET Micro Framework(简称.NET MF)是微软公司推出的一个嵌入式操作系统平台,主要设计用于资源有限的设备,如物联网(IoT)中的智能硬件、工业自动化设备和消费电子等产品。红牛开发板是一款基于.NET Micro ...

Global site tag (gtag.js) - Google Analytics