Form1.cs 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. using System;
  2. using System.Runtime.InteropServices;
  3. using System.Windows.Forms;
  4. using UAS_MES_NEW.PublicMethod;
  5. namespace UAS_MES_NEW
  6. {
  7. public partial class Form1 : Form
  8. {
  9. public Form1()
  10. {
  11. InitializeComponent();
  12. try { UAS_MES_NEW.I18n.LanguageManager.Localize(this); } catch { }
  13. }
  14. private void Form1_Load(object sender, EventArgs e)
  15. {
  16. //Com.PortName = "COM4";
  17. //Com.ReadTimeout = 5000;
  18. //Com.WriteTimeout = 5000;
  19. //Com.BaudRate = 9600;
  20. //Com.StopBits = StopBits.One;
  21. //Com.Parity = Parity.None;
  22. }
  23. [DllImport("WinIo64.dll")]
  24. public static extern bool InitializeWinIo();
  25. [DllImport("WinIo64.dll")]
  26. public static extern void ShutdownWinIo();
  27. [DllImport("WinIo64.dll")]
  28. public static extern bool GetPortVal(IntPtr wPortAddr, out int pdwPortVal, byte bSize);
  29. [DllImport("WinIo64.dll")]
  30. public static extern bool SetPortVal(IntPtr wPortAddr, int dwPortVal, byte bSize);
  31. //以下是与并口无关
  32. [DllImport("WinIo64.dll")]
  33. public static extern byte MapPhysToLin(byte pbPhysAddr, uint dwPhysSize, IntPtr PhysicalMemoryHandle);
  34. [DllImport("WinIo64.dll")]
  35. public static extern bool UnmapPhysicalMemory(IntPtr PhysicalMemoryHandle, byte pbLinAddr);
  36. [DllImport("WinIo64.dll")]
  37. public static extern bool GetPhysLong(IntPtr pbPhysAddr, byte pdwPhysVal);
  38. [DllImport("WinIo64.dll")]
  39. public static extern bool SetPhysLong(IntPtr pbPhysAddr, byte dwPhysVal);
  40. [DllImport("user32.dll")]
  41. public static extern int MapVirtualKey(uint Ucode, uint uMapType);
  42. public bool online = false; //WinIo打开标志
  43. //数据端口共8位,控制端口共4位,可以组成1~12位的任意数字输出端口;
  44. //状态端口共5位,控制端口共4位,可以组成1~9位的任意数字输入端口
  45. private static IntPtr data_port = (IntPtr)0x378; //数据端口地址 D0-D7 8个端口
  46. private static IntPtr state_port = (IntPtr)0x379; //状态端口地址 S3-S7 只能读取5位
  47. private static IntPtr control_port = (IntPtr)0x37A; //控制端口地址 C0-C3 只能控制或输出4位
  48. ModeBusTCPServer md;
  49. private void button3_Click_1(object sender, EventArgs e)
  50. {
  51. md = new ModeBusTCPServer();
  52. md.Open();
  53. txtMsg.AppendText("SUCCESS");
  54. }
  55. private void button4_Click(object sender, EventArgs e)
  56. {
  57. md.SendOrder(enterTextBox2.Text);
  58. }
  59. }
  60. }