C语言版交通灯课程设计
微机控制课程设计报告
课程名称 基于C语言单片机交通灯
学生姓名 张 万 双
学号 5110202
专业班级 电子信息科学与技术2班
指导老师
12月5日
目录
一.前言……………………………………………………….....3 二.功能概述 .............………………………………………….3 三.设计思路……………………………………………………4 四.硬件介绍……………………………………………………4 五.软件程序设计……………………………………………..9 六.电路图及仿真实现………...…………………………....12
七.总结……………………………………………………....14
八.源程序……………………………………………...........15
九.参考文献…………………………………......................18
一.前言
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控 制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往 作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构 软硬件结合,加以完善。
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什 么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制 方式很多,在学习了单片机的有关知识之后,运用相关知识来设计完成交通信号灯。
二.功能概述
2.1 设计任务:交通灯的硬件和软件设计
2.2 设计目的
1.进一步熟悉和掌握单片机的结构和工作原理。
2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。
3.通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解 有关电路参数的计算方法。
4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。
5.通过完成一个包括电路设计和程序开发的完整过程,为我们今后从事相应 工作打下基础。
三.设计思路
交通灯的变化规律
按照常规我们假设一个十字路口为东西南北走向。初始状态为状态 1,南北 方向绿灯通车,东西方向红灯。经过过一段时间(25S)转换状态 2,南北方向 绿灯闪几次转亮黄灯,延时 5S,东西方向仍然红灯。再转换到状态 3,东西方向 绿灯通车,南北方向红灯。过一段时间(25S)转换到状态 4,东西方向绿灯闪 几次转亮黄等,延时 5S,南北方向仍然红灯。最后循环至南北绿灯,东西红灯。在这些状态下,有时钟倒数计时。
四.硬件介绍
基础知识
交通灯控制器实例主要使用了 89C51 单片机的定时器/计数器,基础知识主 要包括交通灯的变化规律、定时器/计数器的概念、定时器/计数器的相关寄存 器、定时器/计数器的 4 种工作方式、以及定时器/计数器的变成。
4.1 定时器/计数器
定时器/计数器是单片机中最常用、最重要的功能模块之一,本节通过交通灯控 制器实例来演示定时器的使用,并复习如何使用散转程序。
首先介绍交通灯以及定时器/计数器的基础知识,接着介绍本实例的硬件电路构 成,然后逐步分析定时器的变成以及程序的全貌,最后总结一下本实例的技巧与 注意点。
4.2 定时器/计数器的概念
89C51 单片机内有两个可编程的定时器/计数器 T0、T1。 当定时器/计数器用作“定时器”时,每经过 1 个机器周期(12 个时钟周期), 计数器加 1。 当定时器/计数器用作“计数器”时,计数器在对应的外部输入管脚(T0 为 P3.4 引脚,T1 为 P3.5 引脚)上每发生一次 1 到 0 的跳变时加 1。使用“计数器”功 能时,外部输入每个机器周期被采样一次。当某一周期管脚状态采样为高电平而
下一周期采样为低电平时,计数器加 1。由于检测下降沿跳变需要两个机器周期(24个时钟周期)的时间,所以技术频率最大值只能为时钟周期的 1/24。计数器对外部输入信号的占空比并无限制,但为了保证给定的电平信号在其改变之前 至少被采样一次,外部输入信号必须至少保持一个完整的机器周期。
4.3 定时器/计数器的相关寄存器
与定时器/计数器相关的寄存器有定时器/计数器工作方式寄存器(TMOD)、定 时器/计数器控制寄存器(TCON)。TCON 已经在 2.5 节受控输出实例中介绍过, 因此,在本例中主要介绍 TMOD 寄存器。 定时器/计数器工作方式寄存器(TMOD),字节地址 89H,不可进行位寻址。
定