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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

關于74hc595多片級聯的問題,請大神指教

查看數: 17545 | 評論數: 18 | 收藏 1
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2018-9-18 17:31

正文摘要:

請大神指教怎么會出現這種問題

回復

ID:508257 發表于 2020-4-3 09:43

有沒有動態顯示的
ID:508257 發表于 2020-4-3 09:42

有沒有動態顯示的啊
ID:163140 發表于 2019-6-11 17:36
zl2168 發表于 2018-9-21 10:58
給你幾個595應用案例,自己對照琢磨查錯吧!

74LS595為串行移位寄存器,功能表如表3-21所示,引腳圖如圖 ...

兄弟,沒有程序。。。。。。怎么參考
ID:247342 發表于 2018-9-28 08:16
謝謝大家
ID:135253 發表于 2018-9-21 17:53

#include <reg51.h>
#include <intrins.h>

#define uint unsigned int
#define uchar unsigned char

sbit SH=P2^0;
sbit DS=P2^1;
sbit ST=P2^2;

uchar tab[6][8]={
        {0x00,0x18,0x24,0x24,0x24,0x24,0x18,0x00},
        {0x00,0x10,0x18,0x10,0x10,0x10,0x38,0x00},
        {0x00,0x18,0x24,0x20,0x10,0x08,0x3C,0x00},
        {0x00,0x18,0x24,0x20,0x10,0x20,0x24,0x18},
        {0x00,0x10,0x18,0x14,0x3C,0x10,0x10,0x00},
        {0x00,0x38,0x08,0x18,0x20,0x20,0x18,0x00}
};

void delay(uchar i)
{
        uchar j;
        for(j=100;j>0;j--)
        {
                for(;i>0;i--)
                ;
        }
}

void main()
{
        uchar n,i,j,k,t;
        //SH=0;
        while(1)
        {
                // n=0x00;
                n=0;
                for (i=0;i<8;i++)
                {
                        ST=0;
                        P0=i;        

                        // for(j=0;j<8;j++)
                        {
                                for(k=0;k<5;k++)
                                {
                                        t=tab[k][n];
                                        for(j=0;j<8;j++)
                                        {
                                                SH=0;
                                                _nop_();
                                                if(t&0x80)
                                                        DS=1;
                                                else
                                                        DS=0;
                                                SH=1;
                                                t<<=1;
                                                _nop_();
                                        }
                                        //n++         ;
                                }
                        }        
                        ST=1;
                        delay(10);
                        n++;
                        if(n==8)
                        n=0;
                }                 
        }
}

1.png (5.49 KB, 下載次數: 51)

1.png
ID:135253 發表于 2018-9-21 17:49
會飛的大象 發表于 2018-9-21 10:22
現在情況是顯示兩個‘5’兩個交錯了一行,stcp好多 資料里都是并在一起的,

最后加上for(n==8)n=0;效果如圖

1.png (20.36 KB, 下載次數: 52)

1.png
ID:388197 發表于 2018-9-21 13:00
zl2168 發表于 2018-9-21 10:43
錯!不要瞎指導。

DS SHCP接一起,Q7'懸空,用STCP當選通也是可以的,只要以SHCP位時鐘,在DS上發一個8位的數據,用STCP當選通,可以指定哪片595更新,而沒被選通的則保持,這樣靈活性更高,當然缺點是IO口占多點.
ID:111634 發表于 2018-9-21 10:58
本帖最后由 zl2168 于 2018-9-21 15:30 編輯

給你幾個595應用案例,自己對照琢磨查錯吧!

74LS595為串行移位寄存器,功能表如表3-21所示,引腳圖如圖3-46所示。DS為串行輸入端,QS為串行輸出端,Q0~Q7為并行輸出端,CLK移位脈沖輸入端,CLR為并行輸出清0端。
74HC595與74HC164功能相仿,區別是595串入并出分二步操作,第一步在CLK信號有效條件下移入595片內緩沖寄存器,第二步由595 RCK端(#12)輸入一個觸發正脈沖,片內緩沖寄存器中的數據進入輸出寄存器。而74HC164是直接串入輸出寄存器,串入中間過程有可能在并行輸出端產生誤動作。
另外,74HC595有禁止輸出(高阻態)控制端OE,OE=0時,輸出熄滅。若用一個引腳控制它,可以方便地產生閃爍效果。
實例44  74HC595串入并出控制8/16循環燈
實例44 74HC595串行輸出控制8-16循環燈.rar (72.58 KB, 下載次數: 153)

實例56 74LS595串行擴展3LED數碼管靜態顯示
實例56 74LS595串行擴展3位LED靜態顯示.rar (39.7 KB, 下載次數: 96)

實例77  74HC595+165擴展8×8鍵盤
實例77 74LS595 165擴展8×8鍵盤.rar (65.99 KB, 下載次數: 34)

Proteus仿真一下,確認有效。以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1內有常用的單片機應用100案例,用于仿真實驗操作,電路與程序真實可靠可信可行。書中電路和程序設計有詳細說明,程序語句條條有注解。
ID:111634 發表于 2018-9-21 10:43
cjm82 發表于 2018-9-20 20:48
stcp引腳不能串一起,需要單獨分開

錯!不要瞎指導。
ID:247342 發表于 2018-9-21 10:22
現在情況是顯示兩個‘5’兩個交錯了一行,stcp好多 資料里都是并在一起的,
ID:388197 發表于 2018-9-20 20:48
stcp引腳不能串一起,需要單獨分開
ID:96072 發表于 2018-9-20 17:18
這個很簡單的。。。。
ID:155507 發表于 2018-9-19 18:14
  1. for(k=0;k<5;k++)
  2.                              {
  3.                                    t=tab[5][n];
  4.                                    for(j=0;j<8;j++)
  5.                                    {
復制代碼

應該是這樣
  1. for(k=0;k<5;k++)
  2.                              {
  3.                                    t=tab[k][n];  // 改成這樣
  4.                                    for(j=0;j<8;j++)
  5.                                    {
復制代碼

評分

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

查看全部評分

ID:396960 發表于 2018-9-19 09:15
嗯,得看看原理圖和代碼才好找問題,樓主再仔細調調。

評分

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

查看全部評分

ID:247342 發表于 2018-9-19 08:15
#include <reg51.h>
#include <intrins.h>

#define uint unsigned int
#define uchar unsigned char

sbit SH=P2^0;
sbit DS=P2^1;
sbit ST=P2^2;

uchar tab[6][8]={{0x00,0x18,0x24,0x24,0x24,0x24,0x18,0x00},
               {0x00,0x10,0x18,0x10,0x10,0x10,0x38,0x00},
               {0x00,0x18,0x24,0x20,0x10,0x08,0x3C,0x00},
                           {0x00,0x18,0x24,0x20,0x10,0x20,0x24,0x18},
                           {0x00,0x10,0x18,0x14,0x3C,0x10,0x10,0x00},
                           {0x00,0x38,0x08,0x18,0x20,0x20,0x18,0x00}};

void delay(uchar i)
{
     uchar j;
         for(j=100;j>0;j--)
            {
          for(;i>0;i--)
                  ;
             }
   }

void main()
{
           uchar n,i,j,k,t;
           //SH=0;
          while(1)
          {
           // n=0x00;
                  n=0;
           for (i=0;i<8;i++)
           {
              ST=0;
                  P0=i;       
                  
                 // for(j=0;j<8;j++)
                    {
                           for(k=0;k<5;k++)
                             {
                                   t=tab[5][n];
                                   for(j=0;j<8;j++)
                                   {
                                           SH=0;
                                       _nop_();
                                           if(t&0x80)
                                              DS=1;
                                                else
                                                  DS=0;
                                                SH=1;
                                                t<<=1;
                                                _nop_();
                                       
                                       
                                        }
                                        //n++         ;
                                   }
                           }       
                        ST=1;
                        delay(10);
                        n++;               
                  }                 
   }
  }

評分

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

查看全部評分

ID:111634 發表于 2018-9-19 07:37
情況不明,程序與電路都有可能出問題。
ID:135253 發表于 2018-9-18 22:29
幾個口顯示內容是一樣的,應該將程序與電路圖放上來,這樣大家也好建議啊!

評分

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

查看全部評分

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品三区 | 欧美日韩视频在线 | 九九激情视频 | 久久精品国产久精国产 | 欧美日韩成人 | 国产亚洲人成a在线v网站 | 日韩成人免费视频 | 久久五月婷 | 九色91视频 | 中文欧美日韩 | 亚洲精品电影网在线观看 | 亚洲激情在线观看 | 亚洲高清视频一区二区 | 在线国产一区二区 | 亚洲一区二区av | 成人午夜免费视频 | 欧美日韩专区 | 羞羞的视频免费在线观看 | 亚洲成人免费视频在线观看 | 亚洲精品一区二区三区在线 | 中文字字幕一区二区三区四区五区 | 久久人人爽人人爽人人片av免费 | 日本二区在线观看 | 日韩精品久久久久久 | 在线免费观看黄色av | 自拍偷拍精品 | 亚洲激情av| 免费观看av | 国产欧美一区二区三区在线看 | 蜜桃特黄a∨片免费观看 | 国产中文在线 | 精品一级 | 伊人二区| 欧美久久一区 | 欧美视频网 | 亚洲中午字幕 | 国产精品久久久久av | 久久久久国产一区二区三区 | 国产美女永久免费无遮挡 | 免费一级欧美在线观看视频 | 国产精品视频在线观看 |