久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3044|回復: 5
打印 上一主題 下一主題
收起左側

關于51單片機的按鍵計數如何弄成百位計數?

[復制鏈接]
跳轉到指定樓層
樓主
ID:843725 發表于 2021-4-20 19:37 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位大佬這個程序我想能弄成百位計數,試了各種方法都不行,謝各位大佬能來指點
單片機源程序
#include<reg52.h>
sbit t1=P3^3;
sbit t2=P3^4;
sbit t3=P3^5;
int a=000;
unsigned charled[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//數碼管斷碼顯示0-9
void delay(int i)//延遲函數
{
       int j,x;
       for(x=i;x>0;x--)
       for(j=11;j>0;j--);
}
void anjian() //按鍵程序
{
       if(t1==0)
        {
               delay(5);
               if(t1==0)
                      {
                             while(!t1);
                             a++;
                             if(a>99)
                                    a=1;
       }
   }
       if(t2==0)
        {
               delay(5);
               if(t2==0)
                      {
                             while(!t2);
                             a=a-1;
                             if(a<0)
                                    a=0;
       }
   }
       if(t3==0)
        {
               delay(5);
               if(t3==0)
                      {
                             while(!t3);        
                                    a=0;
   }
}
}
void look(int k)
{
     int l=k/10;
          P2=0xfe;  P0=0x88;   delay(50);P2=0xff;//第一位數碼管顯示A
          P2=0xfd;        P0=0x88;   delay(50);P2=0xff;//第二位數碼管顯示A
          P2=0xfb;  P0=led[l]; delay(50); P2=0xff;//第三位顯示十位
          P2=0xf7;        P0=led[k%10];  delay(50); P2=0xff;//第四位顯示個位
}main()
{
        while(1)   
        {
               anjian();//調用按鍵函數
               look(a);//調用顯示函數,把a放入并顯示
   }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:894154 發表于 2021-4-21 14:13 | 只看該作者
請教下 何為百位計數?
回復

使用道具 舉報

板凳
ID:905171 發表于 2021-4-21 16:21 | 只看該作者
試了各種辦法都不行,說明你多少有些理解,既然有理解怎么會看不出來這么明顯的問題,還多次嘗試。
回復

使用道具 舉報

地板
ID:843725 發表于 2021-4-21 16:41 | 只看該作者
真皮沙發 發表于 2021-4-21 16:21
試了各種辦法都不行,說明你多少有些理解,既然有理解怎么會看不出來這么明顯的問題,還多次嘗試。

大佬,我是真的不知道,我加了一些程序但是不知道為什么十位數以后會出現亂碼,實在想不到了,發帖才問的,大佬誤會了
回復

使用道具 舉報

5#
ID:213173 發表于 2021-4-21 19:31 | 只看該作者
  1. #include<reg52.h>
  2. sbit t1=P3^3;
  3. sbit t2=P3^4;
  4. sbit t3=P3^5;
  5. int  a;
  6. unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
  7. //數碼管斷碼顯示0-9
  8. void delay(int i)//延遲函數
  9. {
  10.         int j,x;
  11.         for(x=i;x>0;x--)
  12.                 for(j=11;j>0;j--);
  13. }

  14. void anjian() //按鍵程序
  15. {
  16.         if(t1==0)
  17.         {
  18.                 delay(5);
  19.                 if(t1==0)
  20.                 {
  21.                         while(!t1);
  22.                         a++;
  23.                         if(a>99)
  24.                                 a=0;
  25.                 }
  26.         }
  27.         if(t2==0)
  28.         {
  29.                 delay(5);
  30.                 if(t2==0)
  31.                 {
  32.                         while(!t2);
  33.                         a--;
  34.                         if(a<0)
  35.                                 a=99;
  36.                 }
  37.         }
  38.         if(t3==0)
  39.         {
  40.                 delay(5);
  41.                 if(t3==0)
  42.                 {
  43.                         while(!t3);        
  44.                         a=0;
  45.                 }
  46.         }
  47. }
  48. void look(int k)
  49. {
  50. //        int l=k/10;
  51.         P2=0xfe;  P0=led[k/1000%10];delay(50);P2=0xff;//第一位顯示千位
  52.         P2=0xfd;  P0=led[k/100%10]; delay(50);P2=0xff;//第二位顯示百位
  53.         P2=0xfb;  P0=led[k/10%10];  delay(50);P2=0xff;//第三位顯示十位
  54.         P2=0xf7;  P0=led[k%10];     delay(50);P2=0xff;//第四位顯示個位
  55. }
  56. void main()
  57. {
  58.         while(1)   
  59.         {
  60.                 anjian();//調用按鍵函數
  61.                 look(a*100);//調用顯示函數,把a放入并顯示
  62.         }
  63. }
復制代碼

評分

參與人數 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:843725 發表于 2021-4-23 18:41 | 只看該作者

謝謝大佬,我看了這個有點思路了,感謝
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 福利国产 | 麻豆国产一区二区三区四区 | 一区二区中文 | 日韩免费毛片 | 免费国产视频 | 天天干天天干 | 久草在线影| 亚洲国产视频一区二区 | 欧美国产亚洲一区二区 | 亚州精品天堂中文字幕 | 91精品无人区卡一卡二卡三 | 亚洲精品一区二区三区 | 欧美极品一区二区 | 欧美成人精品一区二区男人看 | 免费的av网站 | 精品欧美一区二区三区久久久 | 天天操网| 亚洲黄色一级 | 精品一区二区三区在线观看国产 | 一区二区三区久久久 | 亚洲自拍偷拍av | 精品国产欧美一区二区 | 国产一区精品在线 | 色天天综合 | 国产清纯白嫩初高生视频在线观看 | 国产区在线视频 | 可以看黄的视频 | 日韩欧美中文字幕在线观看 | 亚洲精品一二三区 | 午夜精品三区 | 国产日韩视频在线 | 毛片一区二区三区 | 久久免费看| 中文字幕一区二区三区精彩视频 | 四虎成人av | 国产一二三区在线 | 日本a视频| 永久网站| 人操人免费视频 | 午夜成人在线视频 | av免费网站在线观看 |