| 
  |||||||||||
| 技術交流 | 電路欣賞 | 工控天地 | 數字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統 驅動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產業(yè) | CAN-bus/DeviceNe  | 
  
請問::這段代碼有什么錯? | 
  
| 作者:eein 欄目:單片機 | 
開發(fā)環(huán)境是Keil: #include <reg52.h> sbit P1_0=P1^0; void delay(void) { register int i; for(i=0;i<200;i++); } void main(void) { SCON=0x00; ES=0; ACC=0x80; for(;;) { P1_0=0; SBUF=ACC; while(TI!=0); P1_0=1; delay(); ACC>>=1; } } 謝謝!!  | 
  
| 2樓: | >>參與討論 | 
| 作者: 平常人 于 2006/9/17 16:22:00 發(fā)布:
         代碼沒錯啊,編譯應該可以通過 錯在你自己都不知道(或沒有說)怎么錯了 叫人家?guī)兔Γ傄f具體點吧  | 
  |
| 3樓: | >>參與討論 | 
| 作者: eein 于 2006/9/17 16:31:00 發(fā)布:
         補充 編譯后的提示是: *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: ?C_START MODULE: STARTUP.obj (?C_STARTUP) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: ?C_START MODULE: STARTUP.obj (?C_STARTUP) ADDRESS: 000DH Program Size: data=9.0 xdata=0 code=15 creating hex file from "COO"... "COO" - 0 Error(s), 2 Warning(s). 這段代碼我是從匯編翻譯過來的:匯編代碼是: MOV SCON,#00H CLR ES MOV A,#80H DELR: CLR P1.0 MOV SBUF,A JNB TI,$ SETB P1.0 ACALL DELAY CLR TI RR A AJMP DELR 請問翻譯對不? 另外在KEIL上單步調試時,為什么老是調到STARTUP.A51循環(huán)呢? 還有上面編譯提示的兩條警告(WARNNINGS)是什么意思?怎么改? 謝謝!  | 
  |
| 4樓: | >>參與討論 | 
| 作者: eein 于 2006/9/17 19:56:00 發(fā)布:
         頂一下 頂一下  | 
  |
| 5樓: | >>參與討論 | 
| 作者: 樓上的 于 2006/9/17 21:00:00 發(fā)布:
         × 延時里面的那個變量i沒必要弄成寄存器型的吧,就INT好的很。  | 
  |
| 6樓: | >>參與討論 | 
| 作者: qjy_dali 于 2006/9/17 21:40:00 發(fā)布:
         代碼雖然沒有錯,但是在C語言里用累加器卻是一種相當不好的習慣 累加器應該讓編譯器自由使用!!  | 
  |
| 7樓: | >>參與討論 | 
| 作者: 平常人 于 2006/9/17 22:25:00 發(fā)布:
         編譯后的提示的意思是說,你沒有把C的初啟文件包含鏈接進來  | 
  |
  | 
    
 
  | 
  
| 免費注冊為維庫電子開發(fā)網會員,參與電子工程師社區(qū)討論,點此進入 | 
Copyright © 1998-2006 udpf.com.cn 浙ICP證030469號  |