欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    基于单片机的LED数码管实验设计程序(附电路原理图).doc

    • 资源ID:4148480       资源大小:128KB        全文页数:9页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于单片机的LED数码管实验设计程序(附电路原理图).doc

    基于单片机的LED数码管实验设计程序1/用LED数码静态显示数字.#include<reg51.h> / 包含51单片机寄存器定义的头文件void main()P3=0x7f; /P3.8引脚输出低电平,数码显示器接通电源准备点亮P0=0x92; /让P0口输出数字"5"的段码92H附上: 1.数码管共阴极: 0x3F,/*0*/ 0x06,/*1*/ 0x5B,/*2*/ 0x4F,/*3*/ 0x66,/*4*/ 0x6D,/*5*/ 0x7D,/*6*/ 0x07,/*7*/ 0x7F,/*8*/ 0x6F,/*9*/ 2.数码管共阳极: 0xC0,/*0*/ 0xF9,/*1*/ 0xA4,/*2*/ 0xB0,/*3*/ 0x99,/*4*/ 0x92,/*5*/ 0x82,/*6*/ 0xF8,/*7*/ 0x80,/*8*/ 0x90,/*9*/2./用LED数码显示器循环显示数字09.#include<reg52.h>void delay( int x ) /延时 int i,j; for(i=0;i<x;i+) for(j=0;j<120;j+); int code c = /数码管显示09的段码表. 0x3F,/*0*/ 0x06,/*1*/ 0x5B,/*2*/ 0x4F,/*3*/ 0x66,/*4*/ 0x6D,/*5*/ 0x7D,/*6*/ 0x07,/*7*/ 0x7F,/*8*/ 0x6F,/*9*/ ;int a=0;void main() while(1) P3=0x7F; /P3.8引脚输出低电平,数码显示器DS0接通电源工作 P0=ca; /让P0口输出数字的段码 delay(1000); a=(a+1)%10;3./用数码管慢速动态扫描显示数字"1234"#include<reg51.h> void delay(void) /延时函数,延时一段时间unsigned char i,j;for(i=0;i<250;i+) for(j=0;j<250;j+);void main( )/主函数 while(1) /无限循环P3=0x7f; /P3.8引脚输出低电平,L8点亮P0=0x06; /数字1的段码delay();P3=0xbf ; /P3.7引脚输出低电平,L7点亮P0=0x5B; /数字2的段码delay(); P3=0xdf; /P3.6引脚输出低电平,L6点亮P0=0x4F; /数字3的段码delay();P3=0xef; /P3.5引脚输出低电平,L5点亮P0=0x66; /数字4的段码delay();P3=0xff; 4./用LED数码显示器伪静态显示数字1234#include<reg51.h> void delay(void) /延时函数,延时约0.6毫秒unsigned char i;for(i=0;i<200;i+) ;void main(void)while(1) /无限循环P3=0x7f; /P3.8引脚输出低电平,L8点亮P0=0x06; /数字1的段码delay();P3=0xbf ; /P3.7引脚输出低电平,L7点亮P0=0x5b; /数字2的段码delay(); P3=0xdf; /P3.6引脚输出低电平,L6点亮P0=0x4f; /数字3的段码delay();P3=0xef; /P3.5引脚输出低电平,L5点亮P0=0x66; /数字4的段码delay();P3=0xff; 5./数码秒表设计#include<reg51.h> unsigned char code Tab10= 0x3F,/*0*/ 0x06,/*1*/ 0x5B,/*2*/ 0x4F,/*3*/ 0x66,/*4*/ 0x6D,/*5*/ 0x7D,/*6*/ 0x07,/*7*/ 0x7F,/*8*/ 0x6F,/*9*/; /共阴数码管显示09的段码表unsigned char int_time; /记录中断次数unsigned char second; /储存秒/*函数功能:快速动态扫描延时,延时约0.6毫秒*/void delay(void)unsigned char i;for(i=0;i<200;i+);/*函数功能:显示秒入口参数:k出口参数:无*/void DisplaySecond(unsigned char k)P3=0xbf ; /P3.7引脚输出低电平 P0=Tabk/10; /显示十位delay();P3=0x7f; /P3.8引脚输出低电平P0=Tabk%10; /显示个位delay();P3=0xff; /关闭所有数码管void main(void) /主函数TMOD=0x01; /使用定时器T0TH0=(65536-46083)/256; /将定时器计时时间设定为46083×1.085微秒/=50000微秒=50毫秒TL0=(65536-46083)%256;EA=1; /开启总中断ET0=1; /定时器T0中断允许TR0=1; /启动定时器T0开始运行int_time=0; /中断次数初始化second=0; /秒初始化 while(1)DisplaySecond(second); /调用秒的显示子程序 /*/函数功能:定时器T0的中断服务程序/*void interserve(void ) interrupt 1 using 1 TR0=0; /关闭定时器T0int_time +; /每来一次中断,中断次数int_time自加1 if(int_time=20) /够20次中断,即1秒钟进行一次检测结果采样int_time=0; /中断次数清0second+; /秒加1if(second=60)second =0; /秒等于60就返回0 TH0=(65536-46083)/256; /重新给计数器T0赋初值TL0=(65536-46083)%256;TR0=1; /启动定时器T0 6./LED时分秒数码时钟设计#include<reg51.h> / 包含51单片机寄存器定义的头文件unsigned char Tab = 0x3F,/*0*/ 0x06,/*1*/ 0x5B,/*2*/ 0x4F,/*3*/ 0x66,/*4*/ 0x6D,/*5*/ 0x7D,/*6*/ 0x07,/*7*/ 0x7F,/*8*/ 0x6F,/*9*/;unsigned char int_time ; /中断次数计数变量unsigned char second; /秒计数变量unsigned char minute; /分钟计数变量unsigned char hour; /小时计数变量void delay(void) /延时函数,延时约0.6msunsigned char j;for(j=0;j<200;j+);/*函数功能:显示秒的子程序入口参数:s*/void DisplaySecond(unsigned char s)P3=0xbf ; /P3.7引脚输出低电平 P0=Tabs/10;/显示十位delay();P3=0x7f; /P3.8引脚输出低电平P0=Tabs%10;/显示个位delay();P3=0xff; /关闭所有数码管/*函数功能:显示分钟的子程序入口参数:m*/void DisplayMinute(unsigned char m)P3=0xf7; P0=Tabm/10;/显示个位delay();P3=0xef;P0=Tabm%10;delay();P3=0xdf; P0=0x40; /分隔符“-”的段码delay();P3=0xff; /关闭所有数码管/*函数功能:显示小时的子程序入口参数:h*/void DisplayHour(unsigned char h)P3=0xfd;P0=Tabh/10; /显示十位 delay();P3=0xfc;P0=Tabh%10; /显示个位delay(); P3=0xfb;P0=0x40;delay();P3=0xff;/关闭所有数码管/*函数功能:主函数*/void main(void)TMOD=0x01; /使用定时器T0 EA=1; /开中断总允许ET0=1; /允许T0中断TH0=(65536-46083)/256; /定时器高八位赋初值TL0=(65536-46083)%256; /定时器低八位赋初值TR0=1;int_time=0; /中断计数变量初始化second=0; /秒计数变量初始化minute=0; /分钟计数变量初始化hour=0; /小时计数变量初始化while(1) DisplaySecond(second); /调用秒显示子程序delay();DisplayMinute(minute); /调用分钟显示子程序delay();DisplayHour(hour); delay(); /*函数功能:定时器T0的中断服务子程序*/void interserve(void ) interrupt 1 using 1 /using Time0int_time+;if(int_time=20)int_time=0; /中断计数变量清0second+; /秒计数变量加1if(second=60)second=0; /如果秒计满60,将秒计数变量清0minute+; /分钟计数变量加1if(minute=60)minute=0; /如果分钟计满60,将分钟计数变量清0hour+; /小时计数变量加1if(hour=24)hour=0; /如果小时计满24,将小时计数变量清0TH0=(65536-46083)/256; /定时器重新赋初值TL0=(65536-46083)%256;

    注意事项

    本文(基于单片机的LED数码管实验设计程序(附电路原理图).doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开