欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: [求助]關(guān)于keil 程序錯(cuò)誤問題,求大神! [打印本頁]

作者: k6084109    時(shí)間: 2012-10-17 13:41
標(biāo)題: [求助]關(guān)于keil 程序錯(cuò)誤問題,求大神!

      ORG  00H
      MOV  R7,#00H              ;延時(shí)
      DJNZ R7,$
      ;***************設(shè)置內(nèi)定密碼********************       
      MOV  35H,#06
      MOV  34H,#06
      MOV  33H,#06
      MOV  32H,#06
      MOV  31H,#06
      MOV  30H,#06
;***************************************************************
START:   MOV  P0,#0FFH            ;P0口都置1
      MOV  45H,#09             ;清除存放地址40H-45H的地址
      MOV 44H,#08
      MOV  43H,#07
      MOV  42H,#06
      MOV  41H,#05
      MOV  40H,#04
;***************************************************************
L2:      MOV  P0,#0FFH            ;P0口都置1
      MOV  R3,#0EFH            ;掃描指針初值(P14=0)
      MOV  R1,#00H             ;鍵盤取碼指針
L3:      MOV  A,R3                ;掃描指針載入累加器
      MOV  P1,A                ;輸入至P1掃描
      MOV  A,P1                ;讀入P1值
      MOV  R4,A                ;存入R4,以判斷按鈕是否放開?
      SETB C                   ;C=1
      MOV  R5,#03H             ;掃描P10-P12
L4:      RRC  A
      JNC  KEYIN               ;C=0則有鍵按下
      INC  R1                  ;無鍵按下則指針加1
      DJNZ R5,L4               ;三列掃描完后掃描下一行
      MOV  A,R3                ;載入掃描指針
      SETB C                   ;C=1
      RLC  A                   ;掃描下一行
      MOV  R3,A                ;存入掃描指針寄存器
      JC   L3                  ;C=1則4行未掃描完
      JMP  L2               ;C=0則4行已經(jīng)掃描完,回到第一行從新開始掃描
;*************************************************************
KEYIN:   MOV  R7,#10              ;消除抖動(dòng)
D1:      MOV  R6,#248
      DJNZ R6,$
      DJNZ R7,D1
D2:      MOV  A,P1
      XRL  A,R4                 ;按鈕放開否?
      JZ   D2                   ;A=R4則未放開,等待
      MOV  A,R1                 ;按鍵放開了,載入按鍵指針
      MOV  DPTR,#TABLE          ;數(shù)據(jù)指針指到TABLE
      MOVC A,@A+DPTR            ;至TABLE取碼
      MOV  R7,A                 ;取到按鍵值暫存入R7
      XRL  A,#0AH               ;是否按"*"
      JZ   SET0                 ;是則設(shè)定新密碼
      MOV  A,R7                 ;載入按鍵值
      XRL  A,#0BH               ;是否按"#"
      JZ   COMP                 ;是則去比較密碼
      MOV  A,R7                 ;不是則載入按鍵值
      XCH  A,40H                ;現(xiàn)按鍵值存入(40H)
      XCH  A,41H                ;舊(40H)值存入 (41H)
      XCH  A,42H                ;舊(41H)值存入 (42H)
      XCH  A,43H                ;舊(42H)值存入 (43H)
      XCH  A,44H                ;舊(43H)值存入 (44H)
      XCH  A,45H                ;舊(44H)值存入 (45H)
      JMP  L2
;********************************************************************
SET0:    MOV  R2,#06H              ;6個(gè)密碼
      MOV  R0,#40H              ;按鍵顯示地址
  MOV  R1,#30H              ;密碼存放地址
E1:      MOV  A,@R0                ;40H存入30H······45H存入35H
      XCH  A,@R1
      INC  R0
      INC  R1
      DJNZ R2,E1
      CALL DELAY                ;延時(shí)
E2:   JMP START                 ;************************************
;********************************************************************
COMP:    MOV  R1,#45H              ;按鍵顯示地址
      MOV  R0,#35H              ;密碼存放地址
      MOV  R2,#06H              ;6個(gè)碼
C1:      MOV  A,@R1                ;按鍵值與密碼值比較
      XRL  A,@R0
      JNZ  C3                   ;不同則報(bào)警
      DEC  R1                   ;相同則比較下一個(gè)碼
      DEC  R0
      DJNZ R2,C1
      CLR  P0.0                 ;令電鎖動(dòng)作
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      JMP  L2
C3:      CLR  P0.1
      CLR  P0.2
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      CALL DELAY
      JMP  L2
;*********************    延時(shí)時(shí)間    **************************
DELAY:   MOV  R7,#248
D3:      MOV  R6,#248
      DJNZ R6,$
      DJNZ R7,D3
      RET

      ORG  100H
TABLE:   DB   01H,02H,03H      ;鍵盤值
      DB   04H,05H,06H
      DB   07H,08H,09H
      DB   0AH,00H,0BH
      END


作者: k6084109    時(shí)間: 2012-10-17 13:42

20.s(1): error A9: SYNTAX ERROR

20.s(1): error A3: ILLEGAL CHARACTER

20.s(1): error A3: ILLEGAL CHARACTER

20.s(1): error A3: ILLEGAL CHARACTER

20.s(1): error A3: ILLEGAL CHARACTER

Target not created

 

這是問題,怎么解決?????謝謝了!!!!


作者: ahshmj    時(shí)間: 2012-10-18 17:12

你試一試這個(gè)。是不是看起來和你的一模一樣?

 

            ORG  00H
            MOV  R7,#00H              ;延時(shí)
            DJNZ R7,$
            ;***************設(shè)置內(nèi)定密碼********************       
            MOV  35H,#06
            MOV  34H,#06
            MOV  33H,#06
            MOV  32H,#06
            MOV  31H,#06
            MOV  30H,#06
;***************************************************************
START:   MOV  P0,#0FFH            ;P0口都置1
            MOV  45H,#09             ;清除存放地址40H-45H的地址
            MOV 44H,#08
            MOV  43H,#07
            MOV  42H,#06
            MOV  41H,#05
            MOV  40H,#04
;***************************************************************
L2:      MOV  P0,#0FFH            ;P0口都置1
            MOV  R3,#0EFH            ;掃描指針初值(P14=0)
            MOV  R1,#00H             ;鍵盤取碼指針
L3:      MOV  A,R3                ;掃描指針載入累加器
            MOV  P1,A                ;輸入至P1掃描
            MOV  A,P1                ;讀入P1值
            MOV  R4,A                ;存入R4,以判斷按鈕是否放開?
            SETB C                   ;C=1
            MOV  R5,#03H             ;掃描P10-P12
L4:      RRC  A
            JNC  KEYIN               ;C=0則有鍵按下
            INC  R1                  ;無鍵按下則指針加1
            DJNZ R5,L4               ;三列掃描完后掃描下一行
            MOV  A,R3                ;載入掃描指針
            SETB C                   ;C=1
            RLC  A                   ;掃描下一行
            MOV  R3,A                ;存入掃描指針寄存器
            JC   L3                  ;C=1則4行未掃描完
            JMP  L2               ;C=0則4行已經(jīng)掃描完,回到第一行從新開始掃描
;*************************************************************
KEYIN:   MOV  R7,#10              ;消除抖動(dòng)
D1:      MOV  R6,#248
            DJNZ R6,$
            DJNZ R7,D1
D2:      MOV  A,P1
            XRL  A,R4                 ;按鈕放開否?
            JZ   D2                   ;A=R4則未放開,等待
            MOV  A,R1                 ;按鍵放開了,載入按鍵指針
            MOV  DPTR,#TABLE          ;數(shù)據(jù)指針指到TABLE
            MOVC A,@A+DPTR            ;至TABLE取碼
            MOV  R7,A                 ;取到按鍵值暫存入R7
            XRL  A,#0AH               ;是否按"*"
            JZ   SET0                 ;是則設(shè)定新密碼
            MOV  A,R7                 ;載入按鍵值
            XRL  A,#0BH               ;是否按"#"
            JZ   COMP                 ;是則去比較密碼
            MOV  A,R7                 ;不是則載入按鍵值
            XCH  A,40H                ;現(xiàn)按鍵值存入(40H)
            XCH  A,41H                ;舊(40H)值存入 (41H)
            XCH  A,42H                ;舊(41H)值存入 (42H)
            XCH  A,43H                ;舊(42H)值存入 (43H)
            XCH  A,44H                ;舊(43H)值存入 (44H)
            XCH  A,45H                ;舊(44H)值存入 (45H)
            JMP  L2
;********************************************************************
SET0:    MOV  R2,#06H              ;6個(gè)密碼
            MOV  R0,#40H              ;按鍵顯示地址
           MOV  R1,#30H              ;密碼存放地址
E1:      MOV  A,@R0                ;40H存入30H······45H存入35H
            XCH  A,@R1
            INC  R0
            INC  R1
            DJNZ R2,E1
            CALL DELAY                ;延時(shí)
E2:   JMP START                 ;************************************
;********************************************************************
COMP:    MOV  R1,#45H              ;按鍵顯示地址
            MOV  R0,#35H              ;密碼存放地址
            MOV  R2,#06H              ;6個(gè)碼
C1:      MOV  A,@R1                ;按鍵值與密碼值比較
            XRL  A,@R0
            JNZ  C3                   ;不同則報(bào)警
            DEC  R1                   ;相同則比較下一個(gè)碼
            DEC  R0
            DJNZ R2,C1
            CLR  P0.0                 ;令電鎖動(dòng)作
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            JMP  L2
C3:      CLR  P0.1
            CLR  P0.2
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            CALL DELAY
            JMP  L2
;*********************    延時(shí)時(shí)間    **************************
DELAY:   MOV  R7,#248
D3:      MOV  R6,#248
            DJNZ R6,$
            DJNZ R7,D3
            RET

            ORG  100H
TABLE:   DB   01H,02H,03H      ;鍵盤值
            DB   04H,05H,06H
            DB   07H,08H,09H
            DB   0AH,00H,0BH
            END

 

 

不知道你怎么輸進(jìn)去這么多的全角空格,keil不認(rèn),所以出錯(cuò)。


作者: ahshmj    時(shí)間: 2012-10-18 17:13
程序編譯能通過(試過了),是否能達(dá)到你的預(yù)期目的,就不知道了。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1