关闭 ashkan4818 打开了这个问题 2018 年 5 月 19 日 · 9条评论 关闭 简单的发送和接收数据到 grbl#18 ashkan4818 打开了这个问题 2018 年 5 月 19 日 · 9条评论 评论 阿什坎4818 评论了 2018 年 5 月 19 日 • 编辑 你好 ,我想在 C# 中为 GRBL 创建一个简单的接口。我真的很努力地做这件事,但我得不到好的结果。然后我在 Github 上找到了你,我看了你精彩的 GRBL – 绘图仪应用程序代码,我可以理解你的代码的一些事情,然后我厌倦了创建一个像你这样的简单应用程序,它能够从 GRBL 接收数据并在一个丰富的盒子上显示,因此我在下面写了这段代码 但不幸的是它仍然无法正常工作:(我真的很失望 你能帮我解决这个问题吗??我真的需要你的帮助,非常感谢 <3 ################################################## ####################### `使用系统; 使用 System.Collections.Generic; 使用 System.ComponentModel; 使用系统数据; 使用系统绘图; 使用 System.IO.Ports; 使用 System.Linq; 使用系统文本; 使用 System.Threading.Tasks; 使用 System.Windows.Forms; 使用 System.IO; namespace serial_test5 { public partial class Form1 : Form { public string rxString; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { string[] ports = SerialPort.GetPortNames(); CoMports_list.Items.AddRange(ports); CoMports_list.SelectedIndex = 0; serialPort1.DataReceived+= new System.IO.Ports.SerialDataReceivedEventHandler(serialPort1_DataReceived); } private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) { while ((serialPort1.IsOpen) && (serialPort1.BytesToRead > 0)) { rxString = string.Empty; try { rxString = serialPort1.ReadTo("\r\n"); this.Invoke(new EventHandler(handleRXData)); while ((serialPort1.IsOpen)) ; } catch (Exception exception) { Console.WriteLine(exception.Message , "can not received data"); } } } public void addToLog(string text) { richTextBox1.AppendText(text + "\r"); richTextBox1.ScrollToCaret(); } private void handleRXData(object sender, EventArgs e) { char[] charsToTrin = {'<', '>', '[', ']', ' '}; int tmp; if (rxString.IndexOf("ok") >=0) { addToLog(string.Format("<{0}",rxString)); return; } else if (((tmp = rxString.IndexOf('<')) >= 0) && (rxString.IndexOf('>') > tmp)) { if (scroling_chek_box.Checked) addToLog(rxString); return; } } private void Connect_btn_Click(object sender, EventArgs e) { serialPort1.BaudRate = Convert.ToInt32(baudRate_list.Text); try { serialPort1.PortName = CoMports_list.Text; serialPort1.Open(); } catch (Exception er) { MessageBox.Show(er.Message, "message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void timer1_Tick(object sender, EventArgs e) { if (serialPort1.IsOpen) // { try { var dataArray = new byte[] { Convert.ToByte('?') }; serialPort1.Write(dataArray, 0, 1); } catch (Exception er) { serialPort1.Close(); } } } } } ` 所有者 svenhb 评论了 2018 年 5 月 19 日 问题是什么 – 什么不能正常工作? ❤️1个ashkan4818 回应了心形表情符号 作者 阿什坎4818 评论了 2018 年 5 月 19 日 我在rich box中看不到GRBL状态信息,我不知道我哪里错了 作者 阿什坎4818 评论了 2018 年 5 月 20 日 • 编辑 这是我能看到的所有状态消息: https://ibb.co/kH4nO8 所有者 svenhb 评论了 2018 年 5 月 20 日 通过电子邮件 • 编辑 您发送问号以从 grbl 获取状态吗?你读过grbl wiki吗? ❤️1个ashkan4818 回应了心形表情符号 作者 阿什坎4818 评论了 2018 年 5 月 20 日 • 编辑 是的,我发送了一个“?” 到 grbl 获取状态报告!是的,我已经读过了…… 你能写一个非常简单的代码来发送一个 g-cod 到 grbl 并在一个丰富的框中显示状态报告吗?请? 所有者 svenhb 评论了 2018 年 5 月 20 日 通过电子邮件 • 编辑 你最好在 github 上寻找 3dp 刻录机,这是我与 grbl 串行通信的起点。 https://github.com/villamany/3dpBurner-sender ❤️1个ashkan4818 回应了心形表情符号 作者 阿什坎4818 评论了 2018 年 5 月 20 日 我会看到这个,然后再试一次。非常感谢先生 <3 svenhb 添加了 把招工广告 标签 2018 年 5 月 20 日 所有者 svenhb 评论了 2018 年 6 月 1 日 希望你找到了解决方案 svenhb已完成 关闭 2018 年 6 月 1 日 喜欢 (0) 缺少字体 #17 GRBL-绘图仪 #19 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动 XY 绘图仪 – 将 Word 文档转换为 GRBL 文件 grbl 随机在中间停止 Arduino Uno GRBL 问题 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动XY 绘图仪 – 将 Word 文档转换为 GRBL 文件grbl 随机在中间停止Arduino Uno GRBL 问题为什么这会“崩溃”我的 3018 CNCFusion 360 / Grbl – 最后毁掉了工作?!使用 Grbl Shield,必须采取哪些接地预防措施?GRBL 安装挑战(在 cnc 3018 pro 上)
你好
,我想在 C# 中为 GRBL 创建一个简单的接口。我真的很努力地做这件事,但我得不到好的结果。然后我在 Github 上找到了你,我看了你精彩的 GRBL – 绘图仪应用程序代码,我可以理解你的代码的一些事情,然后我厌倦了创建一个像你这样的简单应用程序,它能够从 GRBL 接收数据并在一个丰富的盒子上显示,因此我在下面写了这段代码
但不幸的是它仍然无法正常工作:(我真的很失望
你能帮我解决这个问题吗??我真的需要你的帮助,非常感谢 <3
################################################## #######################
`使用系统;
使用 System.Collections.Generic;
使用 System.ComponentModel;
使用系统数据;
使用系统绘图;
使用 System.IO.Ports;
使用 System.Linq;
使用系统文本;
使用 System.Threading.Tasks;
使用 System.Windows.Forms;
使用 System.IO;
namespace serial_test5
{
public partial class Form1 : Form
{
public string rxString;
}
`