找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1578|回復(fù): 12
打印 上一主題 下一主題
收起左側(cè)

請教為啥單片機(jī)+74hc595顯示不正常?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:731755 發(fā)表于 2024-4-1 20:38 來自手機(jī) | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
晚上好,各位老師,請教一下我的程序是否有問題,單片機(jī)STC8H8K64U,兩個74HC595推動四位數(shù)碼管,剛開始采用延時程序,hour=1234.可以正常顯示1234.后來采用定時中斷顯示,hour改為1111.顯示444.請教一下,這樣寫程序是否正常,如果錯誤,該怎么改?謝謝

IMG_20240401_203010.jpg (829.43 KB, 下載次數(shù): 72)

IMG_20240401_203010.jpg

51hei.png (22.23 KB, 下載次數(shù): 83)

51hei.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:161164 發(fā)表于 2024-4-1 22:20 | 只看該作者
先把211行的k++移到213行之后
確保LED8[k]里k的值不會超過4

評分

參與人數(shù) 1黑幣 +15 收起 理由
13872888583 + 15 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

板凳
ID:731755 發(fā)表于 2024-4-1 22:35 | 只看該作者
lkc8210 發(fā)表于 2024-4-1 22:20
先把211行的k++移到213行之后
確保LED8[k]里k的值不會超過4

高手,正常了,現(xiàn)在4個1111了。以前不明白,為啥自加加要放到后面,F(xiàn)在知道了
回復(fù)

使用道具 舉報

地板
ID:1109793 發(fā)表于 2024-4-2 08:41 | 只看該作者
放前邊也沒問題吧,主要是后面的if(k>=4)改成3才對啊,因為=4就是led[4]就越界了。
回復(fù)

使用道具 舉報

5#
ID:731755 發(fā)表于 2024-4-2 10:13 來自手機(jī) | 只看該作者
xiaobendan001 發(fā)表于 2024-4-2 08:41
放前邊也沒問題吧,主要是后面的if(k>=4)改成3才對啊,因為=4就是led[4]就越界了。

不能是3,3就少一位了。
回復(fù)

使用道具 舉報

6#
ID:1109793 發(fā)表于 2024-4-2 10:43 | 只看該作者
13872888583 發(fā)表于 2024-4-2 10:13
不能是3,3就少一位了。

3的話就要放前邊,4就放后邊,總之就是不能讓數(shù)組越界。不越界還有一個辦法,把數(shù)組定義大一些。
回復(fù)

使用道具 舉報

7#
ID:965189 發(fā)表于 2024-4-2 15:11 | 只看該作者
if(K>3){K=0;)這樣也可以吧。
回復(fù)

使用道具 舉報

8#
ID:883242 發(fā)表于 2024-4-2 17:03 | 只看該作者
214、215行應(yīng)該挪到217~219的括號內(nèi)部,現(xiàn)在顯示4個一樣的數(shù)字看不出來,如果是1234就有大問題了。
回復(fù)

使用道具 舉報

9#
ID:731755 發(fā)表于 2024-4-2 18:58 來自手機(jī) | 只看該作者
君工創(chuàng) 發(fā)表于 2024-4-2 15:11
if(K>3){K=0;)這樣也可以吧。

不可以,采用二樓那位師傅的就剛剛好
回復(fù)

使用道具 舉報

10#
ID:731755 發(fā)表于 2024-4-2 19:02 來自手機(jī) | 只看該作者
xiaobendan001 發(fā)表于 2024-4-2 10:43
3的話就要放前邊,4就放后邊,總之就是不能讓數(shù)組越界。不越界還有一個辦法,把數(shù)組定義大一些。

自加加放到前面,目前hour=1234,試過k=3,4,5.其中3少一位顯示,4顯示錯誤,還是少一位,5顯示和4一樣,最后一位亂碼。
回復(fù)

使用道具 舉報

11#
ID:731755 發(fā)表于 2024-4-2 19:03 來自手機(jī) | 只看該作者
Hephaestus 發(fā)表于 2024-4-2 17:03
214、215行應(yīng)該挪到217~219的括號內(nèi)部,現(xiàn)在顯示4個一樣的數(shù)字看不出來,如果是1234就有大問題了。

沒事,采用二樓那位師傅剛剛好,目前就是1234.
回復(fù)

使用道具 舉報

12#
ID:1109793 發(fā)表于 2024-4-2 19:18 | 只看該作者
13872888583 發(fā)表于 2024-4-2 19:02
自加加放到前面,目前hour=1234,試過k=3,4,5.其中3少一位顯示,4顯示錯誤,還是少一位,5顯示和4一樣, ...

是,放前邊的同時,判定那部分也要放前邊,否則K=0的時候就無法參與顯示了
或者你把數(shù)組改成LED8[5],然后把1234放到LED8[1]~LEN8[4],就一樣能顯示1234了。
回復(fù)

使用道具 舉報

13#
ID:731755 發(fā)表于 2024-4-3 08:16 來自手機(jī) | 只看該作者
xiaobendan001 發(fā)表于 2024-4-2 19:18
是,放前邊的同時,判定那部分也要放前邊,否則K=0的時候就無法參與顯示了
或者你把數(shù)組改成LED8[5],然 ...

好的,謝謝,師傅。
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表