找回密码
 立即注册

QQ登录

只需一步,快速开始

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

基于单片机流水线自动计数器设计,含原理图,源代码

[复制链接]
跳转到指定楼层
楼主
我的选题基于单片机流水线自动计数器,要求是自动计数,自动加一。它是由一块51单片机控制,数码管显示,以及红外光电计数,其中电阻的功能是驱动数码管。其中单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了

  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. //段码
  5. uchar code
  6. DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};
  7. uchar Count=0;
  8. //主程序
  9. void main()
  10. {
  11. P0=0x00;
  12. P2=0x00;

  13. TMOD=0x06;       //计数器 T0 方式 2
  14. TH0=TL0=256-1;    //计数值为 1
  15. ET0=1;       //允许 T0 中断
  16. EX0=1;       //允许 INT0 中断
  17. EA=1;       //允许 CPU 中断
  18. IP=0x02;    //设置优先级,T0 高于 INT0
  19. IT0=1;       //INT0 中断触发方式为下降沿触发
  20. TR0=1;      //启动 T0
  21. while(1)
  22. {
  23.                    P0=DSY_CODE[Count/10];

  24.                       P2=DSY_CODE[Count%10];
  25.                   }
  26.              }
  27. //T0 计数器中断函数
  28. void Key_Counter() interrupt 1
  29. {
  30. Count=(Count+1)%100; //因为只有两位数码管,计数控制在 100 以内(00~99)
  31. }
  32. //INT0 中断函数
  33. void Clear_Counter() interrupt 0
  34. {
  35. Count=0;
  36. }
复制代码

一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

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

使用道具 举报

沙发
ID:353831 发表于 2019-9-11 00:05 来自手机 | 只看该作者
楼主你好,程序编译通不过
回复

使用道具 举报

板凳
ID:1098933 发表于 2023-11-8 09:11 | 只看该作者
你好 你这边有设计分析吗
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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