论文部分内容阅读
汽车仪表作为人车交互的窗口,为驾驶员提供汽车的运行状态及各种参数,是汽车必备的一种重要装置。目前,基于CAN总线及其高层协议SAE J1939的智能数字仪表已经成为汽车电子控制应用的热门。本文采用CAN总线及SAE J1939协议技术,构建商用车智能数字仪表系统。为减小外围电路的复杂程度,控制核心采用集成了多种外设的STM32F107VC微处理器。接着设计系统电路,包括CAN总线接口,需显示的外部信号采集对应的放大、滤波、整形和隔离电路,液晶显示电路及报警提示电路模块等。最后按总体结构图进行配置,完成硬件系统的构建。软件设计的工作流程,首先使用固件库配置微处理器外设工作。其次移植uC/OS-II系统,以任务的方式控制外设实现仪表功能。最后使用uC/GUI提供的函数绘制仪表面板,编写SAE J1939协议栈,正确解析收到的报文。工作的关键在于SAEJ1939定义的协议数据单元和CAN扩展帧的转化,以及根据可疑参数编号和参数组编号计算参数的实测值。最后,本文采用一种简单的调试方法,验证收到的CAN总线报文是否正确。即配置串口,重定向printf函数,实现打印功能,从而将接收的数据打印至调试终端验证结果。根据上述过程开发的商用车智能仪表,具备结构简单、安装方便、功能完善及可扩展的特点。与其他智能数字仪表相比,运行时可靠、直观,价格便宜,代表了未来汽车仪表的发展方向。