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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機代碼不能實現前四個數碼管一亮一滅最后兩個常亮

[復制鏈接]
跳轉到指定樓層
樓主
ID:513252 發表于 2019-4-21 14:35 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
100黑幣
51單片機六位數碼管的加法和減法,0與1是數字,2是+,3是-。動態顯示。例1+2=03結..滅

zzj_led_16.zip

14.15 KB, 下載次數: 6

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:513252 發表于 2019-4-21 14:46 | 只看該作者
                        P2=TABLE[19]>>8;}}

              if(!mum2)
            {
           Delayms(10);       
            if(!mum2)
                        P3=4;
            P0=TABLE[j];
                        P2=TABLE[j]>>8;
            j=++j%16;
            while(!mum2){Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;};
                        Delayms(10);

                  P3=1;
                        if(i%16-1>-1)                                                                        //diyigeshu
                        {P0=TABLE[i%16-1];
                        P2=TABLE[i%16-1]>>8;
            Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;}
                         else        {P0=TABLE[15];
                        P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8; }
                       
                        P3=2;                                                                        //-
            P0=TABLE[17];
                        P2=TABLE[17]>>8;
                        Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;
               
                    P3=4;
                        if(j%16-1>-1)                                                                        //diergeshu
                        {P0=TABLE[j%16-1];
                        P2=TABLE[j%16-1]>>8;
            Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;}
                         else        {P0=TABLE[15];
                        P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8; }
                       
                        P3=8;                                                                //=
            P0=TABLE[18];
                        P2=TABLE[18]>>8;
                        Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;
                       
                                if(((i-1)%16-(j-1)%16)>-1)                                                                   //fuhao
                        {P3=32;
                        P0=TABLE[(i-1)%16-(j-1)%16];
                        P2=TABLE[(i-1)%16-(j-1)%16]>>8;}
                 else
                        {P3=16;
                        P0=TABLE[17];
                        P2=TABLE[17]>>8;        Delayms(400); P0=TABLE[19];
                        P2=TABLE[19]>>8;
                        P3=32;
                        P0=TABLE[(j-1)%16-(i-1)%16];
                        P2=TABLE[(j-1)%16-(i-1)%16]>>8;Delayms(300); P0=TABLE[19];
                        P2=TABLE[19]>>8;}
            }} }




}
}我的代碼不能實現前四個數碼管一亮一滅最后兩個常亮
回復

使用道具 舉報

板凳
ID:513252 發表于 2019-4-22 10:09 | 只看該作者
已經解決 現在差 讓他一直顯示 有大佬幫幫忙嗎?
#include"reg51.h"
#define uchar unsigned char
#define uint unsigned int
uint TABLE[]={0xff00,0xfff3,0x7788,0x77c0,0x7773,0x7744,0x7704,0xfff0,0x7700,0x7740,0x7730,0x7707,0xff0c,0x7783,0x770c,0x773c,0x55ff,0x77ff,0xffcc,0xffff};//0-f+-= qingkong
sbit mum1=P1^0;sbit mum2=P1^1;sbit add=P1^2;sbit sub=P1^3; sbit ab=P3^0;sbit bc=P3^1;sbit cd=P3^2;sbit de=P3^3;sbit ef=P3^4;sbit fg=P3^5;
void Delayms(unsigned int x)
{unsigned char t; while(x--)for(t=0;t<120;t++);}
void main()
{ unsigned  char i,j;
while(1)
{   if(!add)
        { start1:
          while(1)
    {
         if(!mum1)
          {
           Delayms(10);
            if(!mum1)
   P3=1;          //diyigeshu
            P0=TABLE[i];
   P2=TABLE[i]>>8;
            i=++i%16;
            while(!mum1){Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;};
   
   P3=2;         //+
            P0=TABLE[16];
   P2=TABLE[16]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
        
      P3=4;
   if(j%16-1>-1)         //diergeshu
   {P0=TABLE[j%16-1];
   P2=TABLE[j%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=8;        //=
            P0=TABLE[18];
   P2=TABLE[18]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
   
   if(((i-1)%16+(j-1)%16)<16)           //fuhao
   {P3=32;
   P0=TABLE[(i-1)%16+(j-1)%16];
   P2=TABLE[(i-1)%16+(j-1)%16]>>8;}
          else
   {P3=16;
   P0=TABLE[1];
   P2=TABLE[1]>>8; Delayms(400); P0=TABLE[19];
   P2=TABLE[19]>>8;
   P3=32;
   P0=TABLE[(i-1)%16+(j-1)%16-16];
   P2=TABLE[(i-1)%16+(j-1)%16-16]>>8;Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}}
       if(!mum2)
            {
           Delayms(10);
            if(!mum2)
   P3=4;
            P0=TABLE[j];
   P2=TABLE[j]>>8;
            j=++j%16;
            while(!mum2){Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;};
   Delayms(10);
    P3=1;
   if(i%16-1>-1)         //diyigeshu
   {P0=TABLE[i%16-1];
   P2=TABLE[i%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=2;         //+
            P0=TABLE[16];
   P2=TABLE[16]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
        
      P3=4;
   if(j%16-1>-1)         //diergeshu
   {P0=TABLE[j%16-1];
   P2=TABLE[j%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=8;        //=
            P0=TABLE[18];
   P2=TABLE[18]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
   
   if(((i-1)%16+(j-1)%16)<16)           //fuhao
   {P3=32;
   P0=TABLE[(i-1)%16+(j-1)%16];
   P2=TABLE[(i-1)%16+(j-1)%16]>>8;}
          else
   {P3=16;
   P0=TABLE[1];
   P2=TABLE[1]>>8; Delayms(400); P0=TABLE[19];
   P2=TABLE[19]>>8;
   P3=32;
   P0=TABLE[(i-1)%16+(j-1)%16-16];
   P2=TABLE[(i-1)%16+(j-1)%16-16]>>8;Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}}
     if(!sub)
    { break;goto start0; }
   

   } }
if(!sub)
        {
   start0: while(1)
          {
         if(!mum1)
          {
           Delayms(10);
            if(!mum1)
   P3=1;          //diyigeshu
            P0=TABLE[i];
   P2=TABLE[i]>>8;
            i=++i%16;
            while(!mum1){Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;};
   
   P3=2;         //-
            P0=TABLE[17];
   P2=TABLE[17]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
        
      P3=4;
   if(j%16-1>-1)         //diergeshu
   {P0=TABLE[j%16-1];
   P2=TABLE[j%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=8;        //=
            P0=TABLE[18];
   P2=TABLE[18]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
   
   if(((i-1)%16-(j-1)%16)>-1)           //fuhao
   {P3=32;
   P0=TABLE[(i-1)%16-(j-1)%16];
   P2=TABLE[(i-1)%16-(j-1)%16]>>8;}
          else
   {P3=16;
   P0=TABLE[17];
   P2=TABLE[17]>>8; Delayms(400); P0=TABLE[19];
   P2=TABLE[19]>>8;
   P3=32;
   P0=TABLE[(j-1)%16-(i-1)%16];
   P2=TABLE[(j-1)%16-(i-1)%16]>>8;Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}}
       if(!mum2)
            {
           Delayms(10);
            if(!mum2)
   P3=4;
            P0=TABLE[j];
   P2=TABLE[j]>>8;
            j=++j%16;
            while(!mum2){Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;};
   Delayms(10);
    P3=1;
   if(i%16-1>-1)         //diyigeshu
   {P0=TABLE[i%16-1];
   P2=TABLE[i%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=2;         //-
            P0=TABLE[17];
   P2=TABLE[17]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
        
      P3=4;
   if(j%16-1>-1)         //diergeshu
   {P0=TABLE[j%16-1];
   P2=TABLE[j%16-1]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
    else {P0=TABLE[15];
   P2=TABLE[15]>>8;
            Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8; }
   
   P3=8;        //=
            P0=TABLE[18];
   P2=TABLE[18]>>8;
   Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;
   
    if(((i-1)%16-(j-1)%16)>-1)           //fuhao
   {P3=32;
   P0=TABLE[(i-1)%16-(j-1)%16];
   P2=TABLE[(i-1)%16-(j-1)%16]>>8;}
          else
   {P3=16;
   P0=TABLE[17];
   P2=TABLE[17]>>8; Delayms(400); P0=TABLE[19];
   P2=TABLE[19]>>8;
   P3=32;
   P0=TABLE[(j-1)%16-(i-1)%16];
   P2=TABLE[(j-1)%16-(i-1)%16]>>8;Delayms(300); P0=TABLE[19];
   P2=TABLE[19]>>8;}
            }   if(!add)
    { break;goto start1; }      } }


}
}


回復

使用道具 舉報

地板
ID:424408 發表于 2019-4-22 11:52 | 只看該作者
控制的時候控制好位碼舍
回復

使用道具 舉報

5#
ID:434390 發表于 2019-4-24 14:20 | 只看該作者
四個位選加一個亮滅控制邏輯就可以了   比如共陰極  當前位亮就寫0,滅就寫1
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国家一级黄色片 | 中文字幕av在线 | av大片| 国产精品美女久久久久久免费 | 日韩在线视频一区二区三区 | 亚洲欧美久久 | 色网在线看 | 国产精品免费在线 | 国产精品永久久久久久久www | 中文字幕蜜臀 | 国产亚洲精品美女久久久久久久久久 | 中文字幕在线观看一区 | 精品福利av导航 | 在线成人 | 久久福利电影 | 91精品国模一区二区三区 | 婷婷久久五月天 | 成人欧美一区二区三区在线播放 | 国产欧美一区二区三区在线看 | 手机在线不卡av | 天天综合91 | 精品一区二区三区四区视频 | 久久久高清| 免费看一区二区三区 | 天天夜天天操 | 久草综合在线 | 在线免费av观看 | 国产中文字幕亚洲 | 久久久网 | 成人久久久久久久久 | 香蕉av免费| av天天爽| 国产一级免费视频 | 麻豆91精品91久久久 | 免费色网址 | 亚洲日本三级 | 综合久久综合久久 | 久久综合久久自在自线精品自 | 一区二区三区四区视频 | 免费久久久 | 午夜精品一区二区三区在线观看 |