熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2020-12-5 21:10
正文摘要:就是顯示的數(shù)碼管有斷碼,顯示不完全 有沒有大佬能解答一下? 單片機(jī)源程序如下: #include<reg52.h> #define uchar unsigned char #define uint unsigned uint uchar code seg[]={0x06,0x6d,0x40,0x4f,0x6d, ... |
謝謝各位大佬解答,是沒有消隱的問題,已經(jīng)解決了 |
wulin 發(fā)表于 2020-12-6 08:13 解決了,謝謝解答。 |
P0=~seg[dis[i]]; |
樓主程序沒有大問題,只是動(dòng)態(tài)數(shù)碼管顯示沒有加消隱語句,不適合仿真觀察。實(shí)物試驗(yàn)數(shù)碼管會(huì)有鬼影,仿真就成亂碼。顯示程序修改如下: void display(void) { uchar i; for(i=0;i<8;i++) { P0=0x00;//消隱 P2=i;//位碼 P0=seg[dis[i]];//段碼 delayms(1); } } |
也許字符碼不正確? |
這個(gè)[ i] 被當(dāng)成文字斜體處理(自動(dòng)補(bǔ)上[ i])了,不知道管理人員能否取消這個(gè)功能或者禁用文字斜體?畢竟論壇經(jīng)常會(huì)遇到發(fā)程序帶[ i]的。如果沒法解決,大家今后遇到正常文字的程序突然變成斜體的就應(yīng)該留意是否出錯(cuò)了 |
張?zhí)鞄?發(fā)表于 2020-12-5 23:04 我也是這樣認(rèn)為的,但是看顯示的比較正常的,seg字模是 05-35-00 ,顯示的也是類似,從圖中可以看出,正在顯示第A5位的數(shù)碼管,373輸出的也正是3的數(shù)據(jù)0x4f。如果按字面上的程序看,應(yīng)該編譯無法通過的,而后在發(fā)帖進(jìn)入高級模式時(shí),發(fā)現(xiàn)我的[ i ]也被吃掉了,返回文本模式看其實(shí)還在,只是最后面多出來一個(gè)[ / i ],刪除后又自動(dòng)加上去了,這個(gè)其實(shí)是論壇的程序影響的。 |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
看你程式要求,P0=seg[dis];應(yīng)修改為P0=seg[ dis[i] ]; |
參與人數(shù) 1 | 黑幣 +20 | 收起 理由 |
---|---|---|
![]() | + 20 | 回帖助人的獎(jiǎng)勵(lì)! |
P0=seg[i]; P2=i; delayms(1); |
Powered by 單片機(jī)教程網(wǎng)