找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
12
返回列表 發(fā)新帖
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)不受代碼控制,求大神解惑。

  [復(fù)制鏈接]
41#
ID:160834 發(fā)表于 2018-4-3 21:38 | 只看該作者
單片機(jī)我來(lái)了 發(fā)表于 2018-4-1 21:42
我實(shí)際的板并沒(méi)有使用P0,P3,寫(xiě)這個(gè)代碼只是想用P1^0和P2^0檢驗(yàn)板是否正常。因?yàn)槲抑白鰝(gè)兩個(gè)板都是這 ...

STC89C52  P0口不需要加上拉。ATMEL公司的 AT89C52需要加上拉。
回復(fù)

使用道具 舉報(bào)

42#
ID:299857 發(fā)表于 2018-4-3 21:49 | 只看該作者
dalaoshi 發(fā)表于 2018-4-3 03:08
哈,我是看不懂C語(yǔ)言的,也沒(méi)有用過(guò)89C52, 可是看那個(gè)EA接腳就覺(jué)得奇怪,為何是接在LED與電阻之間呢,照看 ...

那個(gè)EA腳有樓提醒過(guò)我,我改過(guò)了,試過(guò)接電源也試過(guò)接地了。結(jié)果就是不行,依然高電平不斷。
回復(fù)

使用道具 舉報(bào)

43#
ID:299857 發(fā)表于 2018-4-3 21:51 | 只看該作者
perfect2 發(fā)表于 2018-4-3 14:15
P1,P2,P3,P0,沒(méi)有定義 無(wú)法直接使用    前面定義了 sbit D1=P1^0;  sbit led=P2^0    要控制 P1.0    P2.0 ...

哎...不是不行,而是你沒(méi)有用過(guò)。P1,P2,P3,P0在頭文件里已經(jīng)定義的了。你可以百科一下...
回復(fù)

使用道具 舉報(bào)

44#
ID:289365 發(fā)表于 2018-4-3 22:12 | 只看該作者
延時(shí)定太大了吧
回復(fù)

使用道具 舉報(bào)

45#
ID:301740 發(fā)表于 2018-4-3 22:12 | 只看該作者
主函數(shù)中的while對(duì)io口賦值沒(méi)有意義,可以放到循環(huán)的外邊,然后寫(xiě)while(1);
就可以了
回復(fù)

使用道具 舉報(bào)

46#
ID:160834 發(fā)表于 2018-4-3 22:24 | 只看該作者
依然高電平不斷?樓主指的是單片機(jī)上電后一直輸出高電平還是有過(guò)低電平?  我改的程序是每隔1秒左右高低電平切換。 我試下來(lái)都沒(méi)問(wèn)題啊。 你手上有幾片這樣的單片機(jī)?確定程序燒錄進(jìn)去了嗎?  還是STC的單片機(jī)是用串口燒錄的,你那個(gè)單片機(jī)是怎么燒錄的?是用燒錄器嗎? 程序肯定沒(méi)問(wèn)題。 難道你那片單片機(jī)壞了?

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

47#
ID:160834 發(fā)表于 2018-4-3 22:35 | 只看該作者
依然高電平不斷? 剛才又看了下你的程序和電路圖。 你電路圖上的D2和D4  2個(gè)LED是正極接電源  負(fù)極接單片機(jī)IO口  那么當(dāng)單片機(jī)口設(shè)置成  P0=0;P1=0;P2=0;P3=0; 時(shí)  LED就是亮的狀態(tài)。  如果你要LED不亮  那么初始設(shè)置成P0=0xFF;P1=0xFF;P2=0xFF;P3=0xFF;  還有要把這幾個(gè)設(shè)置IO代碼放在  while(1)上面。 否則一直循環(huán)設(shè)置。 我估計(jì)你所說(shuō)的一直高電平就是指的這個(gè)情況。 因?yàn)槟惆袸O置低電平一直放在循環(huán)里面。 所以LED就是一直亮的狀態(tài)。
void main()
{
         P0=0xFF;
         P1=0xFF;
         P2=0xFF;
         P3=0xFF;
  while(1)
{

  }        
}

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

48#
ID:237354 發(fā)表于 2018-4-3 23:02 | 只看該作者
我也遇到過(guò)類(lèi)似問(wèn)題,現(xiàn)象很詭異,P口高電平,在VCC和地之間接led加10K電阻,運(yùn)行正常。懷疑單片機(jī)和開(kāi)發(fā)板不匹配

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

49#
ID:125231 發(fā)表于 2018-4-4 09:09 | 只看該作者
P1不是直接=0,應(yīng)該是0x00
回復(fù)

使用道具 舉報(bào)

50#
ID:160834 發(fā)表于 2018-4-4 10:11 | 只看該作者
ycs05201314 發(fā)表于 2018-4-4 09:09
P1不是直接=0,應(yīng)該是0x00

對(duì)于賦值0到9都是可以直接這么寫(xiě)的。P1=0; 和  P1=0x00;  效果是一樣的。 如果是大于9了  直接寫(xiě)十進(jìn)制數(shù)字和十六進(jìn)制是不一樣的。 也就是P1=9; 和 P1=0x09; 也可以直接寫(xiě)效果是一樣的。 但是P1=10; 和 P1=0x10;  就不是一樣的效果了。P1=16; 和 P1=0x10;  才是一樣的。  這個(gè)試一下就能明白的。

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

51#
ID:300314 發(fā)表于 2018-4-5 20:23 | 只看該作者
你的IO口一直都是0還是死循環(huán) 怎么控制?
回復(fù)

使用道具 舉報(bào)

52#
ID:299857 發(fā)表于 2018-4-7 20:43 | 只看該作者
QIANLILI 發(fā)表于 2018-4-3 21:30
根據(jù)你的程序 稍微修改下  用于測(cè)試4組IO口的高低電平切換。 仿真和實(shí)物都沒(méi)問(wèn)題。 你那個(gè)程序也應(yīng)該沒(méi)問(wèn)題 ...

好好,感謝你衷心的回復(fù)。
回復(fù)

使用道具 舉報(bào)

53#
ID:299857 發(fā)表于 2018-4-7 20:57 | 只看該作者
QIANLILI 發(fā)表于 2018-4-3 22:24
依然高電平不斷?樓主指的是單片機(jī)上電后一直輸出高電平還是有過(guò)低電平?  我改的程序是每隔1秒左右高低電 ...

是的,高電平不斷。一直都是高電平,從來(lái)沒(méi)有出現(xiàn)出現(xiàn)過(guò)低電平。我手上有三個(gè)單片機(jī),在開(kāi)發(fā)板上都是正常的。我是用開(kāi)發(fā)板燒錄的,然后換到我做的板上。

我知道我的原因了。因?yàn)槲易龅氖请p面板。我身邊有個(gè)人告訴我,雙面板成功的概率是七分之一。我只是做了三個(gè)板。我現(xiàn)在困惑為何雙面板成功的概率那么低 ?
回復(fù)

使用道具 舉報(bào)

54#
ID:299857 發(fā)表于 2018-4-7 21:05 | 只看該作者
不敗的小強(qiáng) 發(fā)表于 2018-4-5 20:23
你的IO口一直都是0還是死循環(huán) 怎么控制?

你說(shuō)的不錯(cuò)。但我試試過(guò)用閃爍的,都是沒(méi)有反應(yīng)。。。
回復(fù)

使用道具 舉報(bào)

55#
ID:160834 發(fā)表于 2018-4-7 22:44 | 只看該作者
單片機(jī)我來(lái)了 發(fā)表于 2018-4-7 20:57
是的,高電平不斷。一直都是高電平,從來(lái)沒(méi)有出現(xiàn)出現(xiàn)過(guò)低電平。我手上有三個(gè)單片機(jī),在開(kāi)發(fā)板上都是正常 ...

這和雙面板沒(méi)關(guān)系的。 還是找找電路圖和布線是否有錯(cuò)誤的原因吧。你可以用萬(wàn)用板先搭個(gè)最精簡(jiǎn)的 測(cè)試下LED閃爍。 就能看出問(wèn)題了。 確保晶振什么的也沒(méi)問(wèn)題。 建議還是用目前的STC8系列  性?xún)r(jià)比更高。
回復(fù)

使用道具 舉報(bào)

56#
ID:105146 發(fā)表于 2018-4-7 23:25 | 只看該作者
這個(gè)圖看著真亂!
回復(fù)

使用道具 舉報(bào)

57#
ID:105146 發(fā)表于 2018-4-7 23:38 | 只看該作者
本來(lái)是想多打些字,無(wú)奈在快速回復(fù)時(shí),按錯(cuò)鍵導(dǎo)致直接發(fā)出了!
看了大家的回復(fù),都很認(rèn)真!
我說(shuō)下我的觀點(diǎn):1、圖真的很亂:蜂鳴器不能直接接IO口線的;EA應(yīng)該直接接VCC;兩個(gè)LED上串的電阻阻值太大了(10K);2、程序如果想截圖的一樣,則兩個(gè)LED應(yīng)該始終是亮的(前提是兩個(gè)限流電阻在1K以下)———原因是所有的口都是低電平;如果把截圖中注釋掉的兩條語(yǔ)句加上,則兩個(gè)LED應(yīng)該始終是滅的————原因是輸出低電平的時(shí)間太短了,只有幾個(gè)機(jī)器周期,人眼根本分辨不出來(lái);3、如果想實(shí)現(xiàn)亮、滅閃爍的效果,應(yīng)該把P1=0;P2=0;P3=0;P0=0;這幾條語(yǔ)句放在循環(huán)的外面即可。

評(píng)分

參與人數(shù) 1黑幣 +70 收起 理由
admin + 70 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

58#
ID:299857 發(fā)表于 2018-4-8 22:20 | 只看該作者
oohoh 發(fā)表于 2018-4-3 23:02
我也遇到過(guò)類(lèi)似問(wèn)題,現(xiàn)象很詭異,P口高電平,在VCC和地之間接led加10K電阻,運(yùn)行正常。懷疑單片機(jī)和開(kāi)發(fā)板 ...

這樣嗎?我趕緊試試。謝謝
回復(fù)

使用道具 舉報(bào)

59#
ID:299857 發(fā)表于 2018-4-8 22:24 | 只看該作者
QIANLILI 發(fā)表于 2018-4-7 22:44
這和雙面板沒(méi)關(guān)系的。 還是找找電路圖和布線是否有錯(cuò)誤的原因吧。你可以用萬(wàn)用板先搭個(gè)最精簡(jiǎn)的 測(cè)試下LE ...

哈哈,我前天就是這樣試的,得出結(jié)論我的最小系統(tǒng)是沒(méi)有問(wèn)題的。
剩下的還沒(méi)找到原因,還在研究。
謝謝你用心答復(fù),我好感動(dòng)。
回復(fù)

使用道具 舉報(bào)

60#
ID:299857 發(fā)表于 2018-4-8 22:35 | 只看該作者
wjshw 發(fā)表于 2018-4-7 23:38
本來(lái)是想多打些字,無(wú)奈在快速回復(fù)時(shí),按錯(cuò)鍵導(dǎo)致直接發(fā)出了!
看了大家的回復(fù),都很認(rèn)真!
我說(shuō)下我的觀 ...

哈哈,實(shí)在不好意思。初學(xué)者,抱著一顆試一下行不行的心,所以沒(méi)有過(guò)多在意是否好看。
不過(guò)你說(shuō)了,我才想到蜂鳴器還需要驅(qū)動(dòng)芯片,LED電阻是有點(diǎn)大了,我再改改。
那個(gè)EA腳,我已經(jīng)后臺(tái)用線連過(guò)了。
但代碼在開(kāi)發(fā)板上是可以正常運(yùn)行,就這樣的代碼加上后面的注釋?zhuān)琇ED是正常閃爍的。
謝謝您認(rèn)真的回答。
回復(fù)

使用道具 舉報(bào)

61#
ID:304391 發(fā)表于 2018-4-9 14:22 | 只看該作者
CPU及其它所有的器件取電都從D1二極管的負(fù)極取,要不然有電壓差。蜂鳴器加個(gè)NPN三極管驅(qū)動(dòng)一下,三極管基極串接一個(gè)2.2K電阻到IO口,LED串接的電阻1K-2.2K都行,按鍵那2個(gè)10K的電阻做成上拉10K,按鍵直接對(duì)地即可。
回復(fù)

使用道具 舉報(bào)

62#
ID:299857 發(fā)表于 2018-4-10 21:45 | 只看該作者
e0631 發(fā)表于 2018-4-9 14:22
CPU及其它所有的器件取電都從D1二極管的負(fù)極取,要不然有電壓差。蜂鳴器加個(gè)NPN三極管驅(qū)動(dòng)一下,三極管基極 ...

好好,我試試。
回復(fù)

使用道具 舉報(bào)

12
返回列表 發(fā)新帖

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表