熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2021-11-4 00:07
正文摘要:本人剛剛學(xué)習(xí)51單片機(jī), 做了一個(gè)顯示 30 X 55 答案的小程序, 但顯示的答案 不是 1650 而是 1672, 請問我錯(cuò)在哪里? 謝謝 (我用的是普中單片機(jī)開發(fā)板) #include<reg52.h> #include<intrins.h> sb ... |
kscheang 發(fā)表于 2021-11-4 13:09 已經(jīng)明確的告訴你問題出在段碼和位碼,還在瞎折騰。數(shù)組前面少了0x3f,后面多了0xff。位碼低位高位順序反了。
|
謝謝 但修改了還是顯示 2 while(1) { P0 = 0X00; HC138_A = 0; HC138_B = 0; HC138_C = 0; P0 = smgduan[z/1000%10]; delay7ms(); } |
取各位的代碼,應(yīng)該要改一下 z/1000%10//千位 z/100%10//百位 z/10%10//十位 z%10 //個(gè)位,最低位 |
可能用于顯示的代碼出問題了 |
你四位數(shù)提取每一位的計(jì)算對嗎???我咋覺得不太對哎。 |
查你的顯示函數(shù) |
無標(biāo)題.jpg (205.8 KB, 下載次數(shù): 50)
無標(biāo)題1.jpg (189.26 KB, 下載次數(shù): 46)
x,y定義的是char,你結(jié)果又超出255,所以答案就不可測,需要看編譯器怎么翻譯的,你可以通過強(qiáng)制類轉(zhuǎn)換方式計(jì)算。 |
檢查一下段嗎。 |
計(jì)算結(jié)果本身沒有錯(cuò),是顯示出錯(cuò)。你驅(qū)動(dòng)數(shù)碼管的段碼和位碼錯(cuò)位。把1650顯示成2761,位序反后2761就成1672。 |
Powered by 單片機(jī)教程網(wǎng)