Tag: .net micro framework

如何在状态模式代码中传递中断的本机事件处理程序

我转向我的netmf项目的状态模式。 基于此的东西: http : //www.dofactory.com/Patterns/PatternState.aspx#_self2 我有一个旋转编码器旋钮,在每种状态下都会有不同的作用。 我一直在试图绕过这个,并且无法在我的头上做任何工作。 我不知道在哪里以及如何将中断处理程序注入每个状态以及如何调用中断处理程序的开关。 没有状态模式,代码看起来像: RotaryEncoder RE = new RotaryEncoder(pin1, pin2);//create new instance of knob RE.OnRotationEvent += OnRotationEventHandler;//subscribe to an event handler. //do other things … … static void OnRotationEventHandler(uint data1, uint data2, DateTime time) { //do something } 那么,正确的编码方式是什么,为每个州都有单独的“OnRotationEventHandlers”? 它是上下文的一部分吗? 抽象基类的一部分? 谢谢您的帮助!

.NET Micro Framework的扩展方法

似乎扩展方法不支持/使用.NET Micro Framework。 有没有办法让这个有用的语言function工作?

不能将’int’类型转换为’ushort’:已经明确表达

我试图明确地将一个int转换成一个ushort,但是我得到的不能将’int’转换为’ushort’ ushort quotient = ((12 * (ushort)(channel)) / 16); 我正在使用.Net Micro框架,因此BitConverter不可用。 为什么我首先使用ushort与我的数据如何通过SPI发送有关。 我可以理解这个特殊的错误已经在这个网站上提出但我不明白为什么当我明确表示我不关心是否有任何数据丢失,只需将32位切成16位我会很高兴。 public void SetGreyscale(int channel, int percent) { // Calculate value in range of 0 through 4095 representing pwm greyscale data: refer to datasheet, 2^12 – 1 ushort value = (ushort)System.Math.Ceiling((double)percent * 40.95); // determine the index position within GsData where our data […]

在.NETMF 4.0中解析RFC822-Datetime

我有一个用.NETMF编写的应用程序,它要求我能够解析RFC822-Datetime。 通常,这很容易,但NETMF没有DateTime.parse()方法,也没有某种模式匹配实现,所以我几乎被卡住了。 有任何想法吗? 编辑:可能需要“智能”解决方案。 这很困难的部分原因是所讨论的日期时间倾向于在其中有额外的空间(但有时只是)。 一个简单的子字符串解决方案可能会在某一天工作,但是当日期时间在某些部分之间有一个额外的空间时,它会失败。 我无法控制日期时间,它来自NOAA。

什么更有效:List .Add()或System.Array.Resize()?

我正在尝试确定List.Add()与使用Array.Resize()方法相比更有效。 Array.Resize的文档说它会复制整个数组,并将其放入一个新对象中。 必须丢弃旧对象。 这个旧对象在哪里? 在堆栈或堆上? 我不知道List.Add()是如何工作的。 有谁知道List.Add方法如何与静态Array.Resize方法进行比较? 我对内存使用(和清理)感兴趣,对于300种值类型更好,而不是20,000种值类型。 对于它的价值,我计划在.NET的嵌入式版本之一上运行此代码。 可能是.NET Gadgeteer

.NET Micro框架和不支持的function。 有什么影响?

我发现这个表列出了嵌入式开发中.NET Micro框架的局限性,它指出由于这将产生的图像大小,generics不可用。 内存占用量必须低于300KB,并且包含generics会将大小超过此限制。 这是否意味着任何Micro框架代码都需要回到ArrayList的方式以及相关的类型安全缺乏? 这些限制对使用.NET微框架的开发还有哪些其他影响? 谢谢

C#中的Atan2(或类似的lanaguge)

有人能指出我在C#中定义的Atan2的一个很好的例子(或者模糊地接近C#的东西),它不使用任何内部数学方法吗? 这是在.NET Microframework上,因此没有内部数学库这样的东西。 我已经定义了Sin()/ Cos(),但我在使用Atain2时遇到了很多麻烦。 NETMF中有一些散点图数学库,但我发现它们都有缺陷或坏了。 其中一个主要的甚至没有正确定义PI!

在.NET Micro Framework中将’float’转换为’byte ‘并返回’float’

将float转换为byte[4]然后再转换为“浮点数”的最佳方法是什么? 我在C# .NET Micro Framework中这样做,所以我没有可用的BitConverter 。