基于AT89C51单片机的电子交通灯控制系统设计

需积分: 9 0 下载量 195 浏览量 更新于2024-07-01 收藏 757KB DOC 举报
"这篇文档是关于单片机原理实验课程设计的毕业设计,重点是基于AT89C51单片机的电子交通灯系统。该设计涵盖了硬件和软件的全面开发,包括系统方案设计、器件选型、硬件设计、软件设计以及结论。" 在单片机原理实验课程设计中,学生通常会接触并应用到以下几个核心知识点: 1. **单片机基础知识**:单片机是微控制器的一种,集成CPU、RAM、ROM、I/O口等部件于单一芯片上,广泛应用于各个领域。AT89C51是常用的8位单片机,具有丰富的资源和灵活的扩展性。 2. **系统方案设计**:设计中提到的交通灯控制系统需要考虑如何实现交通灯的周期切换、时间显示以及数据存储等功能,这涉及到硬件选型和软件流程规划。 3. **器件选型**: - **CH4513**:用于数码管驱动和键盘控制,帮助实现交通灯状态的显示和用户交互。 - **DS1302**:实时时钟芯片,负责时间日期的获取和更新。 - **LED8*8点阵**:用于交通灯图形显示,可以通过编程控制每个像素点的亮灭。 - **74HC573**:锁存器,用于数据缓冲和控制LED8*8点阵的数据传输。 - **74HC138**:译码器,用于地址线解码,选择特定的设备或电路。 - **AT24C02A**:E2PROM芯片,用于非易失性数据存储,例如交通灯的设置信息。 4. **系统硬件设计**:包括总体硬件架构设计,如交通灯界面、时间日期显示、数据存储和查询模块,以及键盘显示模块。这些都需要根据选定的器件进行接口设计和电路布局。 5. **系统软件设计**:主要包括系统主流程图的绘制,以及各功能模块的编程实现,如交通灯显示、时间日期修改和显示、数据记录和存储显示。这部分通常使用C语言或者汇编语言编写,并通过单片机开发环境进行编译和调试。 6. **交通灯控制系统**:信号灯的控制逻辑是设计的重点,需要实现红绿黄灯的定时切换,同时可能包含行人过街请求和应急情况处理。 7. **单片机发展趋势**:随着技术进步,单片机向更高性能、更多品种发展,低功耗和多功能化成为趋势。 通过这样的课程设计,学生不仅能深入理解单片机的工作原理和编程,还能掌握实际工程项目中的问题解决和系统集成能力。
2023-02-27 上传
课程设计说明书 (2011 /2012 学年第 1 学期) 课程名称 : 单片机原理课程设计 题 目 : 时 钟 专业班级 : 08级应物一班 姓 名 : 学 号: 指导教师 : 周向宁 设计周数 : 2周 设计成绩 : 年 月 日 1. 课程设计目的 1.1学习单片机的重要性 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会 的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代 电子产品性能进一步提高,产品更新换代的节奏也越来越快。单片机正朝着高性能和多 品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格 和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要 意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟 电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软 件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。 1.2课程设计的目的 (1)巩固和提高学过的基础理论和专业知识; (2)提高运用所学专业知识进行独立思考和综合分析、解决实际问题的能力; (3)培养掌握正确的思维方法和利用软件和硬件解决实际问题的基本技能; (4)增强对实际电路的认识,掌握分析处理方法,进行调试、计算等基本技能的训 练,使之具有一定程度的实际工作能力。 (5)掌握科研、资料查询的基本方法以及获取新知识的能力。 (6)促使我们学习和获取新知识,掌握自我学习的能力。 (7)通过参与实际工作,使我们了解社会和工作,具备一定的实际工作能力 (8)通过设计数字电子钟,了解电子钟的工作原理和内部构造。 1.3数字时钟的重要性 数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车 站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展 和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功 能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯 、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以 钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 数字钟已成为人们日常生活中:必不可少的必需品,广泛用于个人家庭以及车站、码 头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由 于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确、性能稳 定、携带方便等优点,它还用于计时、自动报时及自动控制等各个领域。 二、数字时钟设计 2.1、数字钟的软件设计 2.1.1、系统分析 系统的软件设计也是工具系统功能的设计。单片机软件的设计主要包括执行软件(完 成各种实质性功能)的设计和监控软件的设计。单片机的软件设计通常要考虑以下几个 方面的问题: (1)根据软件功能要求,将系统软件划分为若干个相对独立的部分,设计出合理的 总体结构,使软件开发清晰、简洁和流程合理; (2)培养良好的编程风格,如考虑结构化程序设计、实行模块化、子程序化。既便 于调试、链接,又便于移植和修改; (3)建立正确的数学模型,通过仿真提高系统的性能,并选取合适的参数; (4)绘制程序流程图; (5)合理分配系统资源; (6)为程序加入注释,提高可读性,实施软件工程; (7)注意软件的抗干扰设计,提高系统的可靠性。 2.1.2系统设计 这次的数字电子钟设计用到很多子程序,它们的流程图如下所示。 2.1.2.1主程序流程图 主程序是先开始,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可 以显示时间。 2.1.2.2按键处理流程图 按键处理是先检测秒按键是否按下,秒按键如果按下,秒就加1;如果没有按下,就 检测分按键是否按下,分按键如果按下,分就加1;如果没有按下,就检测时按键是否按 下,时按键如果按下,时就加1;如果没有按下,就把时间显示出来。 2.1.2.3定时器中断流程图 定时器中断是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟 是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到, 时单元就加1,如果没到,就显示时间。 2.1.2.4 时间显示流程图 时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然 后是分十位显示,再就是时个位计算显示,最后是时十位显示。 2.1.3系统实施(c语言版) 2.1.3.1主程序设计 main() //主函数 { TMOD "=0x01; //定时器0 10ms in 12M