Thông báo

Collapse
No announcement yet.

Code Cho VĐK 8051 Bằng Assemnly Không Chậy.

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

  • #16
    Nguyên văn bởi huuthobka Xem bài viết
    mình trả lời thế này:
    câu 1: mình khởi động DPTR để cho nó chỉ đến vị trí bảng mã hiển thị, để láy mã hiển thị rồi lưu mã hiển thị vào hai thanh ghi 25h và 24h ,sau đó mình lấy mã lưu trong hai thanh ghi này ra hiển thị mà.
    câu 2: chỗ này mình nhầm, mình dùng transistor NPN nên tích cực mức 1.
    câu 3: theo mình nghĩ là cần hai thanh ghi, vì mỗi thanh ghi chứa một mã hiển thị của một led 7-seg.

    Mong bạn góp ý thêm, mình vẫn chưa làm được nó chậy.
    cảm ơn
    Hiểu ý tưởng của bạn rồi. Nhìn code mình đoán nó chưa chạy ở chỗ:
    Khi bạn lưu thì bạn lưu giá trị vào 2 thanh ghi 25H24H (ở dạng hexa), nhưng khi lấy ra để hiển thị thì lại lấy ở thanh ghi 25 (ở dạng thập phân). Có lẽ đây là nguyên nhân không xuất dữ liệu ra để hiển thị.
    => Cần sửa lại đoạn chương trình DISPLAY thành:

    Code:
    DISPLAY:    MOV A,#00000001B
                 MOV R0,#25H 
    DISPLAY1:    MOV P2,@R0
                 MOV P1,A
                 LCALL DELAY
                 MOV P1,#00H
                 DEC R0
                 RL A
                 CJNE R0,#23H,DISPLAY1
                 RET

    Comment


    • #17
      Mình đã sửa mà chẳng hiểu xao vẫn không thấy động tĩnh gì trên chân P2 cả ?
      mình gửi code + mạch mô phỏng bạn xem hộ mình cái: Diem_quet_led.7z ; nếu không bạn có thể gửi mình cái code mẫu được không ? mình tìm trên mạng không thấy có ví dụ nào về quét led dùng transistor cả, có dùng thì họ cũng viết bằng ngôn ngữ C, mà mình chưa tìm hiểu về lập trình C cho VĐK.

      các bạn giúp mình nha, cái bài này lang thang tìm kiếm hơn ngày rồi mà vẫn chưa làm được, bắt đầu thấy nản ghê .

      vừa mô phỏng lại: chương trình của mình nó bị kẹt chỗ nào đó mà mình chưa tìm ra, nó chỉ hiển thị số mà mình nạp cho nó ban đầu, không tự động đếm lên được ???
      Last edited by huuthobka; 09-08-2012, 22:52.

      Comment


      • #18
        Nguyên văn bởi huuthobka Xem bài viết
        Mình đã sửa mà chẳng hiểu xao vẫn không thấy động tĩnh gì trên chân P2 cả ?
        mình gửi code + mạch mô phỏng bạn xem hộ mình cái: Diem_quet_led.7z ; nếu không bạn có thể gửi mình cái code mẫu được không ? mình tìm trên mạng không thấy có ví dụ nào về quét led dùng transistor cả, có dùng thì họ cũng viết bằng ngôn ngữ C, mà mình chưa tìm hiểu về lập trình C cho VĐK.

        các bạn giúp mình nha, cái bài này lang thang tìm kiếm hơn ngày rồi mà vẫn chưa làm được, bắt đầu thấy nản ghê .

        vừa mô phỏng lại: chương trình của mình nó bị kẹt chỗ nào đó mà mình chưa tìm ra, nó chỉ hiển thị số mà mình nạp cho nó ban đầu, không tự động đếm lên được ???
        Bạn thay 2 dòng: LCALL MAIN0LCALL TIME0 thành LJMP MAIN0LJMP TIME0 (ở đây dùng lệnh nhảy chứ không dùng lệnh gọi). Ở trình phục vụ ngắt TIME0 khi trở về thì dùng lệnh RETI chứ không dùng lệnh RET.
        Sửa xong mô phỏng sẽ thấy có tín hiệu xuất ra P2 còn Led có sáng thì bạn phải xem lại phần cứng.
        P/S: Mình không biết gì về điện tử nên chỉ góp ý được đến vậy thôi. Thân !

        Comment


        • #19
          Nguyên văn bởi Ck33spkt Xem bài viết
          Bạn thay 2 dòng: LCALL MAIN0LCALL TIME0 thành LJMP MAIN0LJMP TIME0 (ở đây dùng lệnh nhảy chứ không dùng lệnh gọi). Ở trình phục vụ ngắt TIME0 khi trở về thì dùng lệnh RETI chứ không dùng lệnh RET.
          Sửa xong mô phỏng sẽ thấy có tín hiệu xuất ra P2 còn Led có sáng thì bạn phải xem lại phần cứng.
          P/S: Mình không biết gì về điện tử nên chỉ góp ý được đến vậy thôi. Thân !
          Ok,cảm ơn ban nhiều.
          một phần phần cứng có vấn đề, một phần code của mình có vấn đề,
          mình đã ghép nối lại phần cứng, và mạch đã đếm, nhưng thời gian để tăng lên một đơn vị rất rất châm, mình không hiểu tại xao, đã thử chỉnh nhiều về thời gian đếm và số đếm tối đa, nhưng vẫn không ăn thua,
          mong các bạn vào giúp mình :
          Dem_quet_led.7z

          Comment


          • #20
            Nguyên văn bởi huuthobka Xem bài viết
            Ok,cảm ơn ban nhiều.
            một phần phần cứng có vấn đề, một phần code của mình có vấn đề,
            mình đã ghép nối lại phần cứng, và mạch đã đếm, nhưng thời gian để tăng lên một đơn vị rất rất châm, mình không hiểu tại xao, đã thử chỉnh nhiều về thời gian đếm và số đếm tối đa, nhưng vẫn không ăn thua,
            mong các bạn vào giúp mình :
            Dem_quet_led.7z
            Thời gian lâu thì giảm số vòng lặp hoặc giảm thời gian tràn của timer đi là được thôi!

            Comment


            • #21
              Nguyên văn bởi Ck33spkt Xem bài viết
              Thời gian lâu thì giảm số vòng lặp hoặc giảm thời gian tràn của timer đi là được thôi!
              Mình đã giảm thời gian tràn và số lần tràn nhiều mà nó không thay đổi gì cả mới chán.
              đang hè nên không hỏi thầy và ai được .mong các bạn vào giúp.

              Comment


              • #22
                cai nay mjnh cung biet so qua
                theo mjnh biet hjnh nhu ban bi loi o phan hang so
                con cach khac phuc thi de mjnh xem sao da nha

                Comment


                • #23
                  Nguyên văn bởi clk04dt2 Xem bài viết
                  cai nay mjnh cung biet so qua
                  theo mjnh biet hjnh nhu ban bi loi o phan hang so
                  con cach khac phuc thi de mjnh xem sao da nha
                  Ok mong bạn giúp đỡ. thank

                  Comment


                  • #24
                    Nguyên văn bởi huuthobka Xem bài viết
                    Mình đã giảm thời gian tràn và số lần tràn nhiều mà nó không thay đổi gì cả mới chán.
                    đang hè nên không hỏi thầy và ai được .mong các bạn vào giúp.
                    để mô phỏng led 7 đoạn trong proteus thay led đơn thành led khối .
                    thay tranzitor bằng cổng not.
                    tham khảo thêm code đã chỉnh sửa sau:
                    cách 1:
                    Code:
                    ORG 00H
                                LJMP MAIN0               ; NHAY KHOI VECTOR NGAT
                                ORG 000BH
                                LJMP TIME0                 ; CHAY DEN VECTOR NGAT
                                ORG 0030H                  ; BAT DAU CHUONG TRINH CHINH
                    MAIN0:      MOV TMOD,#01           ; KHOI DONG BO DINH THOI 0 CHE DO 1
                                MOV IE,#10000010B               ; CHO PHEP NGAT
                                MOV TH0,#HIGH(-50000)    ; NAP GIA TRI BAN DAU CHO BO DINH THOI
                                MOV TL0,#LOW(-50000)
                                MOV DPTR,#MA_H_THI         ; CHI DEN BANG HIEN THI
                                CLR TF0         
                                SETB TR0                  ; KHOI DONG BO DINH THOI
                    MAIN1:      MOV R2,#0
                                MOV R1,#0
                                MOV R5,#0
                    MAIN2:      LCALL GIAIMA
                    MAIN3:      LCALL DISPLAY
                                CJNE R2,#20,kt_co_c              ; DOI NGAT 20*50000  <-> 1S
                    lon_hon:     MOV R2,#0                        ;  XOA BIEN DEM SO LAN NGAT DE CHUAN BI CHO LAN SAU
                                jmp tang
                    kt_co_c:    jc  MAIN3       ;kiem tra co C neu r2>20 gan r2=0 
                                jmp  lon_hon
                    
                    tang:        INC R5                            ; TANG HANG DON VI
                                CJNE R5,#10,MAIN2                 ; KIEM TRA HANG DON VI XEM BANG 10 CHUA,NEU BANG 10 ROI THI XOA HANG DON VI VÀ TANG HANG CHUC
                                MOV R5,#0  
                                INC R1
                                CJNE R1,#2,MAIN2                ; KIEM TRA HANG CHUC XEM BANG 10 CHUA ?
                                LJMP MAIN1
                    GIAIMA:     MOV A,R5                         ;  CHUONG TRÌNH CON NHO NAY LÀ LAY MA HIEN THI HANG CHUC VA HANG DON VI TU BANG MA ROI
                                MOVC A,@A+DPTR                     ;      CAT VAO HAI THANH GHI 25H VA 24H
                                MOV 25H,A                              
                                MOV A,R1
                                MOVC A,@A+DPTR
                                MOV 24H,A
                                RET      
                    DISPLAY:    MOV A,#11111110B                  ;  CHUONG TRINH CON HIEN THI LEN MAN HINH
                                MOV R0,#25H                          ;  LAY MA HIEN THI HANG DON VI
                    DISPLAY1:   MOV P2,@R0                           ; CHUYEN MA HIEN THI VAO CHAN P2
                                MOV P1,A                           ;   QUET DE HIEN THI
                                LCALL DELAY                           ; TAO THOI GIAN TRE
                                MOV P1,#0xff                           ; XOA HIEN THI
                                DEC R0
                            ;    SETB C                               ; LAP LAI DE HIEN THI CHU SO HANG CHUC
                                RL A                               ;
                                CJNE R0,#23h,DISPLAY1                ;
                                RET
                    TIME0:      INC R2
                                CLR TR0
                                MOV TH0,#HIGH(-50000)        ; NAP LAI GIA TRI BAN DAU CHO BO DINH THOI
                                MOV TL0,#LOW(-50000)
                                SETB TR0
                                RETI
                    DELAY:      MOV R6,#10                      ; CHUONG TRINH CON TAO TRE
                    DELAY1:     MOV R7,#100
                                DJNZ R7,$
                                DJNZ R6,DELAY1
                                RET
                    MA_H_THI:   DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
                                END
                    cách 2:
                    Code:
                    ORG 00H
                                LJMP MAIN0               ; NHAY KHOI VECTOR NGAT
                                ORG 000BH
                                LJMP TIME0                 ; CHAY DEN VECTOR NGAT
                                ORG 0030H                  ; BAT DAU CHUONG TRINH CHINH
                    MAIN0:      MOV TMOD,#01           ; KHOI DONG BO DINH THOI 0 CHE DO 1
                                MOV IE,#10000010B               ; CHO PHEP NGAT
                                MOV TH0,#HIGH(-50000)    ; NAP GIA TRI BAN DAU CHO BO DINH THOI
                                MOV TL0,#LOW(-50000)
                                MOV DPTR,#MA_H_THI         ; CHI DEN BANG HIEN THI
                                CLR TF0         
                                SETB TR0                  ; KHOI DONG BO DINH THOI
                    MAIN1:      MOV R2,#0
                                MOV R1,#0
                                MOV R5,#0
                    MAIN2:      LCALL GIAIMA
                    MAIN3:      LCALL DISPLAY
                                jmp   MAIN3
                    tang:        INC R5                            ; TANG HANG DON VI
                                CJNE R5,#10,GIAIMA                 ; KIEM TRA HANG DON VI XEM BANG 10 CHUA,NEU BANG 10 ROI THI XOA HANG DON VI VÀ TANG HANG CHUC
                                MOV R5,#0  
                                INC R1
                                CJNE R1,#2,GIAIMA                ; KIEM TRA HANG CHUC XEM BANG 10 CHUA ?
                                MOV R1,#0
                                MOV R5,#0
                    GIAIMA:     MOV A,R5                         ;  CHUONG TRÌNH CON NHO NAY LÀ LAY MA HIEN THI HANG CHUC VA HANG DON VI TU BANG MA ROI
                                MOVC A,@A+DPTR                     ;      CAT VAO HAI THANH GHI 25H VA 24H
                                MOV 25H,A                              
                                MOV A,R1
                                MOVC A,@A+DPTR
                                MOV 24H,A
                                RET      
                    DISPLAY:    MOV A,#11111110B                  ;  CHUONG TRINH CON HIEN THI LEN MAN HINH
                                MOV R0,#25H                          ;  LAY MA HIEN THI HANG DON VI
                    DISPLAY1:   MOV P2,@R0                           ; CHUYEN MA HIEN THI VAO CHAN P2
                                MOV P1,A                           ;   QUET DE HIEN THI
                                LCALL DELAY                           ; TAO THOI GIAN TRE
                                MOV P1,#0xff                           ; XOA HIEN THI
                                DEC R0
                            ;    SETB C                               ; LAP LAI DE HIEN THI CHU SO HANG CHUC
                                RL A                               ;
                                CJNE R0,#23h,DISPLAY1                ;
                                RET
                    TIME0:      INC R2
                                cjne r2,#20,chua_du
                                mov r2,#0
                                call tang
                    chua_du:
                                CLR TR0
                                MOV TH0,#HIGH(-50000)        ; NAP LAI GIA TRI BAN DAU CHO BO DINH THOI
                                MOV TL0,#LOW(-50000)
                                SETB TR0
                                RETI
                    DELAY:      MOV R6,#10                      ; CHUONG TRINH CON TAO TRE
                    DELAY1:     MOV R7,#100
                                DJNZ R7,$
                                DJNZ R6,DELAY1
                                RET
                    MA_H_THI:   DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
                                END
                    Attached Files
                    Last edited by tdm; 11-08-2012, 00:58.
                    |

                    Comment


                    • #25
                      Nguyên văn bởi tdm Xem bài viết
                      để mô phỏng led 7 đoạn trong proteus thay led đơn thành led khối .
                      thay tranzitor bằng cổng not.
                      tham khảo thêm code đã chỉnh sửa sau:
                      cách 1:
                      Code:
                      ORG 00H
                                  LJMP MAIN0               ; NHAY KHOI VECTOR NGAT
                                  ORG 000BH
                                  LJMP TIME0                 ; CHAY DEN VECTOR NGAT
                                  ORG 0030H                  ; BAT DAU CHUONG TRINH CHINH
                      MAIN0:      MOV TMOD,#01           ; KHOI DONG BO DINH THOI 0 CHE DO 1
                                  MOV IE,#10000010B               ; CHO PHEP NGAT
                                  MOV TH0,#HIGH(-50000)    ; NAP GIA TRI BAN DAU CHO BO DINH THOI
                                  MOV TL0,#LOW(-50000)
                                  MOV DPTR,#MA_H_THI         ; CHI DEN BANG HIEN THI
                                  CLR TF0         
                                  SETB TR0                  ; KHOI DONG BO DINH THOI
                      MAIN1:      MOV R2,#0
                                  MOV R1,#0
                                  MOV R5,#0
                      MAIN2:      LCALL GIAIMA
                      MAIN3:      LCALL DISPLAY
                                  CJNE R2,#20,kt_co_c              ; DOI NGAT 20*50000  <-> 1S
                      lon_hon:     MOV R2,#0                        ;  XOA BIEN DEM SO LAN NGAT DE CHUAN BI CHO LAN SAU
                                  jmp tang
                      kt_co_c:    jc  MAIN3       ;kiem tra co C neu r2>20 gan r2=0 
                                  jmp  lon_hon
                      
                      tang:        INC R5                            ; TANG HANG DON VI
                                  CJNE R5,#10,MAIN2                 ; KIEM TRA HANG DON VI XEM BANG 10 CHUA,NEU BANG 10 ROI THI XOA HANG DON VI VÀ TANG HANG CHUC
                                  MOV R5,#0  
                                  INC R1
                                  CJNE R1,#2,MAIN2                ; KIEM TRA HANG CHUC XEM BANG 10 CHUA ?
                                  LJMP MAIN1
                      GIAIMA:     MOV A,R5                         ;  CHUONG TRÌNH CON NHO NAY LÀ LAY MA HIEN THI HANG CHUC VA HANG DON VI TU BANG MA ROI
                                  MOVC A,@A+DPTR                     ;      CAT VAO HAI THANH GHI 25H VA 24H
                                  MOV 25H,A                              
                                  MOV A,R1
                                  MOVC A,@A+DPTR
                                  MOV 24H,A
                                  RET      
                      DISPLAY:    MOV A,#11111110B                  ;  CHUONG TRINH CON HIEN THI LEN MAN HINH
                                  MOV R0,#25H                          ;  LAY MA HIEN THI HANG DON VI
                      DISPLAY1:   MOV P2,@R0                           ; CHUYEN MA HIEN THI VAO CHAN P2
                                  MOV P1,A                           ;   QUET DE HIEN THI
                                  LCALL DELAY                           ; TAO THOI GIAN TRE
                                  MOV P1,#0xff                           ; XOA HIEN THI
                                  DEC R0
                              ;    SETB C                               ; LAP LAI DE HIEN THI CHU SO HANG CHUC
                                  RL A                               ;
                                  CJNE R0,#23h,DISPLAY1                ;
                                  RET
                      TIME0:      INC R2
                                  CLR TR0
                                  MOV TH0,#HIGH(-50000)        ; NAP LAI GIA TRI BAN DAU CHO BO DINH THOI
                                  MOV TL0,#LOW(-50000)
                                  SETB TR0
                                  RETI
                      DELAY:      MOV R6,#10                      ; CHUONG TRINH CON TAO TRE
                      DELAY1:     MOV R7,#100
                                  DJNZ R7,$
                                  DJNZ R6,DELAY1
                                  RET
                      MA_H_THI:   DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
                                  END
                      cách 2:
                      Code:
                      ORG 00H
                                  LJMP MAIN0               ; NHAY KHOI VECTOR NGAT
                                  ORG 000BH
                                  LJMP TIME0                 ; CHAY DEN VECTOR NGAT
                                  ORG 0030H                  ; BAT DAU CHUONG TRINH CHINH
                      MAIN0:      MOV TMOD,#01           ; KHOI DONG BO DINH THOI 0 CHE DO 1
                                  MOV IE,#10000010B               ; CHO PHEP NGAT
                                  MOV TH0,#HIGH(-50000)    ; NAP GIA TRI BAN DAU CHO BO DINH THOI
                                  MOV TL0,#LOW(-50000)
                                  MOV DPTR,#MA_H_THI         ; CHI DEN BANG HIEN THI
                                  CLR TF0         
                                  SETB TR0                  ; KHOI DONG BO DINH THOI
                      MAIN1:      MOV R2,#0
                                  MOV R1,#0
                                  MOV R5,#0
                      MAIN2:      LCALL GIAIMA
                      MAIN3:      LCALL DISPLAY
                                  jmp   MAIN3
                      tang:        INC R5                            ; TANG HANG DON VI
                                  CJNE R5,#10,GIAIMA                 ; KIEM TRA HANG DON VI XEM BANG 10 CHUA,NEU BANG 10 ROI THI XOA HANG DON VI VÀ TANG HANG CHUC
                                  MOV R5,#0  
                                  INC R1
                                  CJNE R1,#2,GIAIMA                ; KIEM TRA HANG CHUC XEM BANG 10 CHUA ?
                                  MOV R1,#0
                                  MOV R5,#0
                      GIAIMA:     MOV A,R5                         ;  CHUONG TRÌNH CON NHO NAY LÀ LAY MA HIEN THI HANG CHUC VA HANG DON VI TU BANG MA ROI
                                  MOVC A,@A+DPTR                     ;      CAT VAO HAI THANH GHI 25H VA 24H
                                  MOV 25H,A                              
                                  MOV A,R1
                                  MOVC A,@A+DPTR
                                  MOV 24H,A
                                  RET      
                      DISPLAY:    MOV A,#11111110B                  ;  CHUONG TRINH CON HIEN THI LEN MAN HINH
                                  MOV R0,#25H                          ;  LAY MA HIEN THI HANG DON VI
                      DISPLAY1:   MOV P2,@R0                           ; CHUYEN MA HIEN THI VAO CHAN P2
                                  MOV P1,A                           ;   QUET DE HIEN THI
                                  LCALL DELAY                           ; TAO THOI GIAN TRE
                                  MOV P1,#0xff                           ; XOA HIEN THI
                                  DEC R0
                              ;    SETB C                               ; LAP LAI DE HIEN THI CHU SO HANG CHUC
                                  RL A                               ;
                                  CJNE R0,#23h,DISPLAY1                ;
                                  RET
                      TIME0:      INC R2
                                  cjne r2,#20,chua_du
                                  mov r2,#0
                                  call tang
                      chua_du:
                                  CLR TR0
                                  MOV TH0,#HIGH(-50000)        ; NAP LAI GIA TRI BAN DAU CHO BO DINH THOI
                                  MOV TL0,#LOW(-50000)
                                  SETB TR0
                                  RETI
                      DELAY:      MOV R6,#10                      ; CHUONG TRINH CON TAO TRE
                      DELAY1:     MOV R7,#100
                                  DJNZ R7,$
                                  DJNZ R6,DELAY1
                                  RET
                      MA_H_THI:   DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
                                  END
                      bạn cho mình hỏi chỗ đoạn mình bôi mầu đỏ ở cách 1 cái là , xao tao phải thêm lệnh JC vào làm gì nhỉ ? khi thực hiện lệnh CJNE ở trên thì nó có ảnh hưởng đến cờ CY rồi nên cái lệnh JC mình không hiểu có tác dụng gì nữa, tuy nhiên mình thử xóa đi thì nó lại chậy sai, không hiểu ở đây có điều gì đó mình chưa nghĩ ra, mong bạn giải thích hộ mình .cảm ơn.
                      cách hai thì mình hiểu, tuy nhiên mình mong bạn chỉ ra lỗi sai trong thuật toán của mình.
                      cảm ơn

                      Comment


                      • #26
                        Sau một ngày ngâm cứu mình vẫn chưa trả lời được tại xao lại dùng thêm lệnh "JC" . trong đầu chỉ có duy nhất một cách trả lời là: trong khi đếm thì "xẽ có lúc "lênh CJNE bỏ qua kiểm tra R2=20, tức là R2 đã lên đến giá trị 21. do đó cần phải thêm lệnh JC.

                        Mình chỉ nghĩ được như vậy, mong các bạn vào góp ý thêm, (nếu như suy nghĩ của mình đúng thì đúng là kiểm tra CJNE tai hại ghê)

                        Comment


                        • #27
                          Nguyên văn bởi huuthobka Xem bài viết
                          Sau một ngày ngâm cứu mình vẫn chưa trả lời được tại xao lại dùng thêm lệnh "JC" . trong đầu chỉ có duy nhất một cách trả lời là: trong khi đếm thì "xẽ có lúc "lênh CJNE bỏ qua kiểm tra R2=20, tức là R2 đã lên đến giá trị 21. do đó cần phải thêm lệnh JC.

                          Mình chỉ nghĩ được như vậy, mong các bạn vào góp ý thêm, (nếu như suy nghĩ của mình đúng thì đúng là kiểm tra CJNE tai hại ghê)
                          chính xác là vậy.
                          Last edited by tdm; 11-08-2012, 23:28. Lý do: bị tẩu hỏa nhập ma
                          |

                          Comment


                          • #28
                            Nguyên văn bởi tdm Xem bài viết
                            chính xác là vậy.
                            Ok, cảm ơn bạn. bài này làm mình không học được môn nào khác hơn 3 ngày rồi, giờ thì nhẹ nhàng rồi,
                            thank nha. hehe

                            Comment


                            • #29
                              Nguyên văn bởi tdm Xem bài viết
                              chính xác là vậy.
                              làm thế chi cho phức tạp code, sao không quản lý toàn bộ R2 trong trình phục vụ ngắt

                              Comment


                              • #30
                                các bạn giúp mình giải quyết vấn đề này cái:
                                bài mình hỏi là viết code sáng lần lượt 32 led, mỗi lần chỉ có 1 lẽ sáng thôi. mọi lần mình viết theo cách khác, hôm nay lên mạng gặp code thấy ngắn hơn, nhưng khi mô phỏng thử thì nó chậy sai.

                                các bạn kiểm tra xem code này sai cú pháp ở đâu mà nó chỉ nháy p0.0 phát rồi thôi luôn:
                                Code:
                                            ORG 00H
                                		    MOV P0,#0FFH
                                			MOV P1,#0FFH
                                			MOV P2,#0FFH
                                			MOV P3,#0FFH
                                     		CLR C
                                LAP_LAI:    MOV A,P0
                                            RLC A
                                            MOV P0,A
                                            MOV A,P1
                                            RLC A
                                            MOV P1,A
                                			MOV A,P2
                                			RLC A
                                			MOV P2,A
                                			MOV A,P3
                                			RLC A
                                			MOV P3,A
                                            ACALL DELAY
                                            LJMP LAP_LAI			
                                DELAY:      MOV R7,#250
                                DELAY1:     MOV R6,#250
                                			DJNZ R6,$
                                			DJNZ R7,DELAY1
                                			RET
                                			END
                                nạp thử code sau vào thì lại chậy đúng:

                                Code:
                                            ORG 00H
                                		    MOV P0,#0FFH
                                			MOV P1,#0FFH
                                			MOV P2,#0FFH
                                			MOV P3,#0FFH
                                     		CLR C
                                HERE0:    	MOV A,P0
                                HERE1:      RLC A
                                			MOV P0,A
                                			ACALL DELAY
                                			JC HERE1
                                         	MOV A,P1
                                HERE2:      RLC A
                                			MOV P1,A
                                			ACALL DELAY
                                			JC HERE2
                                			MOV A,P2
                                HERE3:      RLC A
                                			MOV P2,A
                                			ACALL DELAY
                                			JC HERE3
                                			MOV A,P3
                                HERE4:      RLC A
                                			MOV P3,A
                                			ACALL DELAY
                                			JC HERE4
                                			JMP HERE0 
                                DELAY:      MOV R7,#250
                                DELAY1:     MOV R6,#250
                                			DJNZ R6,$
                                			DJNZ R7,DELAY1
                                			RET
                                			END
                                các bạn tải luôn phần cứng mình nối về để mô phỏng thử xem : TEST.7z

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X