收藏 分享(赏)

单片机交通灯实训报告完整版.doc

上传人:精品资料 文档编号:10908579 上传时间:2020-01-20 格式:DOC 页数:19 大小:452KB
下载 相关 举报
单片机交通灯实训报告完整版.doc_第1页
第1页 / 共19页
单片机交通灯实训报告完整版.doc_第2页
第2页 / 共19页
单片机交通灯实训报告完整版.doc_第3页
第3页 / 共19页
单片机交通灯实训报告完整版.doc_第4页
第4页 / 共19页
单片机交通灯实训报告完整版.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、 课 程 设 计课题名称 智能交通信号灯 姓 名 学 号 班 级 专 业 所 在 系 指导教师 完成日期 2智能交通信号灯摘要本设计是在熟练掌握单片机及其仿真系统使用方法基础上,综合应用单片机原理、微机原理等课程方面的知识,设计一个采用 AT89C52单片机控制的交通灯控制电路。该设计结合实际情况给出了一种简单低成本城市交通灯控制系统的硬件及软件设计方案、各个路口交通灯的状态循环显示,并对程序流程图进行详细讲解分析。交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明

2、显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。根据给出的要求设计交通灯东西、南北两干道交于一个十字路口各干道有一组红、黄、绿三色的指示灯指挥车辆和行人安全通行。红灯亮禁止通行绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换且黄灯亮的时间为东西、南北两干道的公共停车时间。关键词:电子线路 ;AT89C52 ; LED 交通灯。3目录一、绪论 .4二、总体设计方案 .41.设计思路 .42.设计目的 .

3、53.设计任务和内容 .5(1)设计任务 .54.电源提供方案 .55.复位方案 .56.输入方案 .5三、显示界面方案 .6四、交通管理的方案论证 .6五、芯片简介 .61AT89S52 单片机简介 62.主要性能 .63.功能特性描述 .6六、设计原理分析 .61.交通灯显示时序的理论分析与计算 .62.交通灯显示时间的理论分析与计算 .6七、LED 数码管显示模块 61.静态显示方式 .6八、复位电路 .6九、晶振电路 .6十、总结与谢词 .6十一、参考文献 .6十二、附录 .6附录 1:程序清单 6附录 2:电路设计图 64一、绪论当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常

4、见和最有效的手段。但这一技术在 19 世纪就已出现了。1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止” ,绿色表示“注意” 。1869 年 1月 2 日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市 5 号大街的一座高塔上。红灯亮表示“停止” ,绿灯亮表示“通行” 。1918 年

5、,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968 年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地

6、正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。二、总体设计方案1.设计思路以单片机为核心器件,对系统进行控制,外加辅助电路对系统参数进行必要的设置和显示。交通信号灯的显示时间可以固定,也可用键盘重新设置,时间控制和 LED 显示均由单片机进行控制。交通信号灯控制系统主要可以分为定时、红绿灯转换、倒计时显示等三个控制模块,单片机作为系统的控制单元,在系统中的作用主要有以下几个方面:(1)利用单片机中的定时器循环出一秒时间,然后将它累计

7、到处于活动状态的寄存器中。寄存器里的计数是递减的,一秒时间到则减 1,直到计数为 0,说明定时时间到。(2)定时时间到后,单片机将对寄存器地址进行判断,不同的寄存器对应不同的红绿灯显示。(3)每次一秒时间到,寄存器自减 1 后,还要将寄存器中的值,也就是剩余的秒数反映5到 LED 显示器上,构成倒计时显示。(4)扫描键盘上的数值,并将它反映到特定的寄存器里,根据寄存器的存储值对定时程序进行重新置数操作2.设计目的(1)加强对单片机和汇编语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。(2)用单片机模拟实现具体应用,使个人设计能够真正使用。(3)把理

8、论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。(4)提高利用已学知识分析和解决问题的能力。(5)提高实践动手能力。3.设计任务和内容(1)设计任务单片机采用用 AT89C52 芯片,使用发光二极管(红,黄,绿)代表各个路口的交通灯,用 8 段数码管对转换时间进行倒时(东西路口 25 秒,南北路口 20 秒,黄灯时间 5 秒) 。(2)设计内容a 设计并绘制硬件电路图b 制作 PCB 并焊接好元器件c 编写程序并将调试好的程序固化到单片机中4.电源提供方案为使模块稳定工作,须有可靠电源,采用单片机控制模块提供电源。此方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。5.复位方案复位

9、方式有两种:按键复位与软件复位。由考虑到程序的简洁,避免冗长,本设计采用按键复位,在芯片的复位端口外接复位电路,通过按键对单片机输入一个高电平脉冲,达到复位的目的。6.输入方案方案一:6采用 89S52 扩展 I/O 口及键盘,显示等。该方案的优点是:使用灵活可编程,并且有 RAM,及计数器。若用该方案,可提供较多 I/O 口,但操作起来稍显复杂。方案二: 直接在 IO 口线上接上按键开关。因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用 2 个按键,分别是 K1、K2。由于该系统对于交通灯及数码管的控制,只用单片机本身的 I/O 口就可实现,且本身的计数器及 RAM 已经够用,

10、故选择方案二三、显示界面方案该系统要求完成倒计时、状态灯等功能。基于上述原因,我们考虑了三种方案:方案一:完全采用数码管显示。这种方案只显示有限的符号和数码字符,无法胜任题目要求。方案二:完全采用点阵式 LED 显示。这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。方案三:采用数码管与点阵 LED (点阵式和 8 段式 LED)相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与 LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。权衡利弊,第三种方案可互补一二方案

11、的优缺,我们决定采用方案三以实现系统的显示功能。设计方框图整个设计以 AT89S52 单片机为核心,由数码管显示,LED 数码管显示,复位电路组成。硬件模块入图 1-1。AT89S52 单片机数码管显示 LED 数码管显示晶振电路 复位电路图 17四、交通管理的方案论证东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。指示灯燃亮的方案如表 2。图 2说明: (1) 当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯

12、,此道车辆通过,行人禁止通行。时间为 25 秒。(2) 黄灯 5 秒,警示车辆和行人红、绿灯的状态即将切换。 (3) 当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为 25 秒。 (4) 这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。五、芯片简介1AT89S52 单片机简介其引 DIP 封装的脚图如下:25S 5S 25S 5S 东西道红灯亮红灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮8图 32.主要性能 与 MCS-51 单 片 机 产 品 兼 容 、 8K 字 节 在 系 统 可 编 程 Flash 存 储 器 、

13、1000 次 擦写 周 期 、 全 静 态 操 作 : 0Hz 33Hz 、 三 级 加 密 程 序 存 储 器 、 32 个 可 编 程 I/O 口线 、 三 个 16 位 定 时 器 /计 数 器 八 个 中 断 源 、 全 双 工 UART 串 行 通 道 、 低 功 耗 空 闲和 掉 电 模 式 、 掉 电 后 中 断 可 唤 醒 、 看 门 狗 定 时 器 、 双 数 据 指 针 、 掉 电 标 识 符 。3.功能特性描述 At89C52 是 一 种 低 功 耗 、 高 性 能 CMOS8 位 微 控 制 器 , 具 有 8K 在 系 统 可 编 程Flash 存 储 器 。 使 用

14、 Atmel 公 司 高 密 度 非 易 失 性 存 储 器 技 术 制 造 , 与 工 业 80C51 产 品 指 令 和 引 脚 完 全 兼 容 。 片 上 Flash 允 许 程 序 存 储 器 在 系 统 可 编 程 , 亦 适 于 常规 编 程 器 。 在 单 芯 片 上 , 拥 有 灵 巧 的 8 位 CPU 和 在 系 统 可 编 程 Flash, 使 得AT89C52 为 众 多 嵌 入 式 控 制 应 用 系 统 提 供 高 灵 活 、 超 有 效 的 解 决 方 案 。 AT89C52 具有 以 下 标 准 功 能 : 8k 字 节 Flash, 256 字 节 RAM,

15、32 位 I/O 口 线 , 看 门 狗 定 时 器 ,2 个 数 据 指 针 , 三 个 16 位 定 时 器 /计 数 器 , 一 个 6 向 量 2 级 中 断 结 构 , 全 双 工 串 行口 , 片 内 晶 振 及 时 钟 电 路 。 另 外 , AT89C52 可 降 至 0Hz 静 态 逻 辑 操 作 , 支 持 2 种软 件 可 选 择 节 电 模 式 。 空 闲 模 式 下 , CPU 停 止 工 作 , 允 许 RAM、 定 时 器 /计 数 器 、 串口 、 中 断 继 续 工 作 。 掉 电 保 护 方 式 下 , RAM 内 容 被 保 存 , 振 荡 器 被 冻 结

16、 , 单 片 机9一 切 工 作 停 止 , 直 到 下 一 个 中 断 或 硬 件 复 位 为 止 。 8 位 微 控 制 器 8K 字 节 在 系 统 可编 程 Flash AT89C52 P0 口 : P0 口 是 一 个 8 位 漏 极 开 路 的 双 向 I/O 口 。 作 为 输 出 口 ,每 位 能 驱 动 8 个 TTL 逻 辑 电 平 。 对 P0 端 口 写 “1”时 , 引 脚 用 作 高 阻 抗 输 入 。 当 访 问 外 部 程 序 和 数 据 存 储 器 时 , P0 口 也 被 作 为 低 8 位 地 址 /数 据 复 用 。 在 这 种模 式 下 , P0 具

17、有 内 部 上 拉 电 阻 。 在 flash 编 程 时 , P0 口 也 用 来 接 收 指 令 字 节 ; 在 程 序 校 验 时 , 输 出 指 令 字 节 。 程序 校 验 时 , 需 要 外 部 上 拉 电 阻 。 P1 口 : P1 口 是 一 个 具 有 内 部 上 拉 电 阻 的 8 位 双 向 I/O 口 , p1 输 出 缓 冲 器 能驱 动 4 个 TTL 逻 辑 电 平 。 对 P1 端 口 写 “1”时 , 内 部 上 拉 电 阻 把 端 口 拉 高 , 此 时 可以 作 为 输 入 口 使 用 。 作 为 输 入 使 用 时 , 被 外 部 拉 低 的 引 脚 由

18、 于 内 部 电 阻 的 原 因 , 将 输出 电 流 ( IIL) 。 此 外 , P1.0 和 P1.2 分 别 作 定 时 器 /计 数 器 2 的 外 部 计 数 输 入( P1.0/T2) 和 时 器 /计 数 器 2 的 触 发 输 入 ( P1.1/T2EX) , 具 体 如 下 表 所 示 。 在 flash 编 程 和 校 验 时 , P1 口 接 收 低 8 位 地 址 字 节 。 引 脚 号 第 二 功 能 P1.0 T2( 定 时 器 /计 数 器 T2 的 外 部 计 数 输 入 ) , 时 钟 输 出 P1.1 T2EX( 定 时 器 /计 数 器 T2 的 捕 捉

19、 /重 载 触 发 信 号 和 方 向 控 制 ) P1.5 MOSI( 在 系 统 编 程 用 ) P1.6 MISO( 在 系 统 编 程 用 ) P1.7 SCK( 在 系 统 编 程 用 ) P2 口 : P2 口 是 一 个 具 有 内 部 上 拉 电 阻 的 8 位 双 向 I/O 口 , P2 输 出 缓 冲 器 能驱 动 4 个 TTL 逻 辑 电 平 。 对 P2 端 口 写 “1”时 , 内 部 上 拉 电 阻 把 端 口 拉 高 , 此 时 可以 作 为 输 入 口 使 用 。 作 为 输 入 使 用 时 , 被 外 部 拉 低 的 引 脚 由 于 内 部 电 阻 的 原

20、 因 , 将 输出 电 流 ( IIL) 。 在 访 问 外 部 程 序 存 储 器 或 用 16 位 地 址 读 取 外 部 数 据 存 储 器 ( 例 如 执 行 MOVX DPTR) 时 , P2 口 送 出 高 八 位 地 址 。 在 这 种 应 用 中 , P2 口 使 用 很 强 的 内 部 上 拉 发 送1。 在 使 用 8 位 地 址 ( 如 MOVX RI) 访 问 外 部 数 据 存 储 器 时 , P2 口 输 出 P2 锁 存 器的 内 容 。 在 flash 编 程 和 校 验 时 , P2 口 也 接 收 高 8 位 地 址 字 节 和 一 些 控 制 信 号 。

21、P3 口 : P3 口 是 一 个 具 有 内 部 上 拉 电 阻 的 8 位 双 向 I/O 口 , p2 输 出 缓 冲 器 能 驱动 4 个 TTL 逻 辑 电 平 。 对 P3 端 口 写 “1”时 , 内 部 上 拉 电 阻 把 端 口 拉 高 , 此 时 可 以作 为 输 入 口 使 用 。 作 为 输 入 使 用 时 , 被 外 部 拉 低 的 引 脚 由 于 内 部 电 阻 的 原 因 , 将 输 出电 流 ( IIL) 。 P3 口 亦 作 为 AT89C52 特 殊 功 能 ( 第 二 功 能 ) 使 用 , 如 下 表 所 示 。 在 flash 编 程 和 校 验 时

22、, P3 口 也 接 收 一 些 控 制 信 号 。 端 口 引 脚 第 二 功 能P3.0 RXD(串 行 输 入 口 )P3.1 TXD(串 行 输 出 口 )P3.2 INTO(外 中 断 0)10P3.3 INT1(外 中 断 1)P3.4 TO(定 时 /计 数 器 0)P3.5 T1(定 时 /计 数 器 1)P3.6 WR(外 部 数 据 存 储 器 写 选 通 )P3.7 RD(外 部 数 据 存 储 器 读 选 通 )此 外 , P3 口 还 接 收 一 些 用 于 FLASH 闪 存 编 程 和 程 序 校 验 的 控 制 信 号 。RST复 位 输 入 。 当 振 荡 器

23、 工 作 时 , RST 引 脚 出 现 两 个 机 器 周 期 以 上 高 电 平 将是 单 片 机 复 位 。ALE/PROG当 访 问 外 部 程 存 储 器 或 数 据 存 储 器 时 , ALE( 地 址 锁 存 允 许 ) 输 出脉 冲 用 于 锁 存 地 址 的 低 8 位 字 节 。 一 般 情 况 下 , ALE 仍 以 时 钟 振 荡 频 率 的 1/6 输 出固 定 的 脉 冲 信 号 , 因 此 它 可 对 外 输 出 时 钟 或 用 于 定 时 目 的 。 要 注 意 的 是 : 每 当 访 问 外部 数 据 存 储 器 时 将 跳 过 一 个 ALE 脉 冲 。对

24、FLASH 存 储 器 编 程 期 间 , 该 引 脚 还 用 于 输 入 编 程 脉 冲 ( PROG) 。如 有 必 要 , 可 通 过 对 特 殊 功 能 寄 存 器 ( SFR) 区 中 的 8EH 单 元 的 D0 位 置 位 , 可禁 止 ALE 操 作 。 该 位 置 位 后 , 只 有 一 条 MOVX 和 MOVC 指 令 才 能 将 ALE 激 活 。 此 外 ,该 引 脚 会 被 微 弱 拉 高 , 单 片 机 执 行 外 部 程 序 时 , 应 设 置 ALE 禁 止 位 无 效 。PSEN程 序 储 存 允 许 ( PSEN) 输 出 是 外 部 程 序 存 储 器

25、的 读 选 通 信 号 , 当AT89C52 由 外 部 程 序 存 储 器 取 指 令 ( 或 数 据 ) 时 , 每 个 机 器 周 期 两 次 PSEN 有 效 , 即输 出 两 个 脉 冲 , 在 此 期 间 , 当 访 问 外 部 数 据 存 储 器 , 将 跳 过 两 次 PSEN 信 号 。EA/VPP外 部 访 问 允 许 , 欲 使 CPU 仅 访 问 外 部 程 序 存 储 器 ( 地 址 为 0000H-FFFFH) , EA 端 必 须 保 持 低 电 平 ( 接 地 ) 。 需 注 意 的 是 : 如 果 加 密 位 LB1 被 编 程 ,复 位 时 内 部 会 锁

26、存 EA 端 状 态 。如 EA 端 为 高 电 平 ( 接 Vcc 端 ) , CPU 则 执 行 内 部 程 序 存 储 器 的 指 令 。FLASH 存 储 器 编 程 时 , 该 引 脚 加 上 +12V 的 编 程 允 许 电 源 Vpp, 当 然 这 必 须 是 该 器件 是 使 用 12V 编 程 电 压 Vpp。六、设计原理分析1.交通灯显示时序的理论分析与计算对于一个交通路口来说,能在最短的时间内达到最大的车流量,就算是达到了最佳的性能,我们称在单位时间内多能达到的最大车流为车流量,用公式:车流量= 车流 / 时间 来表示。先设定一些标号如图 5 所示。11图 5说明:此图为

27、直方图,上边为北路口灯,右边为东路口灯,下边为南路口灯,左边为西路口灯。图 22 所示为一种红绿灯规则的状态图,分别设定为 S1、S2、S3、S4,交通灯以这四的状态为一个周期,循环执行(见图 6) 。图 6请注意图 21b 和图 21d,它们在一个时间段中四个方向都可以通车,这种状态能在一定的时间内达到较大的车流量,效率特别高。依据上述的车辆行驶的状态图,可以列出各个路口灯的逻辑表,由于相向的灯的状态图12是一样的,所以只需写出相邻路口的灯的逻辑表;根据图 23 可以看出,相邻路口的灯它们的状态在相位上相差 180。因此最终只需写出一组 S1、S2、S3、S4 的逻辑状态表。如表 7 所示。

28、表 7表 8表中的“”代表是红灯亮(也代表逻辑上的 0) , “”是代表绿灯亮(也代表逻辑上的1) ,依上表,就可以向相应的端口送逻辑值。2.交通灯显示时间的理论分析与计算东西和南北方向的放行时间的长短是依据路口的各个方向平时的车流量来设定,并且S1、S2、S3、S4 各个状态保持的时间之有严格的对应关系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S313我们可以依据上述的标准来改变车辆的放行时间。按照一般的规则,一个十字路口可分为主干道和次干道,主干道的放行时间大于次干道的放行时间。七、LED 数码管显示模块1.静态显示方式静态显示方式是指当显示器显示某一字符

29、时,发光二极管的位选始终被选中。在这种显示方式下,每一个 LED 数码管显示器都需要一个 8 位的输出口进行控制。由于单片机本身提供的 I/O 口有限,实际使用中,通常通过扩展 I/O 口的形式解决输出口数量不足的问题。 静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU 才去执行显示更新子程序,这样既节约了 CPU 的时间,又提高了 CPU 的工作效率。其不足之处是占用硬件资源较多,每个LED 数码管需要独占 8 条输出线。随着显示器位数的增加,需要的 I/O 口线也将增加。 2.动态显示方式动态显示方式是指一位一位地轮

30、流点亮每位显示器(称为扫描) ,即每个数码管的位选被轮流选中,多个数码管公用一组段选,段选数据仅对位选选中的数码管有效。对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。通过调整电流和时间参数,可以既保证亮度,又保证显示。若显示器的位数不大于 8 位,则显示器的公共端只需一个 8 位 I/O 口进行动态扫描(称为扫描口) ,控制每位显示器所显示的字形也需一个 8 位口(称为段码输出) 。14程序初始化状态 1(S1)状态 2 (S2)状态 3(S3)状态 4(S4)八、复位电路复位方式有多种,本设计采用按键复位。接线图如图程序复位电路在

31、设定的定时时间内,89C52 必须在 RST 引脚产生一个由高到低的电平变化,以清内部定时器. 15九、晶振电路晶振电路原理图 9图 9 晶振模块原理图选取原则:传统做法,但能够实现所需,即最简单也最是实用。电容选取 30pF,晶振为 12MHz。十、总结与谢词这次十字路口交通灯的设计原理之前根本没有接触过,也就是说在短暂的一周中我们不但要学习一个新的东西,而且还要融会贯通用它来设计十字路口交通灯系统。还好前面的几次实习已经锻炼了我们快速学习的能力,对于一个完全陌生的东西也没有啥畏难情绪了,而这一次的实习就相当于一次考察,考察我们查找资料快速学习团结协作的能力。 不得不说我和搭档的合作是相当愉

32、快的,虽然我俩的成绩都不咋样,但对于实习我们是积极地,曹老师一讲完实习任务,我们就去图书馆借来了书,学习交通灯技术,了解交通灯的原理。当然这些的学习与我们的实习进程是同步的,我们分几个模块来设计,针对每个模块有针对性的快速学习,然后用 Keil 软件编程。这已经是最后一次实习了,每结束一个实习,就越发觉得自己实在是有太多知识不会的,即便是在实习过程中掌握了的知识自己也不是很有底,当时目的性太强,学的太专,也许这就是快速学习的后遗症吧。但实习本身重点就不是用来系统学习知识的,而是用来锻炼能力的,锻炼查找资料快速学习融会贯通以及动手的能力,只要能有这方面的收获实习的目的就已经达到了,自己还是有不少

33、收获的! 致谢 感谢学校为我们提供的实习机会 感谢曹老师的辛苦教诲与指导 感谢同学的支持与同组者的配合16十一、参考文献1.单片机原理及应用 张毅刚 高等教育出版社2.单片机控制实习与专题制作蔡朝洋.3.单片机实验教程 彭冬明、韦友春 北京理工大学出版社 十二、附录附录 1:程序清单#include“reg52.h“ /宏包含 MCS-52 系列单片机的头文件 #define uchar unsigned char #define uint unsigned int uchar code DM=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,

34、0xff;/数码管段码数组 uchar code WM=0x7f,0xbf;/位码数组 uchar code XW=0xde,25,0xdb,5,0xed,15,0xf9,5; /相位数组void delay (int); /延时函数声明uchar n50ms,GL; / 定义变量 延时为 50 毫秒 绿灯显示时间uchar SX2=10,10; /显示数组 /*主程序*/void intital(); main() intital(); while(1) / 循环变量 uchar i,j; for(;GL=0 /清零GL-=1; / 绿灯时间减 1 倒计时17 for(i=0;i2;i+)/

35、送显示 P3=WMi; / 位码显示P2=DMSXi; / 断码显示delay(5); /延时 5 个周期 void timer0isr() interrupt 1 / 中断服务程序入口 定时器 0 中断 1 TH0=(65536-50000)/256; / 取 8 位的商数TL0=(65536-50000)%256; / 取 8 位的余数n50ms+; / 50 毫秒自增 1/*中断方式*/void intital() TMOD|=0X01; /设置为内部定时器、软件启动、Moder1TH0=(65536-50000)/256; / T0(Moder0) 计数高 8 位TL0=(65536-50000)%256; / T0(Moder0) 计数低 8 位ET0=1; /开启定时器EA=1; /启动中断TR0=1; /启动定时器 /*延时子程*/ void delay(uint x) uint i,j; / 声明整数组变量 i,jfor(i=0;ix;i+) / 计数 x 次,延时 X*1msfor(j=0;j120;j+); /计数 120 次,延时 1ms /延时程序结束18附录 2:电路设计图19

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报