熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2018-6-17 01:02
正文摘要:自己按照書上的程序編了一個(gè),也自己花了個(gè)圖,秒表計(jì)數(shù),為什么10位能變化,個(gè)位不動(dòng)呢,可是每10秒10位還發(fā)生變化,在線等哥哥們幫助,哪有問題自己按照書上的程序編了一個(gè),也自己花了個(gè)圖,秒表計(jì)數(shù),為什么10位 ... |
zl2168 發(fā)表于 2018-6-18 11:05 謝謝兄弟,我會(huì)認(rèn)真看的,十分感謝 |
本帖最后由 zl2168 于 2018-6-18 11:07 編輯 給你介紹一個(gè)正確有效看得懂的案例,自己對(duì)照查錯(cuò)吧! 實(shí)例93 99.9秒秒表 ![]() ![]() 先Proteus仿真一下,確認(rèn)有效。以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil C和Proteus》清華大學(xué)出版社ISBN 978-7-302-41682-1,內(nèi)有常用的單片機(jī)應(yīng)用100案例,用于仿真實(shí)驗(yàn)操作,書中電路和程序設(shè)計(jì)有詳細(xì)說明,電路與程序真實(shí)可靠可信可行,程序語(yǔ)句條條有注解。 |
figo88130 發(fā)表于 2018-6-17 20:39 2顯示不正常, 0A4, 高電平不顯示, 數(shù)據(jù)有3個(gè)"1", 連小數(shù)點(diǎn)共3個(gè)段不顯, 程序看不出問題, 實(shí)際只有2個(gè)段不顯.估計(jì)還是硬件部分, 給P0口全加3K3的上拉電阻試下. |
figo88130 發(fā)表于 2018-6-17 20:39 Ledbuff[0] = Ledchar[0];//sec%10]; Ledbuff[1] = Ledchar[1];//sec/10%10]; Ledbuff[2] = Ledchar[2];//sec/100%10]; Ledbuff[3] = Ledchar[3];//sec/1000%10]; Ledbuff[4] = Ledchar[4];//sec/10000%10]; Ledbuff[5] = Ledchar[5];//sec/100000%10]; 沒注意, 這樣才樣顯示012345 |
figo88130 發(fā)表于 2018-6-17 20:39 Ledbuff[0] = 0: //Ledchar[sec%10]; Ledbuff[1] = 1; //Ledchar[sec/10%10]; Ledbuff[2] = 2; //Ledchar[sec/100%10]; Ledbuff[3] = 3; //Ledchar[sec/1000%10]; Ledbuff[4] = 4; //Ledchar[sec/10000%10]; Ledbuff[5] = 5; //Ledchar[sec/100000%10]; 改這樣呀, 你程序有查表, 會(huì)顯示012345的, 我估計(jì)你是串位了. 就是138譯碼不正確. 你幾位顯一樣的看不出 |
60行“ case 0:ADDR0=0;ADDR1=0;ADDR2=0;i++;P0=Ledbuff[0];break;”你這樣寫沒有數(shù)碼管顯示的,中間應(yīng)該是“ADDR0=1;ADDR1=0;ADDR2=0;”,后面的以此類推 |
程序沒看出問題呀, 估計(jì)是硬件部分問題, 但這句改下會(huì)好點(diǎn) default: break; 改為 default: i = 0; break; // i 異常時(shí)下次會(huì)正常 可改這幾句調(diào)試: Ledbuff[0] = 0: //Ledchar[sec%10]; Ledbuff[1] = 1; //Ledchar[sec/10%10]; Ledbuff[2] = 2; //Ledchar[sec/100%10]; Ledbuff[3] = 3; //Ledchar[sec/1000%10]; Ledbuff[4] = 4; //Ledchar[sec/10000%10]; Ledbuff[5] = 5; //Ledchar[sec/100000%10]; 程序正常, 應(yīng)該顯示543210, 顯示正常再看程序, 我估算你電路會(huì)串位, 也就是138譯碼不正常, 如是, 試著P1.0 P1.1 P1.2拉個(gè)3K3的上拉電阻, 還有, 138輸出到三極管要接個(gè)幾百到1K歐的電阻. 再不行就換138. |
參與人數(shù) 1 | 黑幣 +5 | 收起 理由 |
---|---|---|
![]() | + 5 | 謝謝老哥了,指點(diǎn)的非常詳細(xì),也非常到位。. |
Powered by 單片機(jī)教程網(wǎng)