C# Как отправлять правильный G-code, 3D принтеру.
При попытки отправить G-code в порт, нажатием на кнопку 'Home' ничего не происходит. Вот код главной формы:public partial class Form1 : Form
{
bool isConnected = false;
SerialPort port;
public Form1()
{
InitializeComponent();
}
//Кнопка -> Обновить список портов
private void button1_Click(object sender, EventArgs e)
{
comboBox1.Items.Clear();
// Получаем список COM портов доступных в системе
string[] portnames = SerialPort.GetPortNames();
// Проверяем есть ли доступные
if (portnames.Length == 0)
{
MessageBox.Show('Нет доступных COM портов.');
}
foreach (string s in portnames)
{
//добавляем доступные COM порты в список
comboBox1.Items.Add(s);
}
}
//Функция подключения к порту
private void connect()
{
isConnected = true;
string selectedPort = comboBox1.GetItemText(comboBox1.SelectedItem);
port = new SerialPort(selectedPort, 9600, Parity.None, 8, StopBits.One);
port.Open();
button2.Text = 'Отключить';
}
//Функция отключения от порта
private void disconnect()
{
isConnected = false;
port.Close();
button2.Text = 'Подключить';
}
//Кнопка -> Подключения/отключения порта
private void button2_Click(object sender, EventArgs e)
{
if (!isConnected)
{
connect();
}
else
{
disconnect();
}
}
//Кнопка -> Отправить
private void button3_Click(object sender, EventArgs e)
{
port.Write(textBox1.Text);
}
//Кнопка -> Home X Y
private void button10_Click(object sender, EventArgs e)
{
port.Write('G28 X0 Y0');
}
//Кнопка -> Home Z
private void button5_Click(object sender, EventArgs e)
{
port.Write('G28 Z0');
}
//Кнопка -> Проверка соединения
private void button15_Click(object sender, EventArgs e)
{
//Звуковой сигнал
port.Write('M300 S5000 P280');
}
}
{
bool isConnected = false;
SerialPort port;
public Form1()
{
InitializeComponent();
}
//Кнопка -> Обновить список портов
private void button1_Click(object sender, EventArgs e)
{
comboBox1.Items.Clear();
// Получаем список COM портов доступных в системе
string[] portnames = SerialPort.GetPortNames();
// Проверяем есть ли доступные
if (portnames.Length == 0)
{
MessageBox.Show('Нет доступных COM портов.');
}
foreach (string s in portnames)
{
//добавляем доступные COM порты в список
comboBox1.Items.Add(s);
}
}
//Функция подключения к порту
private void connect()
{
isConnected = true;
string selectedPort = comboBox1.GetItemText(comboBox1.SelectedItem);
port = new SerialPort(selectedPort, 9600, Parity.None, 8, StopBits.One);
port.Open();
button2.Text = 'Отключить';
}
//Функция отключения от порта
private void disconnect()
{
isConnected = false;
port.Close();
button2.Text = 'Подключить';
}
//Кнопка -> Подключения/отключения порта
private void button2_Click(object sender, EventArgs e)
{
if (!isConnected)
{
connect();
}
else
{
disconnect();
}
}
//Кнопка -> Отправить
private void button3_Click(object sender, EventArgs e)
{
port.Write(textBox1.Text);
}
//Кнопка -> Home X Y
private void button10_Click(object sender, EventArgs e)
{
port.Write('G28 X0 Y0');
}
//Кнопка -> Home Z
private void button5_Click(object sender, EventArgs e)
{
port.Write('G28 Z0');
}
//Кнопка -> Проверка соединения
private void button15_Click(object sender, EventArgs e)
{
//Звуковой сигнал
port.Write('M300 S5000 P280');
}
}
Популярные вопросы
Задратые углы на моделях
Всем здрасьте. Проблема следующего характера, все более менее массивные коробушки получаются с загнутыми вверх углами. Дефект не сильный, но если очен...
Забивается термобарьер
Доброго времени суток. С недавнего времени у меня начал забиваться термобарьер. Печать начинается нормально, потом через какое-то неопределённое время...
Зачем используют слово '3D' при описании аддитивных технологий?
Несколько раз уже я обращался к уважаемому сообществу с вопросом на тему - почему так говорят '3D печать', '3D принтеры' и прочие интерпретации, типа...

Комментарии и вопросы
Для моей работы конечно вряд-л...
Подходят для домохозяек и для....
Тут наверное для тех моментов....
Всем привет! Встречаются модел...
Всех приветствую. Такая пробле...
Здравия всем желаю, что это та...
Всем добрый вечер, столкнулся...