| 
  |||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe  | 
  
怎樣知道單片機在工作了? | 
  
| 作者:joy晴天 欄目:單片機 | 
怎樣知道單片機在工作了? 軟件調(diào)試的時候看到P1.7腳可以置低電平,硬件測試的時候就是不行,我懷疑是單片機沒有正常工作,但是我測試了晶振部分電路,也沒有問題阿  * - 本貼最后修改時間:2006-10-31 17:04:00 修改者:joy晴天  | 
  
| 2樓: | >>參與討論 | 
| 作者: computer00 于 2006/10/31 17:20:00 發(fā)布:
         也許是EA沒接對?  | 
  |
| 3樓: | >>參與討論 | 
| 作者: lucidmask 于 2006/10/31 17:22:00 發(fā)布:
         re dog  | 
  |
| 4樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/10/31 17:27:00 發(fā)布:
         2051沒有EA阿  | 
  |
| 5樓: | >>參與討論 | 
| 作者: 車載音響 于 2006/10/31 17:31:00 發(fā)布:
         晶振,復(fù)位,電流,管腳  | 
  |
| 6樓: | >>參與討論 | 
| 作者: heyunhuan 于 2006/10/31 18:40:00 發(fā)布:
         re 1.先檢查電源是否已經(jīng)供上?VCC~GND電壓是多少? 2.檢查晶振是否已經(jīng)起振?使用示波器測量,如果沒有用萬用表也可以的. 3.復(fù)位引腳的電平是否正確?很有可能你的系統(tǒng)一直在復(fù)位狀態(tài)也說不定. 4.確定你的程序是正確的?使用C語言寫的,看看你的頭文件對嗎? 5.程序是否已經(jīng)將其燒寫到芯片中?是用燒寫器寫的/還是仿真器呢? 6.如果上面的都是正確的, 7.換一個芯片試驗一下.  | 
  |
| 7樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/10/31 19:24:00 發(fā)布:
         多謝樓上的,還有不懂請教: 1電源已經(jīng)供上:VCC 5.14V GND 0V 3復(fù)位引腳正確,0.1v,復(fù)位按鍵按下時4.8v 4我寫了一個簡單的測試程序試過的,還是不行,程序如下: #include<AT892051.H> void main() { P1_7=0; } 5我用的是編程器,軟件提示燒寫成功的 下面這個可疑:不過晶振基本不會出問題吧? 2晶振用萬用表如何測量其是否起振? 用示波器的話是不是出現(xiàn)一定頻率的方波? 明天到公司可以用示波器測,我想現(xiàn)在在家里用萬用表測一下,麻煩告知方法吧!謝謝了!知道方法后沒有示波器時也方便  | 
  |
| 8樓: | >>參與討論 | 
| 作者: heyunhuan 于 2006/10/31 19:35:00 發(fā)布:
         re (1)用示波器測量的時候,應(yīng)該顯示的是正弦波; (2)用萬用表測量不一定很準,不過我有時候就這么測量的,也很好用. 一.先把萬用表調(diào)到測量電壓的檔; 二.然后分別測量晶振的兩個引腳;電壓應(yīng)該在2.2V左右[1.7V也算是這樣吧],兩個引腳的電壓有 一定的差值,不會超過1V一般都在0.5V左右.[我以前都是測量12MHZ,11.0592MHZ晶振,要看你單片機型號]不過其他型號的也都應(yīng)該差不多.這個就要看你的經(jīng)驗了,你可以多測量一下好用的晶振,心里好有個數(shù),以后測試就方便了.不過本人建議你在沒有示波器的時候這樣的辦法還算是好用。并不是一定好用,以上屬于個人意見,僅僅供您參考,要是有什么錯誤的話。還請見諒.有什么疑問可和我聯(lián)系MSN:heyunhuan@hotmail.com (3)建議你在函數(shù)中這樣寫 void main() { while(1) { P1=0; } } 這樣的話,比較安全一點.  | 
  |
| 9樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/10/31 19:47:00 發(fā)布:
         測了下晶振兩端電壓在0.4v左右 但是拿開后再測,它又變成0.5v到0.6v了 這算什么?  | 
  |
| 10樓: | >>參與討論 | 
| 作者: zhujing03 于 2006/10/31 19:58:00 發(fā)布:
         回復(fù)主題:多謝樓上的,還有不懂請教: 你先看清2051程序的前100個單元應(yīng)該寫什么?  | 
  |
| 11樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/10/31 20:01:00 發(fā)布:
         分別測了兩腳電壓 一腳是1.45v 另一角是2.18v 怪了,我再測晶振兩腳卻是0.3v(0.23到0.35跳變) 我的電源電壓是5.19v 下午最后一個燒進去的程序,也就是現(xiàn)在的程序是: #include<AT892051.H> void main() { do{P1_7=0;} while(1); }  | 
  |
| 12樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/10/31 20:09:00 發(fā)布:
         re 你先看清2051程序的前100個單元應(yīng)該寫什么? ------------------------------ 這個有要求的?應(yīng)該寫什么呢?  | 
  |
| 13樓: | >>參與討論 | 
| 作者: dengm 于 2006/10/31 20:54:00 發(fā)布:
         你先用 ASM OR 機器碼 TEST ;ASM: ORG 0000H CLR P1.7 SJMP $ END ;機器碼: 在 編程器 軟件中,地址0000開始寫入下列機器碼 (16進制) C2 9C 80 FE  | 
  |
| 14樓: | >>參與討論 | 
| 作者: makesoft 于 2006/10/31 22:02:00 發(fā)布:
         我一般在主板上放一個LED作為運行指示燈 程序讓它閃爍,就知道系統(tǒng)運行正常了  | 
  |
| 15樓: | >>參與討論 | 
| 作者: qjy_dali 于 2006/10/31 23:00:00 發(fā)布:
         我的方法也是加LED  | 
  |
| 16樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/11/1 9:23:00 發(fā)布:
         我來報告 采用dengm 的匯編程序成功了,p1.7腳的LED點亮了 但是換用c程序就不行了,這是什么?  * - 本貼最后修改時間:2006-11-1 9:29:50 修改者:joy晴天  | 
  |
| 17樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/11/1 9:39:00 發(fā)布:
         c程序用heyunhuan的 #include<AT892051.H> void main() { while(1) { P1=0; } } 怎么c語言就不行了阿?  | 
  |
| 18樓: | >>參與討論 | 
| 作者: computer00 于 2006/11/1 9:43:00 發(fā)布:
         沒理由。也許你的hex文件裝錯了;蛘呶粗匦律?  | 
  |
| 19樓: | >>參與討論 | 
| 作者: joy晴天 于 2006/11/1 10:09:00 發(fā)布:
         我知道了 c語言的程序燒進去以后有17個單元效驗通不過,而匯編的程序通過 因為寫C的程序的時候?qū)懙搅?800后面的地址,而2051地址只有到07ff,所以出錯了  * - 本貼最后修改時間:2006-11-1 10:22:06 修改者:joy晴天  | 
  |
| 20樓: | >>參與討論 | 
| 作者: jxb163 于 2006/11/1 12:29:00 發(fā)布:
         靠!還是你自己的問題。  | 
  |
  | 
    
 
  | 
  
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 | 
Copyright © 1998-2006 udpf.com.cn 浙ICP證030469號  |