《led点阵模仿电梯楼层数字流动显示 实训报告》由会员分享,可在线阅读,更多相关《led点阵模仿电梯楼层数字流动显示 实训报告(9页珍藏版)》请在金锄头文库上搜索。
1、 江西科技师范学院综合设计实训 IIILED 点阵模仿电梯楼层数字流动显示姓 名: 黄彬 学 号: 20081782 班 级: 08 电信一班 实训地点: 理工楼 指导教师: 宗文军 通信与电子学院编制2011 年 6 月 10 日一. 实训课题:点阵屏模仿电梯楼层数字流动显示二实训目的:提高学生实践动手能力,通过实用性强的项目训练,让学生能通过实训加深理论知识的掌握,同时了解项目产品开发的一般过程。设计一个点阵屏模仿电梯楼层数字流动显示,步骤:1、设计五层电梯,由五个按钮控制(S1、S2、S3、S4、S5) ;2、单片机开机上电,电梯初始化在第一层,并在 LED 点阵上显示“1”;3、当按下
2、 S5 时,在 LED 点阵上从下到上依次流动显示“12345” ;4、当按下 S1 时,在 LED 点阵上从下到下依次流动显示“54321” 。三实训要求:1、根据选题查找相关资料;2、确定方案后,画出电路原理图;3、根据实训的要求,编写好软件程序(利用 Keil 软件开发)4、根据电路原理图,在 Proteus6.0 软件里画好仿真原理图,并将Keil 软件开发的可执行文件加载到 Proteus 软件的仿真芯片中(即单片机芯片中) ;5、在仿真没有问题的前提下,依据方案,确定选用器件;6、安装、烧录、调试;7、完成实训报告;8、实训结束,要求每组交实训作品一件,程序源代码一份,实训报告一份
3、。四实训原理:设计好相关程序后,在 keil 软件中编译得到 HEX文件,再利用 proteus 软件将编译得到 HEX 格式文件加载到单片机芯片中,实现仿真电路,得到仿真电路结果,然后再把 HEX 文件加载到实物单片机芯片中,得到实物显示效果。五实训仪器:电脑,keil 软件,proteus 软件,焊接相关工具。六所需元件:8X8 点阵一个,AT89C51 单片机芯片一块,八个三极管,十千欧、一千欧、两百欧电阻各十个,排阻一个,导线若干,电容三个,晶振一个,按钮开关六个。6.1、8X8 点阵的实际外观图如下:一共 64 个发光点构成,上下两排引脚,每排 8 个,一共 16 个点阵侧面有文字的
4、那面对准自己,8*8 点阵实际的引脚(图一)的不是一排阳极,一排阴极,(就像键盘一样不是 abcd 按顺序排的)所以焊接有点麻烦,88LED 点阵引脚图如下:8X8 点阵的显示原理:8X8 点阵共由 64 个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置 1 电平,某一列置 0 电平,则相应的二极管就亮;如要将第一个点点亮,则 1 脚接高电平 a 脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第 1 脚要接高电平,而(a、b、c、d、e、f、 g、h )这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第 a 脚接低电平,而(1、2、3、4 、5、
5、6、7、8 )接高电平,那么第一列就会点亮.6.2、 AT89C51 简介AT89C51 引 脚 说 明 : VCC: 供 电 电 压 。 GND: 接 地 。 P0 口 : P0 口 为 一 个 8 位 漏 级 开 路 双 向 I/O 口 , 每 脚 可 吸 收8TTL 门 电 流 。 当 P1 口 的 管 脚 第 一 次 写 1 时 , 被 定 义 为 高 阻 输 入 。P0 能 够 用 于 外 部 程 序 数 据 存 储 器 , 它 可 以 被 定 义 为 数 据 /地 址 的第 八 位 。 在 FIASH 编 程 时 , P0 口 作 为 原 码 输 入 口 , 当 FIASH 进行
6、校 验 时 , P0 输 出 原 码 , 此 时 P0 外 部 必 须 被 拉 高 。P1 口 : P1 口 是 一 个 内 部 提 供 上 拉 电 阻 的 8 位 双 向 I/O 口 ,P1 口 缓 冲 器 能 接 收 输 出 4TTL 门 电 流 。 P1 口 管 脚 写 入 1 后 , 被 内部 上 拉 为 高 , 可 用 作 输 入 , P1 口 被 外 部 下 拉 为 低 电 平 时 , 将 输 出电 流 , 这 是 由 于 内 部 上 拉 的 缘 故 。 在 FLASH 编 程 和 校 验 时 , P1口 作 为 第 八 位 地 址 接 收 。 P2 口 : P2 口 为 一 个
7、内 部 上 拉 电 阻 的 8 位 双 向 I/O 口 , P2 口缓 冲 器 可 接 收 , 输 出 4 个 TTL 门 电 流 , 当 P2 口 被 写 “1”时 , 其管 脚 被 内 部 上 拉 电 阻 拉 高 , 且 作 为 输 入 。 并 因 此 作 为 输 入 时 , P2口 的 管 脚 被 外 部 拉 低 , 将 输 出 电 流 。 这 是 由 于 内 部 上 拉 的 缘 故 。P2 口 当 用 于 外 部 程 序 存 储 器 或 16 位 地 址 外 部 数 据 存 储 器 进 行 存取 时 , P2 口 输 出 地 址 的 高 八 位 。 在 给 出 地 址 “1”时 , 它
8、 利 用 内部 上 拉 优 势 , 当 对 外 部 八 位 地 址 数 据 存 储 器 进 行 读 写 时 , P2 口输 出 其 特 殊 功 能 寄 存 器 的 内 容 。 P2 口 在 FLASH 编 程 和 校 验 时 接 收高 八 位 地 址 信 号 和 控 制 信 号 。P3 口 : P3 口 管 脚 是 8 个 带 内 部 上 拉 电 阻 的 双 向 I/O 口 , 可接 收 输 出 4 个 TTL 门 电 流 。 当 P3 口 写 入 “1”后 , 它 们 被 内 部 上拉 为 高 电 平 , 并 用 作 输 入 。 作 为 输 入 , 由 于 外 部 下 拉 为 低 电 平 ,
9、P3 口 将 输 出 电 流 ( ILL) 这 是 由 于 上 拉 的 缘 故 。P3 口 也 可 作 为 AT89C51 的 一 些 特 殊 功 能 口 , 如 下 表 所 示 : 口 管 脚 备 选 功 能P3.0 RXD( 串 行 输 入 口 ) P3.1 TXD( 串 行 输 出 口 )P3.2 /INT0( 外 部 中 断 0) P3.3 /INT1( 外 部 中 断 1)P3.4 T0( 记 时 器 0 外 部 输 入 ) P3.5 T1( 记 时 器 1 外 部 输 入 )P3.6 /WR( 外 部 数 据 存 储 器 写 选 通 ) P3.7 /RD( 外 部 数 据 存 储器
10、 读 选 通 )P3 口 同 时 为 闪 烁 编 程 和 编 程 校 验 接 收 一 些 控 制 信 号 。RST: 复 位 输 入 。 当 振 荡 器 复 位 器 件 时 , 要 保 持 RST 脚 两 个机 器 周 期 的 高 电 平 时 间 。ALE/PROG: 当 访 问 外 部 存 储 器 时 , 地 址 锁 存 允 许 的 输 出 电 平用 于 锁 存 地 址 的 地 位 字 节 。 在 FLASH 编 程 期 间 , 此 引 脚 用 于 输 入编 程 脉 冲 。 在 平 时 , ALE 端 以 不 变 的 频 率 周 期 输 出 正 脉 冲 信 号 ,此 频 率 为 振 荡 器
11、频 率 的 1/6。 因 此 它 可 用 作 对 外 部 输 出 的 脉 冲 或用 于 定 时 目 的 。 然 而 要 注 意 的 是 : 每 当 用 作 外 部 数 据 存 储 器 时 ,将 跳 过 一 个 ALE 脉 冲 。 如 想 禁 止 ALE 的 输 出 可 在 SFR8EH 地 址 上置 0。 此 时 , ALE 只 有 在 执 行 MOVX, MOVC 指 令 是 ALE 才 起 作 用 。另 外 , 该 引 脚 被 略 微 拉 高 。 如 果 微 处 理 器 在 外 部 执 行 状 态 ALE 禁止 , 置 位 无 效 。 /PSEN: 外 部 程 序 存 储 器 的 选 通
12、信 号 。 在 由 外 部 程 序 存 储 器 取指 期 间 , 每 个 机 器 周 期 两 次 /PSEN 有 效 。 但 在 访 问 外 部 数 据 存 储器 时 , 这 两 次 有 效 的 /PSEN 信 号 将 不 出 现 。/EA/VPP: 当 /EA 保 持 低 电 平 时 , 则 在 此 期 间 外 部 程 序 存 储 器( 0000H-FFFFH) , 不 管 是 否 有 内 部 程 序 存 储 器 。 注 意 加 密 方 式1 时 , /EA 将 内 部 锁 定 为 RESET; 当 /EA 端 保 持 高 电 平 时 , 此 间 内部 程 序 存 储 器 。 在 FLASH
13、 编 程 期 间 , 此 引 脚 也 用 于 施 加 12V 编 程电 源 ( VPP) 。 XTAL1: 反 向 振 荡 放 大 器 的 输 入 及 内 部 时 钟 工 作 电路 的 输 入 。 XTAL2: 来 自 反 向 振 荡 器 的 输 出 。实训原理图如下:实训 c 语言程序: #include #include #define uchar unsigned char#define uint unsigned intuchar code Table_OF_Digits=0x00,0x3C,0x42,0x42,0x42,0x42,0x3C,0x00,/0 0xF7,0xF3,0xF7
14、,0xF7,0xF7,0xC1,0xFF,0xFF,/1 0xE7,0xDB,0xDF,0xEF,0xF7,0x83,0xFF,0xFF,/2 0xE7,0xDB,0xDF,0xE7,0xDF,0xDB,0xE7,0xFF,/3 0xEF,0xE7,0xEB,0x81,0xEF,0xEF,0xFF,0xFF,/4 0x83,0xFB,0xFB,0x83,0xBF,0xBF,0x83,0xFF,/5 ;uint r=0;uchar offset=0;uchar Current_Level=1,Dest_Level=1,x=0,t=0;void main()P2=0x80;Current_Leve
15、l=1;Dest_Level=1;TMOD=0X01;TH0=-4000/256;TL0=-4000%256;TR0=1;IE=0X82;while(1);void LED_Screen_Display() interrupt 1uchar i;if(P1!=0xFF&Current_Level=Dest_Level)if(P1=0xFE) Dest_Level=5;if(P1=0xFD) Dest_Level=4;if(P1=0xFB) Dest_Level=3;if(P1=0xF7) Dest_Level=2;if(P1=0xEF) Dest_Level=1;TH0=-4000/256;T
16、L0=-4000%256;P2=_crol_(P2,1);i=Current_Level*8+r+offset;P0=Table_OF_Digitsi;if(Current_LevelDest_Level) if(+r=8) r=0;if(+x=4) x=0;if(-offset=-8)offset=0;Current_Level-; elseif(+r=8)r=0; 七心得体会大三的第二学期末的设计马上就要结束了,整体来说时间并不十分紧张,我们有了充分的时间去学习课程设计所需要的其他软件的应用,总体来说我们还是收获颇丰,我们这组做的是利用单片机设计电梯楼层显示移动,平时一般的流程图都是老师给了参考的流程,现在这一切都是自己操作,第一天刚开始的时候有点手足无措的感觉