![]() |
你都沒有生成HEX文件,先看看是不是keil的配置問題。程序是沒問題的,或者看看是不是輸入的字母是在中文輸入的情況下輸入的 |
程序在執行了一次led1=0,所以不會一直亮著 |
#include<reg52.h> 第一次圖你工都沒生成hex文件, 晶振?單片機是小三要素 p要大寫 |
void main() { while(1) { LED1 = 0; } } 將led燈放入while死循環中,將燈亮時間延長 |
void main() { LED1=0; while(1) { ; } } |
lxt@ 發表于 2021-7-22 09:13 首先你的p沒有大寫,定義是不成功的,當然無法識別 |
怎么總是顯示p0和led無法識別 |
2021-07-22_09.12.24.jpg (706.47 KB, 下載次數: 143)
我是做硬件的,單片機工程師能點亮我的LED,卻不能滅我的LED,然后單片機工程師說是硬件有誤?。。! |
你先看下你的原理圖 對應的端口有沒有出錯,再看下led對應的亮燈電平 再改下應該就行了 |
兩種情況,第一種是閃的太快你沒看到,按照底下更改下主函數 void main() { LED1=0; while(1); } 第二種情況:你設置的p0引腳,接線要接到p0口, 你要生成.hex文件燒寫進去板子,才能看到結果。 |
沒有死循環,而且點亮燈是要看硬件怎么接,是高電平亮,還是低電平亮 |
渝味道 發表于 2018-7-14 20:24 渝味道行尊您好: (1)我的操作系統是win10,所以使用的是keil4軟件。 (2)我將LED大寫標識,改寫為led小寫標識,依然沒有任何作用的。 謝謝你的耐心解答。 |
HC6800-ES-V2.0 發表于 2018-7-14 20:39 HC6800-ES-V2.0 行尊您好: (1) 源代碼完成后,我編譯了一次沒有顯示相關(0)error和(0)warning,不知道是不是編譯存在錯誤。 (2) 作為一枚小白的我,不知道如果在keil4這個軟件上面查看編程環境啊。 謝謝您對我這位新手的幫助和點播,感激涕零。 |
天才小能貓 發表于 2018-7-14 19:06 天才小能貓行尊您好: 我在源代碼加入死循環white(1)后仍然沒有任何反應哦,作為一名零基礎新手不知道還有通過什么方式繼續解決這個問題啊。 謝謝您對我的答疑和幫助,感激涕零。 |
qq455627509 發表于 2018-7-14 18:52 qq455627509 行尊您好: (1)普通的發光二極管的工作電壓為1.6V-2.1V,工作電流為1-20mA;應該是正極接入+5V的高電平,負極接入0V低電平吧. (2)源代碼加入死循環white(1)后仍然沒有任何反應哦。 (3)要怎么判斷文件是否編譯成功啊 感謝您的耐心解答和對小白一枚我的幫助。 |
本帖最后由 鵬博士PBs 于 2018-7-15 00:42 編輯 134849694164151 發表于 2018-7-14 19:04 134849694164151行尊您好: 作為一個剛剛接觸我首先在License Management已經用computer ID注冊了product,其中support period顯示為 Jul 2020,這樣操作應該可以說是keil的破解了吧。 |
wsd-cup 發表于 2018-7-14 18:35 謝謝wsd-cup 行尊您的解答 我先嘗試一下哈 |
1、確定LED燈沒問題 2、程序是否下載成功 3、電路是不是LED負極接怕P1.0 |
#include<reg52.h> sbit LED1=P1^0; void main() { LED1=0; while(1); } 這樣的程序不會有什么問題,檢查一下這幾方面: 1.單片機的晶振已經焊接并且起振 2.P1^0口上的LED燈陰極接單片機陽極連VCC并且有阻值合適的限流電阻 3.整機供電正常 4.如果選用的型號有EAVP腳,它已經連到VCC上 如果上述都沒有問題可以嘗試更換LED和單片機再試 |
看看是不是端口錯了,看原理圖,有的好像是P2^0口,還有 加一個死循環函數 while(1) |
你打好程序代碼后,再編譯一次沒有? 程序沒問題,只能是你的編程環境可能不對。 這個沒法調你的軟件看啊。 |
首先你這是KEIL幾啊,建議使用KEIL2哦。這里有實例希望對你有幫助。 #include<reg52.h> sbit led=P1^0; void main() { led=o; } |
加上主循環。 |
加一個while(1), 不然速度太快看不到 |
是不是keil沒破解。扛杏X代碼寫的挺對的 |
用while(1)進行死循環看看,或者看看你的LED是低電平點亮還是高電平。還是你自己的編譯文件沒編譯成功? |
1、配置不對, 2、代碼不對 void main() { LED1 = 0; while(1) { ; } } |
void main() { LED1=0; while(1) { ; } } |
void main() { LED1 = 0; while(1) {} } |