2014汽车网络实验指导书.

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

车载网络与总线技术实验指导书

主编严屹宏

适用专业:车辆工程

上海电机学院

2014年11月

目录

前言 (2)

实验一编程入门、仿真调试 (3)

实验二编程提高、并行I/O接口、中断 (6)

实验三 MSCAN初始化编程与仿真调试 (11)

实验四 MSCAN发送报文编程与仿真调试 (14)

前言

一、汽车网络实验教学的目的

随着汽车电子技术的发展,越来越多的电子产品装载到汽车上,极大地提高了汽车的动力性和舒适性,同时也增加了车内布线的难度和成本。CAN属于总线式串行通信网络,由于具有良好的可靠性、实时性及灵活性,已经成为国际标准(ISO11898),在汽车电子系统中得到了广泛的应用。目前在CAN系统设计中,使用最多的是单片机外挂独立的CAN控制器,如恩智浦NXP(原Philips)公司的PCA82C200、SJA1000或Intel公司的82526、82527等芯片。本实验采用就是以飞思卡尔(Freescale)的16位单片机S12(X)为核心,通过SOC中片内外设MSCAN(CAN通信控制器)实现CAN总线系统中最重要的协议层。重点使学生通过使用CAN通信控制器MSCAN理解数据链路层和物理信令子层并掌握其实现方法。同时还兼顾进一步巩固对汽车总线的基础——汽车电子开发的相关理论、技术的学习,为车辆工程专业的高年级学生日后从事汽车网络、汽车电子的开发打下一定的基础。

本科程的实验使学生能够对汽车网络的概念、特点有一定的认识,学习汽车网路的相关理论、方法和汽车网络开发教学系统的基本工作原理和相关软件的使用方法。通过S12(X)系列单片机及其MSCAN总线通信控制器,熟悉、掌握CAN 总线节点的硬件与电路组成;熟悉微控制器集成开发环境codewarrior 软件基本操作、理解由C语言编写软件工程的架构及其相关程序设计思想;基本掌握CAN 总线数据链路层通信协议的软件编程、仿真和调试方法;通过实验巩固、进一步理解对汽车CAN总线的结构和原理。

二、实验注意事项

1、预习是做好实验的前提。在实验之前,应仔细阅读实验指导书,了解实验的

目的、要求,掌握基本原理和主要实验步骤。

2、对实验装置和测试装置在未经了解以前,不要任意启动设备。

3、进入实验室必须严肃认真,集中精力,抓紧时间,分工合作,完成本实验内

容。与本实验无关的一切设备,不准擅自启动。

4、实验完毕,应使实验设备处于正常关闭状态。

5、实验后应进行数据处理,结果分析,写好实验报告。

实验一编程入门、仿真调试

一、实验目的

熟悉飞思卡尔MCU仿真与调试环境的安装和使用方法,掌握C语言程序的编辑书写规范,学习单片机C语言程序调试手段,进一步编制应用程序,体会MCU应用程序特点。熟悉算术逻辑处理、软件延时、并行I/O(GPIO)等应用程序编写技巧。

二、实验环境

1. CodeWarrior IDE仿真调试软件+ S12(X)开发板套件+计算机;

2. 编程语言选择:单选C语言;

3. 调试连接选择:硬件连接调试(TBDML);

4. 仿真调试器一端连接电脑背后USB接口,另一端插接核心板的BDM接

口。

三、实验内容:

1. CodeWarrior IDE软件安装方法和嵌入式系统硬件知识的学习(略)

2. 编辑、编译简单样本程序:点亮一个LED灯。底板上的8个LED已接B 口8位,B口位输出低电平时点亮。熟悉CodeWarrior IDE 的工程建立、菜单、工具、窗口、状态等。

a. 程序初始化完毕后,从main ( )函数开始运行,其他函数的执行都要通过main( )函数的调用来实现;正确编辑好代码后,下载并打开Debug窗口。

b. 仿真调试:分别利用单步、全速、停止、断点、复位等运行调试手段,观察寄存器A、B、X、Y、PC、CCR等的状态与变化。观察FALSH中指令地址和RAM中数据变化情况。通过在Data1窗口添加表达式、设置变量观察点,学习在Sourse窗口分析程序远行的机制并验证运行结果。(该仿真调试方法将运用于以后的各次实验中)

样本程序代码参考如下:

2、利用8个LED灯,设计一段流水灯程序

底板上的8个LED已接B口8位,B口位输出低电平时点亮。依次点亮系统板上的8个LED灯(之前的灯不用熄灭),LED已接B口8位,B口位输出低电平时点亮。亮出时间控制调用软件延时100ms。

工程编译、连接完成后,进入仿真调试窗口。

仿真调试:分别利用单步、全速、停止、断点、复位等运行调试手段,观察寄存器A、B、X、Y、PC、CCR等的状态与变化。观察FALSH中指令地址和RAM中数据变化情况。通过在Data1窗口添加表达式、设置变量观察点,学习在Sourse窗口分析程序远行的机制并验证运行结果。(该仿真调试方法将运用于以后的各次实验中)

程序代码提示:利用异或逻辑运算

3、设计跑马灯程序:提示,在上一个程序基础上进行修改。

依次点亮系统板上的8个LED灯(之前的灯熄灭),LED已接B口8位,B 口位输出低电平时点亮。亮出时间控制调用软件延时100ms。

四、实验要求

1.对实验内容进行预习,写出操作步骤,注意事项及做出相应流程图。

2.详细了解汽车网络系统的使用规范。

3.对实验结果进行整理,分析,写出实验报告。

实验二编程提高、并行I/O接口、中断

一、实验目的:

熟悉飞思卡尔MCU指令及其应用规则,巩固汇编语言程序编程方法,初步熟悉硬件连接调试方法。掌握C语言综合编程方法,掌握并行I/O口、定时器、中断等功能部件的使用规则和应用方法,熟悉MCU模块功能的初始化程序,熟悉中断处理程序的安排。

二、实验环境

1. CodeWarrior IDE仿真调试软件+ S12(X)开发板套件+计算机;

2. 编程语言选择:单选C语言;

3. 调试连接选择:硬件连接调试(TBDML);

4. 仿真调试器一端连接电脑背后USB接口,另一端插接核心板的BDM接

口。

三、实验内容:

1、底板上的8个LED已接B口8位,B口位输出低电平时点亮。蜂鸣器连接端口P的引脚3。设计一个利用输入设备触发输出设备工作的系统,在主函数mian( )中实现,按下键盘按钮,蜂鸣器响起。与此同时流水灯正常工作。

相关文档
最新文档