![]() |
發布時間: 2024-4-1 20:38
正文摘要:晚上好,各位老師,請教一下我的程序是否有問題,單片機STC8H8K64U,兩個74HC595推動四位數碼管,剛開始采用延時程序,hour=1234.可以正常顯示1234.后來采用定時中斷顯示,hour改為1111.顯示444.請教一下,這樣寫程序 ... |
xiaobendan001 發表于 2024-4-2 19:18 好的,謝謝,師傅。 |
13872888583 發表于 2024-4-2 19:02 是,放前邊的同時,判定那部分也要放前邊,否則K=0的時候就無法參與顯示了 或者你把數組改成LED8[5],然后把1234放到LED8[1]~LEN8[4],就一樣能顯示1234了。 |
Hephaestus 發表于 2024-4-2 17:03 沒事,采用二樓那位師傅剛剛好,目前就是1234. |
xiaobendan001 發表于 2024-4-2 10:43 自加加放到前面,目前hour=1234,試過k=3,4,5.其中3少一位顯示,4顯示錯誤,還是少一位,5顯示和4一樣,最后一位亂碼。 |
君工創 發表于 2024-4-2 15:11 不可以,采用二樓那位師傅的就剛剛好 |
214、215行應該挪到217~219的括號內部,現在顯示4個一樣的數字看不出來,如果是1234就有大問題了。 |
if(K>3){K=0;)這樣也可以吧。 |
13872888583 發表于 2024-4-2 10:13 3的話就要放前邊,4就放后邊,總之就是不能讓數組越界。不越界還有一個辦法,把數組定義大一些。 |
xiaobendan001 發表于 2024-4-2 08:41 不能是3,3就少一位了。 |
放前邊也沒問題吧,主要是后面的if(k>=4)改成3才對啊,因為=4就是led[4]就越界了。 |
lkc8210 發表于 2024-4-1 22:20 高手,正常了,現在4個1111了。以前不明白,為啥自加加要放到后面。現在知道了 |