找回密码
 注册
关于网站域名变更的通知
查看: 125|回复: 1
打印 上一主题 下一主题

51单片机打印机纸张计数器程序

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-6-27 14:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
打印机纸张计数器  测试完美, j1 N1 b' c' u  ^" ]& l

+ b: |8 I6 }: w/ i# K- I7 {' @4 A, H4 \' n

( S, B1 ^" _( v- w6 n( ^/ O单片机源程序如下:
7 M" `! F' D& |! q) q9 c7 B8 P9 D8 q
  • #include <reg52.h>
  • #include <intrins.h>
  • #define uchar unsigned char
  • #define uint unsigned int
  • //uchar dd[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};        //共阳极数码管断码表
  • uchar dd[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xb6};
  • sbit k1=P3^7; //按键接口定义 加
  • sbit k2=P3^1;  //           减
  • sbit k3=P3^6;  //           复位
  • sbit led1=P2^0;
  • sbit led2=P2^1;
  • sbit duan1=P2^6;
  • sbit wei1=P2^7;
  • sbit duan2=P2^5;
  • sbit wei2=P2^4;
  • uchar shu=0;         //计数变量
  • void delay1ms()                //@11.0592MHz
  • {
  •         unsigned char i, j;
  •         _nop_();
  •         _nop_();
  •         _nop_();
  •         i = 11;
  •         j = 190;
  •         do
  •         {
  •                 while (--j);
  •         } while (--i);
  • }
  • void display_led1()           //显示函数
  • {
  •         if(shu>=10)
  •                  {
  •         wei1=1;
  •         P0=0XFE;
  •         wei1=0;
  •         duan1=1;
  • //  P0=dd[shu/100];   //百位
  •                         P0=dd[shu/10%10];   //十位
  •         duan1=0;
  •   delay1ms();           //?
  • }
  •   wei1=1;
  •         P0=0XFD;
  •         wei1=0;
  •         duan1=1;
  •         P0=dd[shu%10];   //十位
  •         duan1=0;
  •         delay1ms();           //消影
  • //        wei1=1;
  • //        P0=0XFB;
  • //        wei1=0;
  • //        duan1=1;
  • //  P0=dd[11];   //个位
  • //        duan1=0;
  • //  delay1ms();
  • }
  • void display_led2()           //显示函数
  • {
  •         if(shu>=20)
  •                  {
  •         wei2=1;
  •         P1=0XFE;
  •         wei2=0;
  •         duan2=1;
  •   P1=dd[shu*5/100];   //百位
  •         duan2=0;
  •   delay1ms();
  •                  }
  •                  if(shu>=1)
  •                  {
  •   wei2=1;
  •         P1=0XFD;
  •         wei2=0;
  •         duan2=1;
  •         P1=dd[shu*5/10%10]+0X80;   //十位
  •         led1=0;
  •         led2=0;
  •         duan2=0;
  •         delay1ms();           //消影
  •                  }
  •         wei2=1;
  •         P1=0XFB;
  •         wei2=0;
  •         duan2=1;
  •   P1=dd[shu*5%10];   //个位
  •         duan2=0;
  •   delay1ms();
  • }
  • void key()                  //按键操作函数
  • {
  •    if(k1==0)           //判断
  •    {
  •            delay1ms();          //消抖
  •           if(k1==0)                 //再判断
  •             {
  •            shu++;if(shu==200){shu=0;}  //计数加,到100回0
  •              }
  •                         while(k1==0);
  •       }
  • //   if(k2==0)
  • //   {
  • //            delay1ms();
  • //          if(k2==0)
  • //          {
  • //                   shu--;if(shu==-1){shu=199;}        //计数减 零以下 回99
  • //          }        while(k2==0);
  • //   }
  •    if(k3==0)
  •    {
  •             delay1ms();
  •           if(k3==0)
  •           {
  •             shu=0;                 //变量清零
  •             led1=1;
  •             led2=1;
  •           }
  •                 while(k3==0);
  •    }
  • }
  • void main()
  • {
  •   while(1)
  •    {
  •                  display_led2()        ;
  •                  display_led1();
  •             key();
  •    }
  • }

  • 2 T7 k4 ^" z# ^: s% ?

+ d% T7 X% `1 x9 p0 n
! k6 y9 w$ s4 g

该用户从未签到

2#
发表于 2022-6-27 15:06 | 只看该作者
学习学习,||ヽ(* ̄▽ ̄*)ノミ|Ю
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-29 06:06 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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