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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求幫忙看看這個程序這樣寫可以嗎?

[復制鏈接]
跳轉到指定樓層
樓主
ID:230975 發表于 2017-9-4 21:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
P0驅動數碼管,按鍵1按下時,數值加1,到9停止;按鍵2按下時,在當前數值上減一,到0停止。請幫忙看看這樣寫合適嗎謝謝。
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit key1=P2^0;
sbit key2=P2^1;
uchar num;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
};
void delay(uint);
void keyscan();
void main()
  {
   P1=0xfe;
num=5;
P0=table[num];
while(1)
   {
    keyscan();
  P0=table[num];
   }

  }
void delay(uint z)
   {
     uint x,y;
  for(x=z;x>0;x--)
    for(y=110;y>0;y--);
   }
void keyscan()
   {
     if(key1==0)
  delay(10);
  if(key1==0)
    {
      
      if(num<=8)
    num++;
   while(!key1);
    }
   if(key2==0)
   delay(10);
   if(key2==0)
     {
   
   if(num>=1)
    num--;  
   while(!key2);
  }
   }
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:230975 發表于 2017-9-4 21:13 | 只看該作者
通電扣數碼管先顯示5,然后在5的基礎上加1或者減1顯示
回復

使用道具 舉報

板凳
ID:230970 發表于 2017-9-5 15:16 | 只看該作者
燒寫進單片機看看,沒看出毛病
回復

使用道具 舉報

地板
ID:230915 發表于 2017-9-5 15:34 | 只看該作者
有幾處問題哦,if語句。
回復

使用道具 舉報

5#
ID:229761 發表于 2017-9-5 15:39 | 只看該作者
你可以用仿真proteus看看,應該是可以的
回復

使用道具 舉報

6#
ID:213173 發表于 2017-9-5 16:28 | 只看該作者
if(key1==0),if(key2==0)下面少了花括號,delay起不到消抖作用。
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit key1=P2^0;
sbit key2=P2^1;
uchar num;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
};
void delay(uint);
void keyscan();
void main()
{
//        P1=0xfe;
        num=5;
        P0=table[num];
        while(1)
        {
                keyscan();
                P0=table[num];
        }
}
void delay(uint z)
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}
void keyscan()
{
        if(key1==0)
        {
                delay(10);
                if(key1==0)
                {
                        if(num<9)
                                num++;
                        while(!key1);
                }
        }
        if(key2==0)
        {
                delay(10);
                if(key2==0)
                {
                        if(num>0)
                        num--;  
                        while(!key2);
                }
        }
}
回復

使用道具 舉報

7#
ID:231231 發表于 2017-9-5 19:53 | 只看該作者
燒進單片機看看 能實現你的要求 但是有些語句格式不太規范 再改改
回復

使用道具 舉報

8#
ID:230975 發表于 2017-9-6 14:21 | 只看該作者
謝謝各位。剛開始學單片機以后還要向大家多學習
回復

使用道具 舉報

9#
ID:231404 發表于 2017-9-6 14:44 | 只看該作者
在單片機調試下程序,看下結果現象
回復

使用道具 舉報

10#
ID:231404 發表于 2017-9-6 14:46 | 只看該作者
hmgqljz111 發表于 2017-9-6 14:21
謝謝各位。剛開始學單片機以后還要向大家多學習

推薦一份資料【手把手教你學51單片機】很經典,對新手很有借鑒性,希望能夠幫到你
回復

使用道具 舉報

11#
ID:231409 發表于 2017-9-6 14:54 | 只看該作者
可以先調試一下程序,如果有問題,可以再問一下
回復

使用道具 舉報

12#
ID:230975 發表于 2019-9-28 15:42 | 只看該作者
wulin 發表于 2017-9-5 16:28
if(key1==0),if(key2==0)下面少了花括號,delay起不到消抖作用。
#include
#define uchar unsigned cha ...

謝謝謝謝謝謝
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产精品久久久久秋霞不卡 | 成年人免费在线视频 | 日本欧美国产 | 在线日韩精品视频 | 国产欧美日韩在线观看 | www.99久久.com | 成人欧美一区二区三区黑人孕妇 | 国产婷婷色综合av蜜臀av | 国产在线二区 | 日韩欧美中文字幕在线视频 | 亚洲精品高清视频在线观看 | av资源中文在线 | 91视频在线观看免费 | 久久av一区 | 天天综合网永久 | 免费看黄色视屏 | 精品国产不卡一区二区三区 | 日韩在线视频一区 | 91原创视频在线观看 | 少妇一区二区三区 | 亚洲欧美日韩中文在线 | 精品久久久久久亚洲精品 | 色综合一区二区 | 正在播放国产精品 | 午夜激情影院 | 羞羞羞视频 | 亚洲精品国产电影 | 97色在线观看免费视频 | 欧美日韩亚洲系列 | 国产探花在线观看视频 | a在线免费观看视频 | 黄色国产在线播放 | 亚洲v日韩v综合v精品v | 中文字幕乱码一区二区三区 | 网站黄色在线 | 国产精品一区二区三区在线 | 久久99精品久久久97夜夜嗨 | 国产成人免费视频 | 国产午夜亚洲精品不卡 | 国产成人在线观看免费 | 国产精品久久国产精品久久 |