作为一个从事嵌入式系统/机器人技术的业余爱好者.您希望将什么视为Micro Framework开发工具包的硬件功能?我已经看到很多关于什么是可用的问题,并没有真正关于缺少什么.我还发现大多数现有的套件比业余爱好者更注重产品开发.
模块化设计是使用IDC /跳线块更好还是您更喜欢内置组件?多少个GPIO引脚?某种形式的内存映射设备是否有用?您是否会看到多个SPI总线的用途?您希望看到哪些无线/串行协议?
使用.NET MicroFramework,它是C#的真正简化版本.例如,System.String几乎没有我们多年来享受的任何好东西.
我需要将文本文档拆分成行,这意味着按\ r \n分割.但是,String.Split仅按字符串而不是字符串提供拆分.
如何以有效的方式将文档拆分为行(例如,不在文档中的每个字符串中疯狂循环)?
PS System.String也缺少一个Replace方法,因此不起作用.
PPS Regex也不是MicroFramework的一部分.
将a转换float为a byte[4]然后再转换为'float' 的最佳方法是什么?
我在C#.NET Micro Framework中这样做,所以没有BitConverter我可以使用的.
请考虑以下代码:
// module level declaration
Socket _client;
void ProcessSocket() {
_client = GetSocketFromSomewhere();
using (_client) {
DoStuff(); // receive and send data
Close();
}
}
void Close() {
_client.Close();
_client = null;
}
Run Code Online (Sandbox Code Playgroud)
鉴于代码调用Close()方法,关闭_client套接字并将其设置为null,同时仍然在"using"块内,幕后究竟发生了什么?套接字真的关闭了吗?有副作用吗?
PS这是在.NET MicroFramework上使用C#3.0,但我认为c#(语言)应该具有相同的功能.我问的原因是偶尔,很少,我用完套接字(这是.NET MF设备上非常宝贵的资源).
我在1 .5年前看到了一个类似的问题,我希望有更好的东西.
我正在寻找一个完全托管的C#实现,因为我需要它用于.NET Microframework,所以我不能拥有围绕C代码的.NET包装器.
有没有人遇到过SIP协议的良好C#实现.我不应该认为我不关心编解码器,大多数都是处理呼叫控制.
基于什么是公开的,有人可以使用.NET Gadgeteer与Kinect进行交互吗?
可能需要对司机做什么(如果有的话)?
如果您有兴趣,这里有一个Channel9视频,向您展示如何使用VS2010创建嵌入式应用程序.它将于2011年春季发布.
我是新手,但我想为微控制器ARM M3 STM32F103ZD开发C#.net Micro应用程序.
我找到了开发套件STM32F103ZE ARM-CM3 Board,链接http://www.embedinfo.com/en/list.asp?id=31
任何人都可以告诉我,如果有可能在这个套件上开发C#.net Micro应用程序.
谢谢
我试图明确地将一个int转换成一个ushort,但是我得到的不能将'int'转换为'ushort'
ushort quotient = ((12 * (ushort)(channel)) / 16);
Run Code Online (Sandbox Code Playgroud)
我正在使用.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 starts
ushort quotient = ((12 * (ushort)(channel)) / 16); // There is 12 peices of 16 bits
Run Code Online (Sandbox Code Playgroud)
我宁愿不改变int频道,也不想改变频道.我该如何解决错误?
我需要将字节数组转换为UInt16(ushort)数组.我能够从字节数组到UInt32数组.
我已经看过这个问题了.但我不能使用BitConverter或引用问题中给出的解决方案.
这是我到目前为止所尝试的.
for (uint objIndex = 0; objIndex < data.Length; ++objIndex)
{
data[objIndex] = (Convert.ToUInt16(byteArray[objIndex * sizeof(UInt16) + 0].ToString()) << 8)
+ byteArray[objIndex * sizeof(UInt16) + 1];
// Error - Cannot implicitly convert type 'int' to 'ushort'. An explicit conversion exists.
data[objIndex] = ((ushort)(byteArray[objIndex * sizeof(UInt16) + 0]) << 8)
+ byteArray[objIndex + 1];
// Error - Cannot implicitly convert type 'int' to 'ushort'. An explicit conversion exists.
}
Run Code Online (Sandbox Code Playgroud)
请告诉我这里缺少的东西.
编辑:我能够在将每个数字转换为ushort之后修复它,如下所示.
for …Run Code Online (Sandbox Code Playgroud) 我正在使用 .NET Micro Framework 4.1,据我所知,它没有实现Regex类或String.Replace/String.Remove方法。
我有一个字符串定义为:
string message = "[esc]vI AM A STRING. [esc]vI AM A STRING AND DO LOTS OF THINGS...";
Run Code Online (Sandbox Code Playgroud)
有没有办法[esc]v从这个字符串中删除所有出现的?在 NetMF 中在哪里使用转义字符 ( 0x1B) 后跟0x76?
这有望让我得到:
string message = "I AM A STRING. I AM A STRING AND DO LOTS OF THINGS...";
Run Code Online (Sandbox Code Playgroud)
我想过可能会使用该String.Split()方法,但这似乎对内存要求太高,因为代码在内存较小的 NETMF 板上运行。