![]() |
發布時間: 2020-4-28 09:11
正文摘要:不論怎么改,單片機輸出還是高電平。(單片機沒有問題),我不知道是寄存器設置問題還是端口設置問題。請各位指點一下。電路圖中所有引腳都外接了上拉電阻 |
各位大佬。問題已經解決了。程序有錯誤但是不大,硬件電路也沒有錯誤。最根本的錯誤是我用錯了軟件。用KEIL 5 編寫2051的程序生成的HEX文件時錯誤的。我在虛擬機上下載了XP系統,安裝了KEIL 2 再生成新的HEX文件就是對的了。 |
主例程沒有無限循環,加電時僅執行初始化,因此輸出默認設置為高。 |
程序問題,第一、main函數里面沒有while循環,程序上電執行一遍就跑飛了。第二、沒有輸出,單片機默認輸出高電平 |
bhjyqjs 發表于 2020-4-28 14:20 這是一個正在使用的產品,硬件電路沒有問題,可以使用。只不過,我在硬件上學的太少,不知道怎么驅動。寫的程序也沒有任何反映。 |
AT89C2051是老式的51單片機,拉電流只有幾十uA,所以高電平輸出無法完成。該芯片灌電流最大20mA,所以要更改相應的驅動電路,才能完成設計意圖。 |
直接P3=0x00 |
zmc419 發表于 2020-4-28 10:44 單片機和硬件電路沒有問題。就是我的程序問題,但是我看不出來 |
P3雙向口,應該不用上拉。 |
直接P3=0x00,測試硬件有無問題。 |
給個方向也好![]() |
單片機默認是高電平,你的watchdog一直在往復硬件復位,所以輸出一直是高電平。所以應該是你的喂狗方式有問題 |