文档详情

数码管实验报告 - 实验报告 - 书业网.doc

发布:2016-08-22约字共54页下载文档
文本预览下载声明
数码管实验报告 - 实验报告 - 书业网 篇一:实验八 数码管LED实验报告 苏州大学实验报告 院、系 年级专业 姓名 学号课程名称 成绩指导教师同组实验者实验日期 实验名称: 数码管LED实验 一.实验目的 理解8段数码管的基本原理,理解8段数码管的显示和编程方法,理解4连排共阴极8段数码管LG5641AH与MCU的接线图。 二.实验内容 理解8段数码管原理,运行与理解各子程序,编制一个4连排8段数码管程序,MCU的排8段数码管显示MCU复位后的开始到现在的运行时间。由于只有四个数码管,所以只显示MCU运行到目前为止的分钟和秒,当计时达到一个小时,就重新从00:00开始计时。另外,也可以通过PC方的串口通信程序,指定计时的开始值。三.实验过程 (一)原理图 图8-2数码管外形 dp a b c e f g dp 图8-1 数码管 (二)接线图 图8-3 MCU与4连排8段数码管的连接 第1页 (三)基本原理 8段数码管一般由8个发光二极管(Llight-emitting diode,LED)组成,每一个位段就是一个发光二极管。一个8段数码管分别由a、b、c、d、e、f、g位段,外加上一个小数点的位段h(或记为dp)组成。根据公共端所接电平的高低,可分为共阳极和共阴极两种。有时数码管不需要小数点,只有7个位段,称7段数码管。共阴极8段数码管的信号端高电平有效,只要在各个位段上加上相应的信号即可使相应的位段发光,比如:要使a段发光,则在发光。 四.编程 (一)流程图 图8-4 数码管LED显示流程图(及其中断子程序) (二)所用寄存器名称及其各个位 程序中没有使用与LED显示相关的控制和状态寄存器,仅仅使用了通用I/O口A口和B口。 (三)主要代码段 1 第2页 第3页 2.C 第4页 第5页 篇二:数码管实验报告 单片机实验报告 一、实验名称 数码管动态扫描显实验五) 二、实验目的 (1)掌握数码管显示数字的原理。 (2)通过不同的编程实现灵活运用数码管。 三、实验原理 数码管由7个发光二极管组成8字形构成的,加上小数点就是8个,分别把它命名为A,B,C,D,E,F,G,H。在共阳接法中,0(低电平)亮,1(高电平)灭。 原理图中把所有数码管的8个笔划段A-H同名端连在一起,而每一个显示器的公共机COM是各自独立受I\O线控制。CPU向字段输出口送出字型码时,所有显示器接收到的字型码相同。由8个PNP的三极管来控制这8位哪一位工作。在单片机里,首先显示一个数,然后关掉,然后在显示第二个数,又关掉,那么将看到连续的而数字显示,轮流点亮撒哦i案过程中,每位显示器的点亮时间是极为短暂的,由于人的视觉暂留和发光二级管的余光效应,是的给人的印象是一组稳定的显示数据,不会有闪烁感。 四、相关原理图 五、实验内容 数码管显 c程序: #include lt;reg51.hgt; #include lt;intrins.hgt; unsigned char data dis_digit; unsigned char code dis_code[11]={ 0x28, 0x7E, 0xA2, 0x62, 0x74, 0x61, 0x21, 0x7A, 0x20, 0x60,0xff};//0,1,2,3,4,5,6,7,8,9,关显示,数码管码表 unsigned char data dis_buf[8];// 显示缓冲区 unsigned char data dis_index; char code SST516[3] _at_ 0x003b; void main() { P0 = 0xff; P2 = 0xff; TMOD = 0x01; TH0 = 0xFC; TL0 = 0x17; IE = 0x82; dis_buf[0] = dis_code[0x1]; dis_buf[1] = dis_code[0x2]; dis_buf[2] = dis_code[0x3]; dis_buf[3] = dis_code[0x4]; dis_buf[4] = dis_code[0x5]; dis_buf[5] = dis_code[0x6]; dis_buf[6] = dis_code[0x7]; dis_buf[7] = dis_code[0x8]; dis_digit = 0xfe; dis_index = 0; TR0 = 1; while(1);} void timer0() interrupt 1 // 定时器0中断服务程序,
显示全部
相似文档