使用C#和Netduino记录数据
我正在为一个纳米印刷项目开发一个遥测平台。我的团队使用的是NetDuino2 plus(不是我的首选,但你打算怎么做?),可以肯定的是,我对C语言一点也不熟悉,我是一个新手程序员 我们编写了一些成功轮询I2C温度传感器并使用debug.print写入控制台的代码。我希望将这些数据写入一个文件 有一些例子可以将文件从SD卡传输到PC,但我觉得这似乎没有必要(尽管这可能是完全必要的,以避免缓冲区溢出?)。是否存在只将数据写入文件而不写入控制台的调用 据我所知,我们可能需要一个应用程序来监听PC上的串行端口。似乎我们还需要一个相应的应用程序来从硬件写入。我过去使用过微控制器,它只需打开一个串口,然后通过USB发送到一个文件位置 下面是我们用于将数据打印到控制台的代码:使用C#和Netduino记录数据,c#,logging,i2c,netduino,C#,Logging,I2c,Netduino,我正在为一个纳米印刷项目开发一个遥测平台。我的团队使用的是NetDuino2 plus(不是我的首选,但你打算怎么做?),可以肯定的是,我对C语言一点也不熟悉,我是一个新手程序员 我们编写了一些成功轮询I2C温度传感器并使用debug.print写入控制台的代码。我希望将这些数据写入一个文件 有一些例子可以将文件从SD卡传输到PC,但我觉得这似乎没有必要(尽管这可能是完全必要的,以避免缓冲区溢出?)。是否存在只将数据写入文件而不写入控制台的调用 据我所知,我们可能需要一个应用程序来监听PC上的串
using System;
using System.Net;
using System.Net.Sockets;
using System.Threading;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using SecretLabs.NETMF.Hardware;
using SecretLabs.NETMF.Hardware.Netduino;
using System.IO.Ports;
namespace NetduinoApplication1
{
public class Program
{
public static void Main()
{
OutputPort led = new OutputPort(Pins.ONBOARD_LED, false);
OutputPort p = new OutputPort(Pins.GPIO_PIN_SDA, true);
p.Write(false);
p.Dispose();
// write your code here
byte[] Addr = new byte[1];
Addr[0] = 0x07;
byte[] TxBuff = new byte[9];
byte[] RxBuff = new byte[9];
I2CDevice.Configuration I2C_Configuration = new I2CDevice.Configuration(0x5A, 100);
I2CDevice I2C1 = new I2CDevice(I2C_Configuration);
I2CDevice.I2CTransaction[] WriteTran = new I2CDevice.I2CTransaction[] { I2CDevice.CreateWriteTransaction(Addr), I2CDevice.CreateWriteTransaction(TxBuff) };
I2CDevice.I2CTransaction[] ReadTran = new I2CDevice.I2CTransaction[] { I2CDevice.CreateWriteTransaction(Addr), I2CDevice.CreateReadTransaction(RxBuff) };
while (true)
{
int iWriteCount = I2C1.Execute(WriteTran, 1000);
//Debug.Print("Write Count: " + iWriteCount.ToString());
led.Write(true);
Thread.Sleep(200);
int iReadCount = I2C1.Execute(ReadTran, 1000);
if (iReadCount >= 2)
{
int iVal = RxBuff[1] * 256 + RxBuff[0];
double Temperature = ((iVal * 0.02) - 273.15) * 9.0 / 5.0 + 32.0;
Debug.Print("Temperature: " + Temperature.ToString() + " deg F");
}
led.Write(false);
Thread.Sleep(200);
}
}
}
}
如果我需要创建一个应用程序,我很想这样做,但我确实需要一些指导。在这里有一点经验会大有帮助的 因此,我想到了几件事