Thông báo

Collapse
No announcement yet.

trợ giúp sửa file này cái ạ , em bó tay :(

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • trợ giúp sửa file này cái ạ , em bó tay :(

    đề bài là:2 led đếm lẻ - 2 led đếm chẵn ra , đếm đồng thời



    CHAN EQU 30H
    LE EQU 31H
    BND EQU R2
    ORG 0000H

    JMP MAIN



    ORG 00BH
    MOV TH0,#HIGH(-50000)
    MOV TL0,#LOW(-50000)
    INC BND
    CJNE BND,#20,EXIT
    MAIN1:
    MOV BND,#0
    MOV LE,#1
    MAIN2:
    CALL GM_HT1
    INC LE
    ADD LE,#1
    CJNE LE,#19,MAIN2
    JMP MAIN1
    EXIT: RETI

    ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    MAIN: MOV DPTR,#MA7DOAN
    MOV IE,#10000010B
    MOV TMOD,#00000001B
    SETB TR0
    MOV BND,#0
    X1:
    MOV CHAN,#0
    X2:
    CALL GM_HT2
    INC CHAN
    ADD CHAN,#1
    CJNE CHAN,#20,X2
    JMP X1
    ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    GM_HT2:
    MOV A,CHAN
    MOV B,#10
    DIV AB
    MOVC A,@A+DPTR
    MOV A,21H ;CHUC
    MOV A,B
    MOVC A,@A+DPTR
    MOV A,22H ;DONVI
    MOV 6FH,#01
    DEL2: MOV 6EH,#0FFH
    DEL1: CALL HIENTHI
    DJNZ 6EH,DEL1
    DJNZ 6FH,DEL2
    RET
    HIENTHI:
    MOV P0,21H
    CLR P2.0
    CALL DELAY1MS
    SETB P2.0

    MOV P0,22H
    CLR P2.1
    CALL DELAY1MS
    SETB P2.1
    ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    GM_HT1:
    MOV A,LE
    MOV B,#10
    DIV AB
    MOVC A,@A+DPTR
    MOV A,24H ;CHUC
    MOV A,B
    MOVC A,@A+DPTR
    MOV A,25H ;DONVI
    MOV 6FH,#01
    DEL4: MOV 6EH,#0FFH
    DEL3: CALL HIENTHI1
    DJNZ 6EH,DEL3
    DJNZ 6FH,DEL4
    RET
    HIENTHI1:
    MOV P0,24H
    CLR P2.5
    CALL DELAY1MS
    SETB P2.5

    MOV P0,25H
    CLR P2.6
    CALL DELAY1MS
    SETB P2.6
    RET
    ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


    MA7DOAN: DP 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    $INCLUDE(TV_DELAY.ASM)
    end


    Các lỗi
    0030 1 CHAN EQU 30H
    2 LE EQU 31H
    _________________________________^
    *** ERROR #1, LINE #2 (0), SYNTAX ERROR

    94 MA7DOAN: DP 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    _________________________________________^
    *** ERROR #1, LINE #94 (66), SYNTAX ERROR

  • #2
    Nguyên văn bởi onimusha1491 Xem bài viết
    đề bài là:2 led đếm lẻ - 2 led đếm chẵn ra , đếm đồng thời

    ...


    Các lỗi
    0030 1 CHAN EQU 30H
    2 LE EQU 31H
    _________________________________^
    *** ERROR #1, LINE #2 (0), SYNTAX ERROR

    94 MA7DOAN: DP 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    _________________________________________^
    *** ERROR #1, LINE #94 (66), SYNTAX ERROR
    DP là sai rồi nhé. Phải là DB mới đúng.
    Còn 2 cái lỗi đầu: Về cú pháp thì không sai nhưng vẫn báo lỗi cú pháp thì chắc là do trình soạn thảo của bạn, nếu bạn dùng notepad của windows để soạn thảo thì nhiều khi nó có những ký tự trắng (ký tự không nhìn thấy bằng mắt) ở đầu câu. Bạn cần xem lại.

    Comment


    • #3
      mình dùng M-IDE biên dịch thi thấy dòng 1 không lỗi
      dòng 2 do bạn đặt tên biến LE có lẽ trùng với tên 1 hàm, thanh ghi nào đó,...... nên đặt lại tên khác sẽ không còn lỗi và nhớ sửa lại chỗ nào có LE.
      ở dòng 96 khai báo bảng giá trị của LED 7 đoạn thì dùng từ khóa DB nhé
      lệnh ADD ở dòng 21 và 37 phải thực hiện với thanh ghi A nhé. xem lại cấu trúc lệnh ADD. hoặc sửa lại là trước lệnh ADD bạn MOV giá trị biến đếm lẻ/chẵn vào thanh ghi A và thực hiện cộng.
      còn lỗi ở dòng CJNE mình không rõ nhưng nếu thay biến đếm lẽ/chẵn bằng thanh ghi A như ở trên đã MOV giá trị đếm vào rồi so sánh thì không bị lỗi.
      Thân! hi

      Comment

      Về tác giả

      Collapse

      onimusha1491 Tìm hiểu thêm về onimusha1491

      Bài viết mới nhất

      Collapse

      Đang tải...
      X