项目二 数码管显示(C语言).ppt
上传人:sy****28 上传时间:2024-09-13 格式:PPT 页数:39 大小:1.4MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

项目二 数码管显示(C语言).ppt

项目二数码管显示(C语言).ppt

预览

免费试读已结束,剩余 29 页请下载文档后查看

16 金币

下载此文档

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

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

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

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

SECSECSECSECSECSECSECSECSECSECSEC项目二数码管显示Page13项目目标:项目任务:项目分析:产品的设计与仿真:一、硬件设计#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintucharcodeDSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0x82,0xf8,0x80,0x90,0xff};voidDelayMS(uinti){uintj;for(;i>0;i--){for(j=0;j<333;j++);}}voidmain(){uchari=0;P0=0x00;while(1){P0=~DSY_CODE[i];i=(i+1)%10;/*显示0-9*/DelayMS(200);}}学习的内容:数码管数码管结构段码与字形的关系+5V段码与字形的关系静态显示方式LED显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点:是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。图四位静态LED显示器电路动态显示图八位LED动态显示器电路动态扫描原理P00P07注:动态扫描对每个数码管的点亮周期有一个严格的要求,不能过长也不能过短。由于发光体从通入电流开始到完全点亮需要一定的时间,叫做响应时间。这个时间对于不同的发光材质是不同的,通常情况下为几百微秒。所以数码管的刷新周期(所有数码管被轮流点亮的时间)不要过短,这也与数码管的数量有关。一般动态扫描1秒中应该至少刷新25次。项目的扩展:8只数码管滚动显示单个数字:#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintucharcodeDSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};voidDelayMS(uinti){uintj;for(;i>0;i--){for(j=0;j<333;j++);}}voidmain(){uchari,k=0x80;while(1){for(i=8;i>0;i--){P2=0xff;k=_crol_(k,1);P0=DSY_CODE[8-i];P2=k;DelayMS(200);}}}课后作业1、静态显示0-F(1#3#5#数码管显示)2、动态显示A-F3、用定时器0实现每隔1s使4位数码管循环显示“3210”,“7654”,“BA98”,“FEDC”。4、使数码管循环显示秒值,即每隔1s显示从1一直加到60。5、采用共阳极两位数码管设计两位数的动态显示电路,其功能为每隔1秒两位8421BCD减1计数,从99开始,减到0时,再过1秒,又从99开始,周而复始循环计时。晶振频率12MHz。