论文部分内容阅读
CAN总线和RS485总线是两种工业上应用非常广泛的总线,CAN总线数据通信具有突出的可靠性、实时性和灵活性,RS485总线结构简单,传输距离长,它们在工业控制领域有着广泛的应用前景。随着计算机性能的日益强悍,计算机技术的应用越来越广泛。在有些工业控制过程中需要计算机作为上位机来监控系统,因此需要一个接口来实现底层网络与上位机的通信。而PCI总线是当前计算机中最流行的总线,它传输速度快,可以实现即插即用。本文设计了一种基于PC机PCI总线的CAN、RS485总线接口卡。本文在分析PCI、CAN、RS485总线特点的基础上,确定了接口卡的硬件和软件设计方案。在硬件设计中,为了使接口卡具有一定的智能性,同时减轻上位机系统的负担,增加可靠性,在接口卡中集成了微处理器。硬件采用PCI接口芯片、双口RAM、微处理器和CAN/RS485芯片的结构,文中描述了各部分电路原理图的设计。在软件设计中,描述了CAN控制器初始化、串口初始化、CAN报文发送与接收以及485数据发送与接收程序的详细流程图。本文采用WDM驱动模型开发PCI驱动程序。在掌握WDM驱动模型原理的基础上,利用DrvierStudio构建PCI驱动程序。在使用DriverStudio开发PCI驱动程序前,必须对PCI9052的配置空间进行配置,EEPROM的正确配置对驱动程序的正确开发有很大的影响,文中介绍了EEPROM的配置过程。在驱动程序的开发中,还提出了一种驱动程序数据保护的方法:自旋锁机制。通过这种机制可以避免驱动程序数据访问的冲突。最后使用VC++的MFC对驱动程序进行了动态链接库的封装,利用动态链接库提供的函数开发了上位机测试软件。利用实验室研制的CAN节点和485节点分别对接口卡的CAN接口和485接口的各个功能进行了验证。最终将接口卡应用到实际项目《汽车CAN模块测试系统》的开发中。本文所设计的PCI-CAN/485接口卡能够广泛地应用到各种测试系统中,具有较强的实用价值。