第1页 苏州大学实验报告 院 、系 年级专业 姓名 学 号 课程名称 成绩 指导教师 同组实 验 者 实 验 日期 实验名称: 数码管 LED 实验 一.实验目的 理解8 段数码管的基本原理,理解8 段数码管的显示和编程方法,理解4 连排共阴极8段数码管LG5641AH 与MCU 的接线图。 二.实验内容 理解8 段数码管原理,运行与理解各子程序,编制一个 4 连排8 段数码管程序,MCU 的PTA7-PTA4 接各 LED 的位选线(自左到右),PTB7-PTB0 接LED 的数据线h g fedcba,在 4 连排8 段数码管显示MCU 复位后的开始到现在的运行时间。由于只有四个数码管,所以只显示MCU 运行到目前为止的分钟和秒,当计时达到一个小时,就重新从 00:00 开始计时。另外,也可以通过 PC 方的串口通信程序,指定计时的开始值。 三.实验过程 (一)原理图 (二)接线图 图8-2 数码管外形 a g d f e c b h 图8-1 数码管 (a)共阴极 GND a b c d e f g dp (b) 共阳极 Vcc a b c d e f g dp 第2页 (三)基本原理 8 段数码管一般由8 个发光二极管(Llight-emitting diode,LED)组成,每一个位段就是一个发光二极管。一个8 段数码管分别由a、b、c、d、e、f、g 位段,外加上一个小数点的位段h(或记为 dp)组成。根据公共端所接电平的高低,可分为共阳极和共阴极两种。有时数码管不需要小数点,只有 7 个位段,称 7 段数码管。共阴极8 段数码管的信号端高电平有效,只要在各个位段上加上相应的信号即可使相应的位段发光,比如:要使 a 段发光,则在a 段加上高电平即可。共阳极的 8 段数码管则相反,在相应的位段加上低电平即可使该位段发光。 四.编程 (一)流程图 图8-3 MCU 与 4 连排 8 段数码管的连接 a g d f e c b h a g d f e c b h a g d f e c b h a g d f e c b h a b f CS0 CS1 CS2 c d e g h CS3 1 2 3 4 5 6 7 8 9 10 11 12 PTC3 PTB6 PTB2 PTB7 PTB3 PTB4 1K 1K 1K 1K PTB1 PTC2 PTC1 PTB5 PTB0 PTC0 第3页 (二)所用寄存器名称及其各个位 程序中没有使用与LED 显示相关的控制和状态寄存器,仅仅使用了通用I/O 口A 口和B 口。 (三)主要代码段 1.汇编方式: 数码管LED 显示的主程序部分代码 …… MainInit:: //复位后程序从此开始执行 //系统初始化 SEI //关中断 ...