资源描述:
《c#编写can上位机程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、C#编写Can上位机程序周立功CANpci接口卡提供的示例代码都是VC,VB和Delphi的,没有C#.net的例子。但是在使用C#调用CANapi的时候,由于这些api对数据类型的校验非常严格,所以,调试起来比较麻烦。摸索了一段时间,终于使用C#2.0VS.2008调用CANapi可以正常的发送接收数据了。 现在把API的声明提供如下,有同样需求的,就可以少走很多弯路了。viewplaincopytoclipboardprint?01.publicsealedclassCANApi 02. { 03. //接
2、口卡类型定义 04. publicenumPCIDeviceType 05. { 06. VCI_PCI5121 =1, 07. VCI_PCI9810 =2, 08. VCI_USBCAN1 =3, 09. VCI_USBCAN2 =4, 10. VCI_PCI9820 =5, 11. VCI_CAN232 =6, 12.
3、 VCI_PCI5110 =7, 13. VCI_CANLITE =8, 14. VCI_ISA9620 =9, 15. VCI_ISA5420 =10, 16. VCI_PC104CAN = 11, 17. VCI_CANETE =12, 18. VCI_DNP9810 =13, 19. VCI_PCI9840 =14, 20.
4、 VCI_PCI9820I =16 21. } 22. 23. //函数调用返回状态值 24. publicstaticreadonlyintSTATUS_OK =1; 25. publicstaticreadonlyintSTATUS_ERR =0; 26. 27. publicenumErrorType 28. { 29. //CAN错误码
5、 30. ERR_CAN_OVERFLOW =0x0001, //CAN控制器内部FIFO溢出 31. ERR_CAN_ERRALARM =0x0002, //CAN控制器错误报警 32. ERR_CAN_PASSIVE =0x0004, //CAN控制器消极错误 33. ERR_CAN_LOSE =0x0008, //CAN控制器仲裁丢失 34.
6、 ERR_CAN_BUSERR =0x0010, //CAN控制器总线错误 35. 36. //通用错误码 37. ERR_DEVICEOPENED =0x0100, //设备已经打开 38. ERR_DEVICEOPEN =0x0200, //打开设备错误 39. ERR_DEVICENOTOPEN =0x0400, //设备没有
7、打开 40. ERR_BUFFEROVERFLOW =0x0800, //缓冲区溢出 41. ERR_DEVICENOTEXIST =0x1000, //此设备不存在 42. ERR_LOADKERNELDLL =0x2000, //装载动态库失败 43. ERR_CMDFAILED =0x4000, //执行命令失败错误码 44. ERR
8、_BUFFERCREATE =0x8000//内存不足 45. 46. } 47. 48. 49. 50. //1.ZLGCAN系列接口卡信息的