|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
串口方式0用于LED的問題 |
| 作者:ela 欄目:單片機(jī) |
我用串口的方式0用來驅(qū)動74LS164,用來讓LED顯示。在這個過程中我遇到了一個令人費(fèi)解的問題,顯示數(shù)據(jù)都可以正確顯示,但是讓LED亮一會之后,其他本來是滅的碼段也會慢慢亮起來,到最后就全是8了,把數(shù)碼管和仿真器的電斷掉一段時間再啟動在能再次正常工作,請各位高人幫忙分析一下 |
| 2樓: | >>參與討論 |
| 作者: hotpower 于 2005/6/15 1:29:00 發(fā)布:
電源可能不好 |
|
| 3樓: | >>參與討論 |
| 作者: wj8389 于 2005/6/15 1:31:00 發(fā)布:
他驅(qū)動的是共陽極的數(shù)碼管 |
|
| 4樓: | >>參與討論 |
| 作者: wj8389 于 2005/6/15 1:34:00 發(fā)布:
在回! 既然點(diǎn)亮了,是不是你的程序中存在什么問題吧。不會把SBUF的數(shù)又重新復(fù)值了! |
|
| 5樓: | >>參與討論 |
| 作者: 阿南 于 2005/6/15 8:10:00 發(fā)布:
加限流電阻了嗎?是不是164發(fā)熱后產(chǎn)生的 |
|
| 6樓: | >>參與討論 |
| 作者: ela 于 2005/6/15 22:06:00 發(fā)布:
只給sbuf付過一次值 #include<reg51.h> void main(void) { CHAR tocode[]= {0x02,0xf2,0x24,0x60,0xd0,0x48,0x08,0xe2,0x00,0x40,0xfe}; SCON=0x00; SBUF=tocode[0]; while(T==0); T=0; SBUF=tocode[1]; while(T==0); T=0; SBUF=tocode[2]; while(T==0); T=0; } 以上是我寫的程序,應(yīng)該沒有對SBUF重復(fù)付值,我驅(qū)動三個164。大家繼續(xù)幫忙啊,很苦惱。 |
|
| 7樓: | >>參與討論 |
| 作者: qjy_dali 于 2005/6/15 23:45:00 發(fā)布:
最好把電路也貼出來 |
|
| 8樓: | >>參與討論 |
| 作者: xin___xin 于 2005/6/16 8:39:00 發(fā)布:
給個建議 這個我也不是特別確定,是不是因為單片機(jī)程序運(yùn)行完以后,過一段時間不在保持端口的電平狀態(tài)導(dǎo)致的 可以試試在程序最后加一個 while(1){} |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |