数码管显示实验报告.doc
上传人:王子****青蛙 上传时间:2024-09-14 格式:DOC 页数:5 大小:79KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

数码管显示实验报告.doc

数码管显示实验报告.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

三、数码管显示实验一、实验目得及要求理解8段数码管得基本原理,理解8段数码管得显示与编程方法,理解4连排共阴极8段数码管J3641AS通过DP1668与CPU得接线图。理解8段数码管原理,运行与理解各子程序,编制一个4连排8段数码管程序,CPU得P2口接左、右两个DP1668得控制引脚,各DP1668接LED得数据线hgfedcba,在4连排8段数码管显示编程得日期。熟悉结构后,自行编程左边四个数码管,显示分钟与秒,当计时达到一个小时,就重新从00:00开始计时。另外,指定计时得开始值。二、实验原理(图)8段数码管一般由8个发光二极管(Llight-emittingdiode,LED)组成,每一个位段就就是一个发光二极管。一个8段数码管分别由a、b、c、d、e、f、g位段,外加上一个小数点得位段h(或记为dp)组成。根据公共端所接电平得高低,可分为共阳极与共阴极两种。三、实验设备(环境):1、电脑一台2、STC-ISP(V6、85I)烧写应用程序3、Keil应用程序四、实验内容(算法、程序、步骤与方法):#include<STC15F2K60S2、h>//此文件中定义了STC15系列得一些特殊功能寄存器#include"intrins、h"#defineucharunsignedchar#defineuintunsignedintsbitTM1668R_DIO_H=P4^4;ﻩﻩ//左边数码管宏定义sbitTM1668R_CLK_H=P2^0;sbitTM1668R_STB_H=P2^1;sbitTM1668L_DIO_H=P2^2;//左边数码管宏定义sbitTM1668L_CLK_H=P2^3;sbitTM1668L_STB_H=P2^4;sbitLIGHT=P0^1;ucharToday_data[8];uinttemp,kk;constuchartable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voidSend_Data(uchardat,ucharn);voidDIS_data_1668(uchardata1,uchardata2,uchardata3,uchardata4,ucharn);/********************************************************************************函数名:Send_Data*函数功能ﻩﻩ:TM1668发送一字节数据函数*输入:无*输出:无******************************************************************************/voidSend_Data(uchardat,ucharn){uchari;for(i=0;i〈8;i++)//1个字节{if(n==0)TM1668R_CLK_H=0;ﻩelseﻩTM1668L_CLK_H=0;ﻩif(dat&(1<<i))ﻩ{ﻩif(n==0)ﻩTM1668R_DIO_H=1;ﻩﻩelseﻩTM1668L_DIO_H=1;}elseﻩ{ﻩif(n==0)ﻩTM1668R_DIO_H=0;ﻩelseﻩTM1668L_DIO_H=0;}ﻩ_nop_();ﻩ_nop_();ﻩ_nop_();ﻩ_nop_();if(n==0)ﻩTM1668R_CLK_H=1;ﻩelseﻩTM1668L_CLK_H=1;}}voidDIS_data_1668(uchardata1,uchardata2,uchardata3,uchardata4,ucharn){ﻩif(n==0)ﻩTM1668R_STB_H=0;ﻩelseﻩTM1668L_STB_H=0;ﻩSend_Data(0x00,n);ﻩ//设置显示模式4位13段ﻩif(n==0)TM1668R_STB_H=1;elseTM1668L_STB_H=1;ﻩ_nop_();_nop_();ﻩ_nop_();ﻩ_nop_();if(n==0)ﻩTM1668R_STB_H=0;elseﻩTM1668L_STB_H=0;ﻩSend_Data(0x40,n);//写数据自动地址加一if(n==0)ﻩTM1668R_STB_H=1;ﻩelseﻩﻩTM1668L_STB_H=1;_nop_();_nop_();_nop