交通灯单片机课程设计
单片机课程设计交通灯(完整版)

门控串行数据输入
异步中央复位
符合 JEDEC 标准 no.7A
静电放电 (ESD) 保护:
·HBM EIA/JESD22-A114-B 超过 2000 V
·MM EIA/JESD22-A115-A 超过 200 V 。
多种封装形式
额定从-40 °C至 +85 °C和-40 °C至 +125 °C。
设计思想基于完成以上任务分析结合所学有关知识尤其是本学期所学关于单片机的中断系统和定时计数器的相关知识及应用我们知道对于15红绿黄四组各三盏灯的控制可以通过把这十二盏灯分别接到单片机的六个输出引脚若用p1口进行输出则分配如下at89c51l1l2l3l4l5l6东西红东西黄东西绿南北红南北黄南北绿led显示分布1642
亮灯规律:东西绿灯亮25s,南北红灯亮25s
东西绿灯闪5s,南北红灯亮5s
东西黄灯亮2s,南北红灯亮2s
东西红灯亮25s,南北绿灯亮25s
东西红灯亮5s,南北绿灯闪5s
东西红灯亮2s,南北黄灯亮2s
2.2.
(1)加强对单片机和汇编语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。
3.2.LED
3.2.1.七段数码显示器:
七段发光线段分别用a、b、c、d、e、f、g七个小写字母表示。
3.2.2.LED数码管:
半导体数码管又称LED数码管,是一种广泛使用的显示器件。LED有两种:共阳极型和共阴极型。
LED优点:亮度高、字形清晰,工作电压低(1.5~3V)、体积小、可靠性高、寿命长,响应速度极快。
1.引言
交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
交通信号灯单片机课程设计

交通信号灯单片机课程设计一、设计背景交通信号灯是城市道路上的重要设施,它能够指引行车和行人的方向,维护交通秩序和安全。
而现代交通信号灯则采用了单片机技术,使其更加智能化、可靠化和节能环保。
二、设计目标本课程设计旨在通过学习单片机原理和应用知识,掌握交通信号灯的设计与实现方法,并实现以下目标:1. 理解单片机工作原理及其应用;2. 掌握基本的电子元器件和电路知识;3. 学会使用Keil C51集成开发环境编写程序;4. 能够独立完成交通信号灯系统的设计与实现。
三、设计内容1. 系统硬件设计系统硬件主要由单片机、LED等元器件组成。
其中,单片机采用AT89C52型号,具有强大的计算能力和丰富的外设接口;LED则是光电转换元件,可将电能转换为光能进行显示。
2. 系统软件设计系统软件主要由Keil C51集成开发环境编写。
具体步骤如下:(1)编写程序框架:包括头文件引用、全局变量定义、主函数等;(2)编写延时函数:通过循环语句实现时间延迟,用于控制交通信号灯的闪烁和变换;(3)编写状态转换函数:根据交通信号灯的状态进行相应的控制操作,包括红灯、黄灯、绿灯等状态;(4)调试程序:通过单片机仿真器或实际硬件进行程序调试,确保程序运行正确。
四、设计步骤1. 系统硬件设计步骤:(1)确定系统功能需求和性能指标;(2)选取单片机和LED元器件,并进行电路原理图设计;(3)进行PCB布线和焊接工作,完成系统硬件设计。
2. 系统软件设计步骤:(1)安装Keil C51集成开发环境,并创建工程文件;(2)编写程序框架和延时函数,并测试其正确性;(3)编写状态转换函数,并测试其正确性;(4)将程序下载到单片机中,并进行实际运行测试。
五、设计成果展示经过以上步骤,我们成功地完成了交通信号灯系统的设计与实现。
下面是系统运行效果展示:当交通信号灯处于红灯状态时,车辆需停车等待;当交通信号灯处于黄灯状态时,车辆需减速慢行;当交通信号灯处于绿灯状态时,车辆可正常行驶。
单片机交通灯课程设计

单片机交通灯课程设计一、课程介绍:本课程名为“单片机交通灯课程设计”,旨在通过教授单片机的基本原理和应用,使学员能够设计和实现一个简单的交通灯控制系统。
课程将围绕单片机的硬件组成、编程语言、接口技术等方面展开,使学员深入了解单片机的运作机制,掌握交通灯控制系统的原理和设计方法。
通过本课程的学习,学员将能够独立设计和实现一个交通灯控制系统,提高他们的实践能力和创新能力。
二、学习者分析:目标受众为具有一定电子工程或计算机科学背景的大学生,他们的年龄一般在18-25岁之间,学历水平主要为本科或研究生。
他们对电子技术和编程语言有一定的了解,具备一定的逻辑思维能力和问题解决能力。
先备知识方面,学员应掌握基本电路原理、C语言编程和微控制器的基本概念。
三、学习目标:1.认知目标:学生应该了解单片机的硬件组成、工作原理和编程语言;掌握交通灯控制系统的原理和设计方法。
2.技能目标:学生应该能够使用单片机开发工具进行程序编写和调试;能够设计和实现一个简单的交通灯控制系统。
3.情感目标:学生应该培养对电子技术的兴趣和热情,提高他们的问题解决能力和创新意识。
四、课程内容:1.模块/单元划分:将课程内容划分为以下几个模块:模块一:单片机基础知识;模块二:C语言编程;模块三:单片机接口技术;模块四:交通灯控制系统设计。
2.内容描述:模块一将介绍单片机的硬件组成、工作原理和编程环境;模块二将教授C语言的基本语法和编程技巧;模块三将讲解单片机接口技术的原理和应用;模块四将引导学员设计和实现一个简单的交通灯控制系统。
3.核心概念:每个模块中都包含关键概念或理论,如单片机的硬件组成、C语言的编程语法、接口技术的原理等。
这些核心概念是课程的重点,学员需要深入理解和掌握。
五、教学策略:为了达到本课程的学习目标,我们将采用多种教学方法、活动设计和技术的整合。
1.教学方法:我们将结合讲授、讨论、合作学习和实验等方法。
讲授法用于向学生传授单片机和C语言的基础知识;讨论法用于激发学生的思考,解决学习过程中遇到的问题;合作学习使学生在团队中共同完成项目,培养沟通和协作能力;实验法让学生亲手操作,加深对知识的理解和应用。
单片机课程设计-交通灯

目录目录第一章课程设计内容与要求分析 (1)1.1 课程设计内容 (1)1.2 课程设计要求分析 (2)1.2.1 系统单元电路组成 (2)第二章控制系统程序设计 (4)第三章单片机原理及应用课程设计总结 (18)参考文献 (19)附录 (20)第一章课程设计内容与要求分析1.1 课程设计内容本题目以89C51单片机为核心器件组成交通灯控制系统,采用定时中断实现精确定时;利用提供的单元模块构成硬件系统。
交通灯控制系统的设计要求:1)基本功能:要求在一般工作方式下,十字路口为A、B道(A、B道交叉组成十字路口),每道设置红、绿、黄三盏灯,在灯的控制下各道轮流放行。
通行的流程是:B道红灯亮40秒,同时A道绿灯亮30秒,闪烁5秒,A道黄灯亮5秒;然后切换A道红灯亮40秒,同时B道绿灯亮30秒,闪烁5秒;B道黄灯亮5秒。
如此循环。
在A、B道红、绿、黄灯依次点亮时,A、B道对应的两位数码管分别倒计时显示本道红、绿、黄灯点亮的时间。
2)扩展功能:设置自动流量控制功能:即当一道有车而另一道无车(用按键开关S1、S2模拟车辆检测功能)时,使有车车道放行。
设置优先控制功能:当有紧急车辆通过时,用开关S0进行控制,将A、B 道均设定为红灯,第二次按下开关S0后,回复正常运行状态。
1.2 课程设计要求分析1.2.1 系统单元电路组成图1 交通灯外围电路图2 交通灯运行时电路图3 交通灯运行时电路第二章控制系统程序设计#include <reg51.h>unsigned char code dtab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//共阳极接法的数字0~9段码表unsigned char code selec[4]={0xFE,0xFD,0xFB,0xF7};//动态显示位选码表unsigned char disp[4];//定义4个显示缓冲单元unsigned char aa[25];sbit Key1=P1^4;//定义四个独立按键sbit Key2=P1^5;sbit Key3=P1^6;sbit Key4=P1^7;sbit YL_ledR=P3^0;//定义Y轴方向左转的红绿黄灯sbit YL_ledY=P3^1;sbit YL_ledG=P3^2;sbit YG_ledR=P3^3;//定义Y轴方向直行的红绿黄灯sbit YG_ledY=P3^4;sbit YG_ledG=P3^5;sbit XL_ledR=P2^0;//定义X轴方向左转的红绿黄sbit XL_ledY=P2^1;sbit XL_ledG=P2^2;sbit XG_ledR=P2^3;//定义X轴方向直行的红绿黄sbit XG_ledY=P2^4;sbit XG_ledG=P2^5;unsigned char flag=13,move_flag; //定义标志位unsigned char XGR,XGY,XGG;unsigned char XLR,XLY,XLG;unsigned char YGR,YGY,YGG;unsigned char YLR,YLY,YLG;unsigned char YYRR,XXRR;unsigned char num;void Delayms(unsigned int x) //定义xms延时函数,x就是形式参数{unsigned int i;unsigned char j;for(i=x;i>0; i--)for(j=110;j>0;j--);}/**************************************************************函数功能:定时器0中断服务函数,显示矩阵按键值**************************************************************/void Time0(void) interrupt 1//"interrupt"声明函数为中断服务函数{unsigned char count;TH0=(65536-50000)/256; //定时器T0的高8位赋初值TL0=(65536-50000)%256;//定时器T0的低8位赋初值if(++count>=20){count=0;YGG--; //Y轴绿灯时间减一XXRR--; //X轴红灯时间减一disp[2]=XXRR%10; //X轴数码管显示Y轴绿灯时间disp[3]=XXRR/10;disp[0]=YGG%10; //Y轴数码管显示X轴红灯时间disp[1]=YGG/10;if(YGG==0) //如果Y抽绿灯时间减为零,Y轴的黄灯开始亮,X轴的数码管显Y轴黄灯时间{disp[0]=YGY%10;disp[1]=YGY/10;YGG=1;YGY--;YG_ledG=1;//Y轴的绿灯熄灭YG_ledY=0;if(YGY==0XFF) //当Y轴黄灯闪烁时间变为零,Y轴红灯亮,黄灯灭,Y数码管显示X轴绿灯时间{ //同时X轴的绿灯亮,红灯灭,X轴数码管显示Y轴红灯时间disp[0]=YLG%10;disp[1]=YLG/10;YGY=0;YLG--;YL_ledG=0;YG_ledR=0;YG_ledY=1;YL_ledR=1;if(YLG==0XFF)//当X轴绿灯时间为零,X轴的绿灯灭,黄灯开始闪烁。
交通灯单片机课程设计报告

课程设计报告:交通灯单片机控制系统1. 设计目的本课程设计旨在让学生通过使用单片机开发一个简单的交通灯控制系统来加深对单片机编程和控制原理的理解。
该系统可以模拟道路上的交通灯,实现红灯、绿灯和黄灯的循环控制,并可以通过按键进行手动控制。
2. 设计原理2.1 交通灯状态交通灯状态包括红灯、黄灯和绿灯,它们按照固定的时间间隔循环切换。
2.2 按键控制设计中使用一个按键用于手动控制交通灯状态切换。
按下按键时,会切换到下一个灯状态。
3. 硬件方案3.1 单片机本设计采用ATmega328P单片机,它具有足够的GPIO引脚用于控制交通灯的LED。
3.2 LED使用红色、黄色和绿色LED模拟交通灯的三种状态。
3.3 按键一个按键连接到单片机的GPIO引脚,用于手动切换交通灯状态。
4. 软件方案4.1 控制逻辑编写单片机程序,实现交通灯状态的循环切换和按键控制逻辑。
4.2 定时器使用定时器来控制交通灯状态切换的时间间隔。
4.3 中断配置按键的中断,以便在按下按键时进行状态切换。
5. 实施过程连接硬件组件,包括LED、按键和单片机。
编写单片机程序,包括交通灯状态切换逻辑、定时器配置和按键中断处理。
编译并烧录程序到单片机。
运行程序,观察交通灯的状态切换和按键控制是否正常。
6. 测试结果经过测试,交通灯控制系统能够正常运行。
交通灯状态按照预定的时间间隔循环切换,同时按下按键可以手动切换状态,符合设计要求。
7. 问题解决在实施过程中,遇到了一些问题,如硬件连接错误和程序逻辑错误。
通过仔细检查和调试,成功解决了这些问题。
8. 总结本课程设计使我深入了解了单片机编程和控制系统的原理,通过实际动手操作,更好地掌握了这些概念。
设计交通灯控制系统是一个有趣且教育性的项目,我对单片机编程有了更深入的理解,这对我的学习和职业发展都有所帮助。
这个示例课程设计报告可以作为参考,你可以根据具体的课程设计要求和硬件平台的不同来进行调整和扩展。
单片机交通灯课程设计

单片机交通灯课程设计单片机交通灯课程设计简介:单片机交通灯课程设计是一项基于单片机控制的交通灯系统设计任务。
通过使用单片机的控制和处理能力,设计出实现交通灯的红绿灯控制、时间自动调整等功能的系统。
该设计能够帮助学生提升对单片机的理解和应用能力,同时加深对交通灯控制原理的理解。
需求分析:根据交通灯的基本原理,我们需要实现交通灯的红灯、绿灯和黄灯的切换控制,并且能够按照一定时间间隔进行自动调整。
通过按键控制可以手动改变交通灯的状态。
我们需要选取适当的控制电路和编程语言来实现这一功能。
本设计的目标是使交通灯的切换过程平稳、稳定,并且在故障发生时能够按照预定的故障处理机制进行处理。
设计方案:1. 硬件设计:(1) 选取合适的单片机,可根据实际情况选择合适的型号;(2) 设计电路板,将单片机与交通灯的灯组连接起来;(3) 使用合适的电源供电,保证电路的正常运行;(4) 调试电路,确保电路的连接正常、无故障。
2. 软件设计:(1) 选择合适的编程语言和开发环境,如C语言和Keil等;(2) 设计主循环程序,实现交通灯的红、黄、绿灯的切换功能;(3) 设计按键检测处理程序,实现按键控制交通灯的手动切换功能;(4) 设计时间调整程序,实现交通灯切换时间的自动调整功能;(5) 设计故障处理程序,实现在故障发生时的处理机制。
实验步骤:1. 连接硬件电路,保证电路连接正确;2. 使用适当的编程语言编写程序,并导入单片机中;3. 打开电源,观察交通灯的切换状态,并尝试按键控制;4. 观察交通灯的自动调整功能,验证其正常工作;5. 模拟故障情况,测试故障处理机制;6. 对实验结果进行总结和分析,修正可能存在的问题。
注意事项:1. 实验中要注意电路连接和开关的正确使用,确保电路安全;2. 编写程序时要注意代码的规范性和可读性,方便后续修改和维护;3. 在实验过程中及时记录实验数据和观察结果,以便后续分析和总结。
结论:通过本次课程设计,我学会了如何使用单片机来实现交通灯的控制功能,并加深了对交通灯控制原理的理解。
单片机课程设计报告1 交通灯

单片机课程设计报告1 交通灯1. 引言本文档是单片机课程设计的报告,主题为交通灯。
交通灯是城市交通管理的重要组成部分,合理的交通灯设置可以提高交通效率、保障交通安全。
本文将介绍交通灯的设计方案、实现过程以及遇到的问题及解决方法。
2. 设计方案2.1 总体设计思路本次交通灯设计采用的是基于单片机的控制系统。
通过在单片机上编程设计,控制交通灯的状态和时间,实现交通灯的自动切换,并保证交通流畅。
2.2 硬件设备本次设计所需的硬件设备包括:•单片机:采用STC89C52型单片机•交通灯信号灯模块:包括红灯、黄灯、绿灯三个灯泡及控制电路板•电源模块:用于提供电力供给2.3 软件设计本次设计的软件部分主要包括:•交通灯控制程序:通过编写程序控制单片机,实现交通灯的自动切换3. 实现过程3.1 准备工作在开始设计之前,我们首先进行了一些准备工作。
包括准备好所需的硬件设备,如单片机、交通灯信号灯模块和电源模块;同时也对单片机进行了初始化配置,以及编写好了交通灯控制程序的框架。
3.2 硬件连接我们将单片机与交通灯模块进行连接。
具体的连接方式如下:1.将单片机的IO口与交通灯模块的各个灯泡的控制引脚相连,以实现对灯泡亮灭的控制。
2.将电源模块与单片机进行连接,以提供电力供给。
3.3 软件设计与编程在硬件连接完成后,我们开始着手进行软件设计和编程。
主要的步骤包括:1.定义交通灯的状态:根据交通灯的信号变化规律定义交通灯状态,如红灯亮、黄灯亮、绿灯亮等。
2.编写控制程序的逻辑:根据交通灯的状态定义,编写控制程序的逻辑,实现不同状态之间的切换和持续时间的控制。
3.编程实现:根据以上设计,在单片机上编写程序,并通过烧录将程序烧录到单片机上。
3.4 测试与调试在程序编写完成后,我们进行了测试与调试。
通过在交通灯工作状态下的观察与测试,我们可以判断出程序是否符合设计要求,并进行必要的调试。
4. 遇到的问题与解决方法在设计与实现过程中,我们遇到了一些问题,具体包括:•问题1:单片机与交通灯模块的连接出现问题,导致交通灯无法正常工作。
单片机课程设计红绿灯

单片机课程设计红绿灯一、教学目标本章节的教学目标是让学生了解和掌握单片机在交通信号灯控制系统中的应用。
通过本章节的学习,学生应能理解交通信号灯的工作原理,掌握单片机的基本编程和电路连接,培养学生的实际操作能力和创新思维。
具体来说,知识目标包括:1.了解交通信号灯的工作原理和作用。
2.掌握单片机的基本编程和电路连接。
3.了解如何利用单片机实现交通信号灯的控制。
技能目标包括:1.能够独立设计和连接单片机电路。
2.能够编写简单的单片机程序。
3.能够对交通信号灯控制系统进行调试和优化。
情感态度价值观目标包括:1.培养学生的团队合作意识和沟通能力。
2.培养学生对科技创新的兴趣和热情。
3.培养学生对交通安全的重视和责任感。
二、教学内容本章节的教学内容主要包括交通信号灯的工作原理、单片机的基本编程和电路连接,以及如何利用单片机实现交通信号灯的控制。
具体来说,教学大纲如下:1.交通信号灯的工作原理和作用:介绍交通信号灯的基本工作原理和其在交通管理中的作用。
2.单片机的基本编程:学习单片机的基本编程语言和编程技巧,包括数据的输入输出、逻辑运算和控制语句等。
3.单片机电路连接:学习单片机的基本电路连接方法,包括电源电路、输入输出电路和传感器电路等。
4.交通信号灯控制系统的实现:学习如何利用单片机实现交通信号灯的控制,包括编程设计、电路连接和系统调试等。
三、教学方法为了达到本章节的教学目标,将采用多种教学方法相结合的方式进行教学。
包括讲授法、讨论法、案例分析法和实验法等。
通过讲授法,向学生传授交通信号灯的工作原理和单片机的基本编程知识。
通过讨论法,引导学生进行思考和交流,培养学生的团队合作意识和沟通能力。
通过案例分析法,让学生通过分析实际案例,深入理解交通信号灯控制系统的实现方法。
通过实验法,让学生亲自动手进行电路连接和编程设计,提高学生的实际操作能力和创新思维。
四、教学资源为了支持本章节的教学内容和教学方法的实施,将选择和准备适当的教学资源。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 序言1.1交通灯的形成当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已出现了。
1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。
这是世界上最早的交通信号灯。
1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。
它由红绿两色旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。
1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。
电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。
红灯亮表示“停止”,绿灯亮表示“通行”。
1918年,又出现了带控制的红绿灯和红外线红绿灯。
带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。
红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。
红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
我们设计的单片机控制交通灯就是基于信号灯。
1.2技术指示设计一个十字路口(方向为东西南北四个方向)的交通灯控制电路,每条道路上各配有一组红、黄、绿交通信号灯,其中红灯亮,表示该道路禁止通行;黄灯亮表示该道路上未过停车线的车辆禁止通行,已过停车线的车辆继续通行;绿灯表示该道路允许通行。
该电路自动控制十字路口两组红、黄、绿交通灯的状态转换,实现十字路口自动化。
图1.2为一十字路口交通灯控制图的简化图。
图1.2十字路口交通灯控制图简化图1.3任务和要求设计一个交通灯系统,通过单片机如AT89C51并接数码管及发光二极管来模拟交通灯的变化规律,8个数码管用来显示秒值,东西南北各两个,12个发光二极管,东西南北各三个,分为红绿黄三种颜色。
设计思路,首先东西方向绿灯亮,南北方向红灯亮,同时开始计时20s,在7段数码管上显示时间。
当20s倒计时结束后,开始3s倒计时,并且东西方向绿灯开始闪烁,南北方向红灯亮。
当3s倒计时结束后再开始2s倒计时,并且东西方向黄灯亮,南北方向还是红灯亮。
当2s倒计时结束后开始20s的倒计时,此时是南北方向绿灯亮,东西方向红灯亮。
接下来就是南北方向绿灯闪烁3s,再南北方向黄灯闪烁2s,接着又开始循环。
要求设计出电气原理图、要求设计出程序流程图、要求设计出程序。
2硬件电路的描述和设计2.1单片机的简述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。
单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。
通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3、4代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压、低功耗。
单片机体积小、功能全、性价比等诸多优点而独具特色,在工业控制、尖端武器、通信设备、家用电器等嵌入式应用领域中独占鳌头。
如果说C语言程序设计课程设计的基础课,那么单片机以其系统硬件构架完整、价格低廉、学生能动手等特点,成为工科学生硬件设计基础课。
2.2电源电路稳压的稳压电源电路图如图2.2所示。
220V电压经过降压后得到12V交流电,经二极管整流成脉动直流电,经过电容滤波后再又经过LM7805稳压得到5V的直流电供系统工作,后面的发光二极管是起一个电源指示的作用,470UF的电容是起一个再次滤波的作用。
图2.2电源电路2.3芯片的选择与简单介绍此设计主控芯片采用AT89C51(如图2.3)芯片。
AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable andErasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。
单片机,亦称单片微电脑或单片微型计算机。
它是把中央处理器(CPU)、数据存储器(RAM)、程序存储器(ROM)、输入/输出端口(I/O)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。
2.4单片机的最小系统图2.3 AT89C51芯片单片机最小系统如图2.4所示是以89C51为核心,电路结构简单,抗干扰能力强,成本相对较低,非常符合本设计的所有要求。
89C51单片机系列是MCS-51系列的基础上发展起来的,是当前8位单片机的典型代表,采用CHMOS工艺,即互补金属氧物的HMOS工艺。
CHMOS是CMOS和HMOS的结合,具有HMOS高速度和高密度的特点,还具有C MOS低功耗的特点。
时钟电路在单片机的外部通过XTAL1、XTAL2这两个引脚跨接晶体振荡器和微调电容,构成稳定的自激振荡器。
本系统采用的为12MHz 的晶振,一个机器周期为1us,C1、C2为30pF。
2.5 显示电路因为系统要求南北和东西方向的信号灯时间不一样,所以就利用单片机的P0口送出数据的段码,位选信号用P2口送出,用动态图2.4 单片机最小系统扫描的方法显示东西、南北的倒计时间。
数码管使用共阴数码管,需要接上470欧上拉电阻以提供足够大的电流来驱动数码管,数码管的每段的电流是约10毫安。
显示电路组件如图2.5所示:图2.5 显示电路2.6信号灯电路本设计利用单片机的P2口来驱动和控制各种信号灯的燃亮和燃亮时间,在实际中,交通灯的信号灯需要用高电压控制,在这里我们只是模拟一下它的控制信号,所以我们就只用单片机的信号引脚直接来控制发光二极管,如图2.6所示。
图2.6 信号灯电路2.7电路原理图电路原理如图2.6,此图主要由一块主芯片AT89C51、四个7SEG-MPX2-CC、十二个发光二极管(分别为四个LED RED、四个LED YELLOW、四个LED GREEN)、一块RESPACK-8组成。
系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,是交通实现有效控制。
详图见下一页:图2.7 电路原理图3软件设计流程及描述3.1设计方案思想先了解交通灯的变化规律,假设这个十字路口为东西南北走向。
转状态1东西绿灯通行,南北红灯禁行。
过20s转状态2,南北仍然红灯,东西绿灯闪烁3s后转为黄灯亮2s。
再转状态3,南北变为绿灯通行,东西变为红灯禁行。
过20s转状态4,东西仍然红灯,南北绿灯闪烁3s转黄灯亮2s。
最后回到状态1,不断循环。
系统统采用MSC-51系列单片机为中心器件来设计交通灯控制器,实现了能根据实际车流量通过单片机芯片的P1口控制红、黄、绿灯的燃亮与熄灭;P0口外接数码管来显示各个信号灯的时间。
3.2设计要求流程图设计流程图如图3.2:图3.2设计流程图以上设计流程图,在编制主程序流程图和编写程序源代码的时候,以此作为参考。
程序开始时状态一为东西绿灯亮南北红灯亮,延时并倒计时;然后进入第二个状态东西绿灯闪南北红灯亮,延时倒计时结束后再改变状态,第三个状态为东西黄灯亮南北红灯亮,延时。
第四个状态东西变为红灯,南北变为绿灯,这是东西禁行,南北通行。
第五个状态东西依然红灯亮,南北绿灯闪烁,倒计时。
第六状态东西不变还是红灯,南北黄灯亮。
依次按照设计流程图进行下去,一个周期结束后马上进入现已周期,依次循环。
3.3主程序流程图主程序流程图如图3.3所示:图3.3 主程序流程图4 仿真效果4.1仿真软件利用wave软件进行编程,利用proteus软件设计原理图并接线。
4.2系统仿真效果图图4.2(a)、(b)为用proteus软件模拟交通灯的部分状态仿真图。
图 4.2(a)是在仿真电源接通之前的效果图,此时处于初始状态。
当接通电源的瞬间,东西方向从20s倒计时并且绿灯亮,南北方向从25s倒计时并且红灯亮。
图4.2(a)仿真效果图图4.2(b)为东西方向从20s倒计时至9秒时,南北方向从25s倒计时至14秒的状态图。
并且在倒计时的同时东西方向绿灯亮,南北方向红灯亮。
图4.2(b)仿真效果图4.2仿真结果分析从仿真的过程来看,在接通电源时仿真能够正常运行。
红灯、黄灯、绿灯状态能够符合要求转换。
仿真开始东西方向为绿灯倒计时20s,南北方向红灯25s,当东西方向20s倒计时结束马上转变为绿灯倒计时3s,南北方向仍然是红灯倒计时,东西方向3s绿灯倒计时结束后转变为黄灯倒计时2s。
在东西方向黄灯倒计时2s结束的同时,南北方向也刚好结束了红灯25s的倒计时,然后南北方向马上转变为20s的绿灯倒计时,东西方向转变为25s的红灯倒计时,循环下去。
此程序仿真可以准确显示每个状态所剩余的时间,可以自主的实现设计要求的各状态的转换。
完成一个周期后此系统都将会进入下一个周期的开始,实现循环控制交通灯的变换,符合课程设计的要求。
课程设计体会总结第一次做课程设计,刚拿到题目的时候很茫然,不知道从什么地方下手,也不知道该怎么做。
通过对设计题目和要求的反复琢磨,咨询了指导老师,参考了很多资料后,了解了设计的大概,并且对此次课程设计也有了大体的思路。
在做的过程中,我遇到了很多困难,比如对知识的不深入,让我不得不查阅很多资料,花费很多时间理解每一个难关。
在不懈的努力下终于完成了此次课程设计。
通过这次课程设计,加强了我思考、解决问题和动手的能力。
电路原理和连接,和芯片上的选择,也懂得了一些。
巩固数字逻辑电路的理论知识,并对芯片有了新的认识,懂得它的功能与其它芯片替换等。
更重要的是如何将逻辑电路灵活运用于实际生活。
协作的重要性。
我懂得做课程设计同时也是对课本知识的巩固和加强,平时看课本时,有时问题老是弄不懂,做完课程设计,很多问题都解决了,而且还可以记住很多东西。
比如一些芯片的功能,平时看课本,这次看了,下次就忘了,主要是因为没有动手实践。
这次的实践后,让我获益匪浅。
经过这次课程设计,也让我更加深刻的认识到学好单片机的重要意义。