![]() |
發布時間: 2017-11-18 21:59
正文摘要:89C52單片機,在開發板上燒寫程序測量發現P0^0,P^1口可以正常安裝程序的設定輸出高低電平,但是移到自己焊的板子上再測量發現P0口全都呈現出高阻態, 是 什么原因????晶振問題? |
謝謝各位大佬,問題已經解決,經過測試發現晶振已經起振,也能從18 19管腳輸入,但是單片機缺未能正常工作,也就是30管腳ALE未能輸出測出方波信號。在把單片機的外部晶振電路都換過之也沒有效果之后我把晶振拔下直接接在18 19管腳之后就一切正常了。下面是兩個PCB圖供大家參考 |
KACHEN 發表于 2017-11-19 00:31 marke```` |
51單片機,一般只有P0口才需要外加上拉電阻,其它三個端口芯片內部已經設置有上拉功能,無需外接上拉電阻。P0口作為I/O口輸出的時候時 輸出低電平為0 輸出高電平為高組態(并非5V,相當于懸空狀態)。也就是說P0 口不能真正的輸出高電平,給所接的負載提供電流,因此必須接上拉電阻(八個電阻一組引腳全部連在一起組成公共端連接到VCC,然后另一段的八個引腳分別連在p0口),由電源通過這個上拉電阻給負載提供電流。一般上拉電阻大小可以在3.3K-10K之間都可以,我大一時完51單片機就是這么做的,是可以的。 |
需要加上拉電阻的 |
上拉電阻都接上了啊 |
P0應該要加上拉電阻的。 |
拍個實物圖看看 |
不知道樓主的問題解決沒有,按樓主的介紹程序應該是沒什么問題,與我的電路不同的也就是31腳我是從來沒接東西的照樣用。這里我想確定下樓主的供電問題,供電是否穩定? 1、需要穩定的5V電源,希望你使用的盡量是線性穩壓電源。 2、在電源輸入的供電端添加0.1uF(瓷片電容)+100uF(電解電容)。 3、在單片機的40腳供電端接一個0.1uF的電容濾波,其次在AD芯片中也添加一個0.1uF(瓷片電容)+10uF(電解電容) 這樣能增加電路的穩定性。 然后不要忘記了還是需要上拉電阻的1~10K都是可以的。 最后如果沒有用的話希望樓主借用同學的單片機試用下,也可能是樓主的單片機壞了! |
沒看出毛病。。。。 |
q784662037 發表于 2017-11-19 11:23 要不你重新焊接一個單片機最小系統,換個新的單片機試試,或者重新認真的檢查一下電路若電路焊接沒問題換個單片機試試。 |
剛才又看了一下, 我把P2.7口置零也置不下去,它還是輸出高電平。應該是單片機不工作,可是為什么不工作呢,電路都檢查一遍了。 |
cccc8888 發表于 2017-11-19 09:59 接了,31管腳也接了VCC,用電壓表也測了31管腳為5V |
cccc8888 發表于 2017-11-19 09:59 31管腳需要接到VCC的嗎? |
你拔掉芯片,用電阻檔測量一下引腳,有沒有到Ⅴcc短路 |
還有測量晶振波形和電壓18 19 電壓在二分之一電源電壓左右。 |
31 pin 有沒有接到vcc |
KACHEN 發表于 2017-11-19 00:31 但是我加了上拉電阻之后輸出低電平并不是0V,我分別設置P0.0為低電平P0.1為高電平之后在用萬用表分別測試兩者的電壓,并無差別 |
51單片機,一般只有P0口才需要外加上拉電阻,其它三個端口芯片內部已經設置有上拉功能,無需外接上拉電阻。P0口作為I/O口輸出的時候時 輸出低電平為0 輸出高電平為高組態(并非5V,相當于懸空狀態)。也就是說P0 口不能真正的輸出高電平,給所接的負載提供電流,因此必須接上拉電阻(八個電阻一組引腳全部連在一起組成公共端連接到VCC,然后另一段的八個引腳分別連在p0口),由電源通過這個上拉電阻給負載提供電流。一般上拉電阻大小可以在3.3K-10K之間都可以,我大一時完51單片機就是這么做的,是可以的。 |
很有可能是晶振沒起振,單片機沒有正常工作 |
求各位大神指教。!!![]() |
ww3030 發表于 2017-11-18 22:13 我也加了上拉電阻試了一下,程序設置輸出0的時候端口還是呈現高阻態,上拉電阻接的VCC直接到IO口成高電平輸出。 |
開發板子上面的都是有上拉電阻的,這個你有沒有注意到啊 |