首先需要安装程序驱动,也就是需要把硬件厂家提供的驱动安装在操作系统上;
实例代码如下:
1: public sealed class PCI1230
2: {
3: //接口卡类型定义
4: public enum PCIDeviceType
5: {
6: PCI1230Success = 1024,
7: PCI1230ApiFailed = 1025,
8: PCI1230NullParam = 1026,
9: PCI1230DevNotFind = 1027,
10: PCI1230InvalidBoardId = 1028,
11: PCI1230InvalidIntnumber = 1029,
12: PCI1230InvalidAddress = 1030
13: }
14:
15: /// <summary>
16: /// 打开PCI1230设备,获得资源
17: /// </summary>
18: /// <param name="Boardid">PCI-1230 板ID.必须在0~15之间</param>
19: /// 在使用设备前,先确认该函数调用成功,才能确保后面的函数调用成功
20: /// <returns>PCI1230DevNotFind/PCI1230Success/PCI1230InvalidBoardId</returns>
21: [DllImport("PCI1230.dll", EntryPoint = "Pci1230Open", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
22: public static extern UInt32 Pci1230Open(UInt32 Boardid);
23:
24: /// <summary>
25: /// 读PCI1230光隔离输入通道
26: /// </summary>
27: /// <param name="Boardid">PCI-1230 板ID.必须在0~15之间</param>
28: /// <param name="Data">读回来的数据</param>
29: /// <returns></returns>
30: [DllImport("PCI1230.dll", EntryPoint = "Pci1230Read", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
31: public static extern UInt32 Pci1230Read(UInt32 Boardid, ref byte Data);
32:
33:
34: /// <summary>
35: /// PCI1230光隔离输出
36: /// </summary>
37: /// <param name="Boardid">PCI-1230 板ID.必须在0~15之间</param>
38: /// <param name="WriteData">需要输出的数据</param>
39: /// <returns></returns>
40: [DllImport("PCI1230.dll", EntryPoint = "Pci1230Write", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
41: public static extern UInt32 Pci1230Write(UInt32 Boardid, UInt32 WriteData);
42:
43:
44: /// <summary>
45: /// 关闭PCI1230设备,释放资源
46: /// </summary>
47: /// <param name="Boardid">PCI-1230 板ID.必须在0~15之间</param>
48: /// <returns></returns>
49: [DllImport("PCI1230.dll", EntryPoint = "Pci1230Close", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
50: public static extern UInt32 Pci1230Close(UInt32 Boardid);
51: }