资源描述
课程设计在单片机教学的应用摘要:由于单片机原理及应用课程内容抽象实践性强,导致学生难以掌握。本文通过汽车电子技术实验台开设一个课程设计即基于飞思卡尔单片机MC9S12D64 对公路交通灯控制系统的仿真设计,学生通过对系统的硬件与软件的设计。使学生对飞思卡尔单片机知识经历了从不会、认识、熟悉到掌握的过程,并提高了综合性设计能力和培养了创新意识。通过此课程设计学生得到了各方面训练并能综合运用课本知识,对飞思卡尔单片机课堂教学改进进行了探讨。近年来飞思卡尔单片机发展迅速,在汽车电子、工业控制等领域得到广泛的应用,在国内多所大学建立了嵌入式处理器(MCUDSP)开发应用中心,并持续举办了全国性应用设计大奖赛和“飞思卡尔”杯全国大学生智能车竞赛,进一步推动了中国微处理器应用技术的教学与研发工作,促进了嵌入式产业发展和人才培养1-3。飞思卡尔单片机已成为不少高校车辆工程及相关专业的单片机教学课程内容,单片机原理及应用作为一门实践性和工程性很强的课程,需要大量的实验和实践训练,才能深入掌握其基本原理和应用系统的设计方法,提高设计和应用能力4。所以如何做到理论与实践相结合 ,让学生能够把抽象难懂的理论知识做到灵活运用、融会贯通,这是单片机实践教学过程中要抓住的重点。“单片机课程设计”是单片机课程教学过程中非常重要的一个环节, 它能够很好的综合单片机课程所学的内容,通过该实践环节达到了培养高水平的单片机开发技能的要求5 。因此找到一些适合于单片机教学的课程设计题目是至关重要的。结合天津科技大学机械工程学院车辆工程专业飞思卡尔单片机原理及应用课程教学情况,开设二周的课程设计,其目的是加强提高学生对课程的兴趣,加强综合运用单片机知识能力,增强硬件与软件的设计能力。课程设计选择在一台汽车电子技术仿真实验上进行,其题目为“基于飞思卡尔MC9S12D64 单片机的公路交通灯控制系统的仿真设计”,该课程设计运用了较多模块电路,采用了复位电路、晶振电路、BDM 电路、数码管显示电路、电源电路及 LED 灯显示电路和定时器电路等功能模块。软件设计采用了 C 语言,在CodeWarrior5.1 平台进行系统软件的编程调试,设计了程序框图,设计的系统得到了验证。通过该课程设计,学生对飞思卡尔单片机的知识掌握得到很大的提高,实践与创新能力也得到了提高。一课程设计的实施(一)公路交通灯控制方案设计此单片机控制的交通灯系统,能模仿城市“十字”路口交通灯的功能,具体设计要求如下6,7:(1)该设计能控制东、西、南、北四个道口的红、黄、绿信号灯正常工作;(2)当东西方向通行,南北禁行时,东西方向亮绿灯,南北方向亮红灯;(3)东西方向为主干道,通行时间 40 秒;南北方向为次干道,通行时间 30 秒(时间可调节);(4)当主干道绿灯亮 40 秒时,主干道黄灯开始亮,并且闪烁,警告车辆及行人禁止通行,四秒后,主干道开始亮红灯禁行,次干道亮绿灯通行;(5)为了实验时更能看清车辆行驶经过,在东西、南北干道上设置五个畅通灯。交通灯运行状态如图 1 所示。(二)系统硬件设计学生知道交通灯控制方案后,首先需要掌握交通灯控制系统所需的硬件基本知识,熟悉各个模块电路的设计,然后通过它们之间相互关系来组成该交通控制系统的硬件结构。该控制系统运用一套汽车电子技术实验台上的相关模块电路来进行实现。(1)系统框图汽车电子技术仿真台采用飞思卡尔半导体公司S12 系列单片机 MC9S12D64 型号,其性能为增强型 16 位数,CPU 内核 S12,最高总线频率可以达到 25MHz,具有片内 64KFLASH 存储器、4KBRAM、1KBEEPROM、CPU 编码效率高和背景调试特性。具有 I/O 接口有 91个线,8 个通道 8 位 ECT 定时器等8 。整个控制系统的硬件设计主要由主控中心、复位电路、晶振电路、BDM 电路、数码管显示电路、电源电路及 LED 灯显示电路等功能模块组成,如图 2 为系统框图。(2)系统各模块设计交通灯电路设计采用 12 根 I/O 接口的引脚与主次干道红绿黄 LED 灯相连,其余 5 根与畅通指示小黄灯相连,引脚输出低电平时灯亮,输出高电平时灯灭。学生应熟悉各I/O 端口引脚的输出与输入方向寄存器以及数据寄存器设置的概念。交通灯时间采用五位 8 段 LED 数码管显示,该模块集成数码管控制显示芯片 TEC9607,控制五个数码管扫描显示。学生应掌握 TEC9607 的工作原理和与 MCU 接口连接情况。TEC9607 是一种串行共阳极 CMOS58 段 LED 数码管显示驱动电路,为全定制专用集成芯片,它由开机自清电路、振荡电路、位扫描驱动电路、58 位移位寄存器电路、58 位数据锁存器电路、多路选择器、共阳极段驱动电路组成。可以与各种型号的微控制器(MCU)串行口或并行口连接,专供驱动 5 位十进制八段共阳极 LED 数码管或共阴极 58 点阵 LED 使用9。单片机通过 SPI 通讯方式将显示数据传送至 TEC9607,TEC9607 的引脚串行移位脉冲(SCP)接MC9S12D64 引脚 PWM2/KWP2/PP2(2),引脚数据锁存(LCP)接 XADDR15/PK1(7),引脚串行输入数据(SI)接 PWM1/KWP1/PP1(3)。交通灯(红绿黄)变换的时间由增强定时器(ECT )模块确定,编程一个子程序,调用它实现各变换时间(秒为单位)的向下计时。要求学生需要对增强定时器(ECT)模块的各寄存器的掌握和设置,掌握中断的编程概念,这些知识具有一定的难度。(三)系统软件设计程序编写是课程设计过程中最为重要的环节,学生首先是要学好 C 语言,学会使用 CodeWarrior5.1 软件操作平台,掌握平台建立程序编写的过程,学生在熟悉单片机的开发环境和各模块电路硬件的基础上,画出程序流程图。飞思卡尔单片机比 8051 型单片机在编程方面具有许多优势。如 I/O 接口很方便地通过方向寄存器 DDRX 和数据寄存器 PORTX 或 PTX 控制 LED 灯的亮和灭,采用背景调试模块(BDM)使 PC 机编译完成的 C 语言程序很容易的下载到单片机 FLASH内存并可擦除十万次以上等等。程序流程图如图 3 所示。(四)测试验证系统软件经过反复调试成功后,在集成交通灯控制模块的汽车电子技术仿真实验台上进行测试,如图 4 为实际交通灯测试运行情况,即东西绿灯亮,车辆通行倒计时至 28 秒,东西畅通灯亮,南北红灯亮禁止车辆通行。经过测试验证,该交通灯控制系统能如实地仿真实际交通灯的运行情况,系统设计是可靠成功的。二结论学生应用了飞思卡尔单片机 MC9S12D64 对交通灯控制系统仿真设计作为课程设计,对系统进行硬件设计包括最小系统、交通灯和五位数码显示电路设计等;在 CodeWarrior5.1 平台上应用了 C 语言对交通灯控制进行编程,控制系统在实验台上进行测试得到证实。单片机原理及应用课程是一门理论性和实践性都很强的课程,在课堂教学后进行课程设计环节是十分必要的,而且具有很强的可操作性。开展这样一个实际应用性项目的设计不仅仅能使学生知道单片机应用开发的基本过程,更重要的是学生能加强对课本理论知识的掌握和运用 ,达到学以致用的目的。单片机课程设计既加强了学生实践能力的培养,又能提高学生综合运用知识的能力和自主学习,实现自主创新的能力,还能激发学生学习单片机技术的兴趣和积极性,为下一步的继续深入学习和工作打下比较坚实的基础。实践教学的探索是一个长期的过程,必须不断积累经验,不断完善, 不断创新, 只有这样,才能真正实现让每个学生都成为应用型人才的培养目标。
展开阅读全文