PIC18F458嵌入式实现CAN2.0B协议通信

5 下载量 138 浏览量 更新于2024-09-05 收藏 73KB PDF 举报
本文主要介绍了如何使用Microchip公司的PIC18F458单片机及其内置的CAN模块来实现CAN总线通信。CAN总线作为一种工业标准的现场总线技术,以其高效、可靠和抗干扰性强的特点,在自动化控制领域得到了广泛应用。 文章首先阐述了CAN总线的基本概念,包括其设计目标和在工业控制环境中的重要作用。CAN2.0A/B协议是其主要标准,而PIC18F458支持多种版本,包括CAN1.2、CAN2.0A和CAN2.0B,这使得该单片机成为一个理想的CAN通信平台。 硬件接口部分,作者给出了PIC18F458与PCA82C250T驱动芯片的具体连接示例。PCA82C250T负责驱动CAN控制器和物理总线,通过匹配电阻R和滤波电感L来确保信号的质量。这些外部组件的选择和配置对于CAN通信的稳定性和有效性至关重要。 在操作步骤上,作者详细描述了CAN控制器的初始化过程。首先,设置CANCON寄存器以启用CAN操作,并确认操作模式处于预备状态。接着,配置波特率寄存器BRGCONx以确定通信参数,如波特率、采样点、同步跳转时间和重同步方式。然后,初始化发送和接收邮箱,设置标识符、数据长度、屏蔽和滤波寄存器,以及数据区。最后,将CAN操作请求置为关闭(REQOP=000),并再次确认操作模式变为正常工作状态(OPMODE=000)。 本文为想要使用PIC18F458进行CAN通信的开发者提供了一个实用的指南,涵盖了硬件连接、配置参数和基本操作流程。通过掌握这些知识,用户能够更好地理解和应用CAN总线技术,实现单片机与外部设备之间的高效数据交换。