📄 lcmd.c
字号:
lcm_out("8.115200", 2, 0); break; case 8: lcm_out("9.230400", 2, 0); break; case 9: lcm_out("10.460800", 2, 0); break; case 10: lcm_out("11.500000", 2, 0); break; case 11: lcm_out("12.576000", 2, 0); break; case 12: lcm_out("13.921600", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int serial_set() { int i = 1, n = 0, m = 0; int select = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if (i < 1) i = 1; break; case 3: i = i + 1; // port 1 & 8 can change UART mode if (serial_port_number == 1 || serial_port_number == 8) m = 7; else m = 6; if (i > m) i = m; break; case 4: switch (i){ case 1: n = select_port(); if ( n > 0 && n < 17){ serial_port_number = n; } break; case 2: baud_rate(); break; case 3: parity(); break; case 4: data_bits(); break; case 5: stop_bits(); break; case 6: flow_control(); break; case 7: uart_mode(); break; } break; } lcm_out("Serial set P", 1, 0); lcm_out_int(serial_port_number, 1, 13); switch (i){ case 1: lcm_out("1.Select port", 2, 0); break; case 2: lcm_out("2.Baud Rate",2 ,0); break; case 3: lcm_out("3.Parity", 2, 0); break; case 4: lcm_out("4.Data bits", 2, 0); break; case 5: lcm_out("5.Stop bits", 2, 0); break; case 6: lcm_out("6.Flow control", 2, 0); break; case 7: lcm_out("7.UART mode", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int select_mode() { // Link mode; 0:TCP Server, 1:TCP Client, 2:UDP unsigned char i; int select = 0; i = get_link_mode(op_port_number); // initial value is 0xFF if (i < 0 || i > 2) i = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if ((char)i < 0) i = 0; break; case 3: i = i + 1; if (i > 2) i = 2; break; case 4: set_link_mode(op_port_number, i); lcm_out("Save success", 2, 0); sleep(1); atop_message_queue(op_port_number); return 0; break; } lcm_out("Select mode P", 1, 0); lcm_out_int(op_port_number, 1, 13); switch (i){ case 0: lcm_out("1.TCP server", 2, 0); break; case 1: lcm_out("2.TCP client", 2, 0); break; case 2: lcm_out("3.UDP", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int local_port() { int select = 0; unsigned int i; unsigned char tmp[16]; i = get_local_port(op_port_number); lcm_out("Local port", 1, 0); sprintf(tmp, "%05d",i); lcm_out(tmp, 2, 0); i = input_five_digit(i); if (i == -1) { return 0; } if (i > 65535) { lcm_out("Data error", 2, 0); sleep(1); return 0; } set_local_port(op_port_number, i); lcm_out("Save success", 2, 0); sleep(1); return 0;}//---------------------------------------------------------------------------int destination_ip() { int i, n = 0; unsigned char dest_ip[4]; unsigned char tmp[16]; get_des_ip(op_port_number, &dest_ip); lcm_out("Destination IP", 1, 0); sprintf(tmp, "%03d.%03d.%03d.%03d",dest_ip[0], dest_ip[1], dest_ip[2], dest_ip[3]); lcm_out(tmp, 2, 0); i = input_address(&dest_ip); if ( i == 1) { set_des_ip(op_port_number, &dest_ip); lcm_out("Save success", 2, 0); sleep(1); } else if (i == -1) { lcm_out("Input error", 2, 0); sleep(1); } return 0;}//---------------------------------------------------------------------------int destination_port() { int select = 0; unsigned int i; unsigned char tmp[16]; i = get_des_port(op_port_number); lcm_out("Destination port", 1, 0); sprintf(tmp, "%05d",i); lcm_out(tmp, 2, 0); i = input_five_digit(i); if (i == -1) { return 0; } if (i > 65535) { lcm_out("Data error", 2, 0); sleep(1); return 0; } set_des_port(op_port_number, i); lcm_out("Save success", 2, 0); sleep(1); return 0;}//---------------------------------------------------------------------------int virtual_com() { unsigned char i; int select = 0; i = get_vcom_use(op_port_number); if (i < 0 || i > 1) i = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if ((char)i < 0) i = 0; break; case 3: i = i + 1; if (i > 1) i = 1; break; case 4: set_vcom_use(op_port_number, i); lcm_out("Save success", 2, 0); sleep(1); return 0; break; } lcm_out("Virtual COM", 1, 0); switch (i){ case 0: lcm_out("1.NOT checked", 2, 0); break; case 1: lcm_out("2.Checked", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int tcp_server() { int i = 1; int select = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if (i < 1) i = 1; break; case 3: i = i + 1; if (i > 2) i = 2; break; case 4: switch (i){ case 1: virtual_com(); break; case 2: local_port(); break; } break; } lcm_out("TCP server P", 1, 0); lcm_out_int(op_port_number, 1, 13); switch (i){ case 1: lcm_out("1.Virtual COM", 2, 0); break; case 2: lcm_out("2.Local Port", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int tcp_client() { int i = 1; int select = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if (i < 1) i = 1; break; case 3: i = i + 1; if (i > 2) i = 2; break; case 4: switch (i){ case 1: destination_ip(); break; case 2: destination_port(); break; } break; } lcm_out("TCP client P", 1, 0); lcm_out_int(op_port_number, 1, 13); switch (i){ case 1: lcm_out("1.Dest IP", 2, 0); break; case 2: lcm_out("2.Dest Port", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int udp() { int i = 1; int select = 0; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if (i < 1) i = 1; break; case 3: i = i + 1; if (i > 3) i = 3; break; case 4: switch (i){ case 1: destination_ip(); break; case 2: destination_port(); break; case 3: local_port(); break; } break; } lcm_out("UDP P", 1, 0); lcm_out_int(op_port_number, 1, 13); switch (i){ case 1: lcm_out("1.Dest IP", 2, 0); break; case 2: lcm_out("2.Dest Port", 2, 0); break; case 3: lcm_out("3.Local Port", 2, 0); break; } select = lcm_in(); } return 0;}//---------------------------------------------------------------------------int op_mode() { int i = 1, n = 0; int select = 0; unsigned char mode_number; while ( select != 1) { switch (select) { case 1: return 0; break; case 2: i = i - 1; if (i < 1) i = 1; break; case 3: i = i + 1; if (i > 3) i = 3; break; case 4: switch (i){ case 1: n = select_port(); if ( n != 0 ) { op_port_number = n; } break; case 2: select_mode(); break; case 3: mode_number = get_link_mode(op_port_number); if(mode_number == 0xFF) mode_number = 0; switch (mode_number){ case 0: tcp_server(); break; case 1: tcp_client(); break; case 2: udp(); break; } break; } break; } lcm_out("Op mode P", 1, 0); lcm_out_int(op_port_number, 1, 13); switch (i){ case 1: lcm_out("1.Select port", 2, 0); break; case 2: lcm_out("2.Select mode", 2, 0); break; case 3: mode_number = get_link_mode(op_port_number);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -