找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 14425|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机定时器秒表实验报告与反思

[复制链接]
跳转到指定楼层
楼主
ID:321791 发表于 2018-5-4 08:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
运用51单片机的中断,LED显示,实现一个微型的秒表。


定时器秒表
实验报告


原理图



程序流程图




实验反思

  经过本次的上机,我对51单片机工作模式的转换有了更加深刻的认识,能从根本上知道是怎么一回事了,本次的实验三,在机房操作时,对定时器的工作模式有点错误的认识,还有对一个按键控制多种操作自己也是遇到了很大困难,好在经过自己认真看书,以及积极向老师和同学请教,问题才能够迎刃而解,总之,这节课再次把书本上的知识搬到了实践中,收获挺大的。


源程序
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. unsigned char code table []={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  5. unsigned char count=0,b;
  6. sbit key=P3^7;
  7. uchar ds_time = 0;
  8. uchar i;
  9. uchar t=0;
  10. void delay(uint i)
  11. {
  12. char j;
  13. for(i; i > 0; i--)
  14. for(j = 200; j > 0; j--);
  15. }
  16. void main()
  17. {
  18. TMOD=0x01;
  19. TH0=0x3c;
  20. TL0=0xb0;
  21. ET0=1;
  22. TR0=1;
  23. EA=1;
  24. key=1;
  25. while(1){
  26.               if(key==0)
  27.                             {while(!key)
  28.                                           {b++;
  29.                                                         delay(1000);
  30.                                                         if(b>100)
  31.                                                         {b=0;
  32.                                                                       count=0;
  33.                                                         }
  34.                                           }
  35.                                           delay(100);
  36.                                           TR0=~TR0;
  37.                                           }
  38.               if(ds_time==1){
  39.                             ds_time=0;
  40.                             P0=table[count/10];
  41.                             P2=table[count%10];
  42.                             count++;
  43.               }}
  44.             
  45. }
  46. timer0() interrupt 1{
  47.               t++;
  48.               if(t==20){t=0;ds_time=1;              }
  49.               TH0=0x3c;TL0=0xb0;
  50. }
复制代码

完整的Word格式文档51黑下载地址:
定时器秒表.docx (367.56 KB, 下载次数: 35)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:437990 发表于 2018-12-20 21:01 | 只看该作者
这......校友啊
回复

使用道具 举报

板凳
ID:437990 发表于 2018-12-20 21:17 | 只看该作者
学长可以帮忙解释一下这个程序嘛......
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表