嗨,大家好,我在这个论坛上的第一篇文章,将会很长
懒散的:.
我只是重新开始编程。我的经验有限-多年来:Quickbasic,Visual Basic 6并涉足PIC编程以及HTML / CSS。我已经写了一些有用且可行的解决方案,因此我对算法和编程有了一定的了解,但是C#不断突破极限。我想学习"C"类型结构,因为与Java和"处理与Arduino"我目前正在参与其中。
设置场景(如果我还没有的话) :醉:),这就是我目前所在的位置。我已经在写软件了"Processing 2.2.1"并且它可以按要求工作,但是我希望在GUI方面有更多帮助,因此可以学习C#。
它基本上是一个福彩12选5走势图记录器。 Arduino板(A / D转换器)以每秒100个样本的速度可靠地将10位(0-1023)福彩12选5走势图输出到串行总线。读取福彩12选5走势图并将其保存到文件中以进行进一步评估(x / y图和一些基本数学运算)。 A / D转换器连接到称重传感器,该软件将记录和评估自制模型火箭发动机(糖火箭和黑火药火箭)的推力性能。
这是一个个人爱好项目,该软件将发布在与之相关的一些烟火和火箭模型论坛上。
最后,这是我从网上获得的C#代码:
该代码可以正常工作,因为它会将福彩12选5走势图记录到文本框中。我能够通过复制/粘贴到notepad ++中来进行检查,它的确以100个样本秒的速率记录下来。问题是"hangs"有时候这是一个很大的不。在花了许多小时制造可能仅燃烧2-10秒的火箭发动机而没有记录福彩12选5走势图的火箭发动机后,并不是一个好的结果。
我不完全了解代码-我确实了解一些部分,但不知道在哪里看。一件事是,它只挂在(buttonStop)事件上。
我不需要那么复杂。使用我的软件,不需要后台线程或异步操作。我想要的是,当记录福彩12选5走势图时,什么也没发生! -不需要!我不要!除了将福彩12选5走势图写入文件的停止按钮。这不是"live"示波器或心脏监护仪等
将来能够将福彩12选5走势图发送到串行端口进行基本"handshaking"操作,但在此阶段并不重要。
我不想成为C#串行操作专家-我想开发GUI,文件IO ops,绘制图形等,我想我会对它们有所了解,否则,我将在这里提出问题在这个论坛上。另外,我也不希望被人喂饱,但是到了这一点,我的软件这一部分将整个工作拖到了一起,我也随之而来。
同样重要的是要指出,我在过去2-3周内做了很多研究。正确方向的一些指针将是绝对值得赞赏的。
干杯。
我只是重新开始编程。我的经验有限-多年来:Quickbasic,Visual Basic 6并涉足PIC编程以及HTML / CSS。我已经写了一些有用且可行的解决方案,因此我对算法和编程有了一定的了解,但是C#不断突破极限。我想学习"C"类型结构,因为与Java和"处理与Arduino"我目前正在参与其中。
设置场景(如果我还没有的话) :醉:),这就是我目前所在的位置。我已经在写软件了"Processing 2.2.1"并且它可以按要求工作,但是我希望在GUI方面有更多帮助,因此可以学习C#。
它基本上是一个福彩12选5走势图记录器。 Arduino板(A / D转换器)以每秒100个样本的速度可靠地将10位(0-1023)福彩12选5走势图输出到串行总线。读取福彩12选5走势图并将其保存到文件中以进行进一步评估(x / y图和一些基本数学运算)。 A / D转换器连接到称重传感器,该软件将记录和评估自制模型火箭发动机(糖火箭和黑火药火箭)的推力性能。
这是一个个人爱好项目,该软件将发布在与之相关的一些烟火和火箭模型论坛上。
最后,这是我从网上获得的C#代码:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO.Ports; namespace SimpleSerial { public partial class Form1 : Form { // Add this variable string RxString; public Form1() { InitializeComponent(); } private void buttonStart_Click(object sender, EventArgs e) { serialPort1.PortName = "COM8"; serialPort1.BaudRate = 57600; serialPort1.Open(); if (serialPort1.IsOpen) { buttonStart.Enabled = false; buttonStop.Enabled = true; textBox1.ReadOnly = false; } } private void buttonStop_Click(object sender, EventArgs e) { if (serialPort1.IsOpen) { serialPort1.Close(); buttonStart.Enabled = true; buttonStop.Enabled = false; textBox1.ReadOnly = true; } } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { if (serialPort1.IsOpen) serialPort1.Close(); } private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { // If the port is closed, don't try to send a character. if (!serialPort1.IsOpen) return; // If the port is Open, declare a char[] array with one element. char[] buff = new char[1]; // Load element 0 with the key character. buff[0] = e.KeyChar; // Send the one character buffer. serialPort1.Write(buff, 0, 1); // Set the KeyPress event as handled so the character won't // display locally. If you want it to display, omit the next line. e.Handled = true; } private void DisplayText(object sender, EventArgs e) { textBox1.AppendText(RxString); } private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) { RxString = serialPort1.ReadExisting(); this.Invoke(new EventHandler(DisplayText)); } private void textBox1_TextChanged(object sender, EventArgs e) { } } }
该代码可以正常工作,因为它会将福彩12选5走势图记录到文本框中。我能够通过复制/粘贴到notepad ++中来进行检查,它的确以100个样本秒的速率记录下来。问题是"hangs"有时候这是一个很大的不。在花了许多小时制造可能仅燃烧2-10秒的火箭发动机而没有记录福彩12选5走势图的火箭发动机后,并不是一个好的结果。
我不完全了解代码-我确实了解一些部分,但不知道在哪里看。一件事是,它只挂在(buttonStop)事件上。
我不需要那么复杂。使用我的软件,不需要后台线程或异步操作。我想要的是,当记录福彩12选5走势图时,什么也没发生! -不需要!我不要!除了将福彩12选5走势图写入文件的停止按钮。这不是"live"示波器或心脏监护仪等
将来能够将福彩12选5走势图发送到串行端口进行基本"handshaking"操作,但在此阶段并不重要。
我不想成为C#串行操作专家-我想开发GUI,文件IO ops,绘制图形等,我想我会对它们有所了解,否则,我将在这里提出问题在这个论坛上。另外,我也不希望被人喂饱,但是到了这一点,我的软件这一部分将整个工作拖到了一起,我也随之而来。
同样重要的是要指出,我在过去2-3周内做了很多研究。正确方向的一些指针将是绝对值得赞赏的。
干杯。
由主持人最后编辑: