Thông báo

Collapse
No announcement yet.

[gấp] giúp lập trình ngôn ngữ ASM làm đồng hồ đơn giản.

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

  • [gấp] giúp lập trình ngôn ngữ ASM làm đồng hồ đơn giản.

    mình có làm mạch đồng hồ dùng 6 led 7 đoạn, không cần nút ấn hay báo thức gì cả, nói chung là rất đơn giản, chỉ cần hiển thị đếm giờ thôi. mình lập trình rồi nhưng các số nó cứ nhảy liên tục, mình không biết làm sao để lưu lại được hết. ai giúp mình sửa code với, mình cảm ơn nhiều lắm:




    ORG
    MAIN:
    MOV DPTR,#BM
    MOV R1,#0
    GIO:
    MOV R2,#0
    PHUT:
    MOV R3,#0
    GIAY:
    CALL TRABANG
    CALL QUETLED
    INC R3
    CJNE R3,#60,GIAY
    INC R1
    INC R1,#60,PHUT
    INC R2
    CJNE R2,#24,GIO
    SJMP MAIN
    ;=========
    TRABANG:
    MOV A,R1
    MOV B,#10
    DIV AB
    ;====
    MOVC A,@A+DPTR
    MOV 40H,A
    MOV A,B
    MOVC A,@A+DPTR
    MOV 41H,A
    ;====
    MOV A,R2
    MOV B,#10
    DIV AB
    MOVC A,@A+DPTR
    MOV 42H,A
    MOV A,B
    MOVC A,@A+DPTR
    MOV 43H,A
    ;=====
    MOV A,R3
    MOV B,#10
    DIV AB
    MOVC A,@A+DPTR
    MOV 44H,A
    MOV A,B
    MOVC A,@A+DPTR
    MOV 45H,A
    ;======
    RET
    ;=====
    QUETLED:
    MOV P0,#11111110B
    MOV P2,40H
    CALL TRE
    ;==========
    MOV P0,#11111101B
    MOV P2,41H
    CALL TRE
    ;========
    MOV P0,#11111011B
    MOV P2,42H
    CALL TRE
    ;=======
    MOV P0,#11110111B
    MOV P2,43H
    CALL TRE
    ;=======
    MOV P0,#11101111B
    MOV P2,44H
    CALL TRE
    ;==========
    MOV P0,#11011111B
    MOV P2,45H
    CALL TRE
    RET
    ;=========
    BM:
    DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
    ;=====
    TRE:
    MOV R4,#1
    L4:
    MOV R5,#200
    L5:
    MOV R6,#250
    L6:
    DJNZ R6,L6
    DJNZ R5,L5
    DJNZ R4,L4

    RET
    END

  • #2
    y sì cái code của bạn ko thể nào dịch ra đc file hex thì sao bạn biết nó chạy sai

    Comment


    • #3
      hình như code này dùng machine cycle để tính thời gian thì phải. dùng machine cycle kiểu này thì thời gian không chính xác đâu bạn à.

      Comment


      • #4
        Nguyên văn bởi chung1608 Xem bài viết
        y sì cái code của bạn ko thể nào dịch ra đc file hex thì sao bạn biết nó chạy sai

        nó chạy được mà bạn, nhưng số của nó cứ nháy liên tục. mình muốn làm sao mà số nó lưu lại được.

        Comment


        • #5
          Nguyên văn bởi condonhan Xem bài viết
          hình như code này dùng machine cycle để tính thời gian thì phải. dùng machine cycle kiểu này thì thời gian không chính xác đâu bạn à.
          thầy giao bài tập về làm đó bạn, bạn biết thì chỉnh giúp mình với.

          Comment


          • #6
            Nguyên văn bởi okemenqv Xem bài viết
            nó chạy được mà bạn, nhưng số của nó cứ nháy liên tục. mình muốn làm sao mà số nó lưu lại được.
            1 lệnh trong đó sai bảo đảm ko dịch đc. Bạn tìm đọc phương pháp quét led 7 đoạn mà đọc

            Comment


            • #7
              Nguyên văn bởi okemenqv Xem bài viết
              thầy giao bài tập về làm đó bạn, bạn biết thì chỉnh giúp mình với.
              ORG 0030H
              MAIN:
              MOV DPTR,#BM
              MOV R1,#0
              GIO:
              MOV R2,#0
              PHUT:
              MOV R3,#0
              GIAY:
              CALL TRABANG
              CALL QUETLED
              INC R3
              CJNE R3,#60,GIAY
              INC R1
              CJNE R1,#60,PHUT
              INC R2
              CJNE R2,#24,GIO
              SJMP MAIN
              ;=========
              TRABANG:
              MOV A,R1
              MOV B,#10
              DIV AB
              ;====
              MOVC A,@A+DPTR
              MOV 40H,A
              MOV A,B
              MOVC A,@A+DPTR
              MOV 41H,A
              ;====
              MOV A,R2
              MOV B,#10
              DIV AB
              MOVC A,@A+DPTR
              MOV 42H,A
              MOV A,B
              MOVC A,@A+DPTR
              MOV 43H,A
              ;=====
              MOV A,R3
              MOV B,#10
              DIV AB
              MOVC A,@A+DPTR
              MOV 44H,A
              MOV A,B
              MOVC A,@A+DPTR
              MOV 45H,A
              ;======
              RET
              ;=====
              QUETLED:
              MOV P0,#11111110B
              MOV P2,40H
              CALL TRE
              ;==========
              MOV P0,#11111101B
              MOV P2,41H
              CALL TRE
              ;========
              MOV P0,#11111011B
              MOV P2,42H
              CALL TRE
              ;=======
              MOV P0,#11110111B
              MOV P2,43H
              CALL TRE
              ;=======
              MOV P0,#11101111B
              MOV P2,44H
              CALL TRE
              ;==========
              MOV P0,#11011111B
              MOV P2,45H
              CALL TRE
              RET
              ;=========
              BM:
              DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H
              ;=====
              TRE:
              MOV R4,#1
              L4:
              MOV R5,#200
              L5:
              MOV R6,#250
              L6:
              DJNZ R6,L6
              DJNZ R5,L5
              DJNZ R4,L4

              RET
              END
              Khoan bàn tới giải thuật, bạn thử sửa 2 dòng lệnh chỗ mình tô đỏ xem có cải thiện được tình hình chút nào không?
              Công ty TNHH Tự Động Hóa Đạt Lân
              32/36, Ông Ích Khiêm, F14, Q11
              ĐT: 08.3974 7308 - 0937.197.001
              email:
              Webite:

              Comment

              Về tác giả

              Collapse

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

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

              Collapse

              • mèomướp
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi mèomướp
                Dạ hông dám làm thì chắc chắn sẽ mãi ko thể làm được đâu ạ. Nguồn xung dân dụng vài kw giờ rất nhìu ạ, sạc ô tô điện, máy hàn, lò vi sóng, âm ly... tùy chất lượng mà độ phức tạp sẽ khác nhau ạ. Và cái giá phải trả về kinh tế...
                hôm nay, 13:11
              • tuyennhan
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi tuyennhan
                Sửa dạng này thì chuyên còn không dám chắc khộng cháy nổ với linh kiện bán ngoài chợ nói gì khộng chuyên .
                hôm nay, 09:25
              • tuyennhan
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi tuyennhan
                Đúng rồi chọn mua theo tai . ca thì phải toàn dải nhạc thì chỉ cao và thấp thé nên loa ca thì nghe nhạc không hay và ngược lại .
                Muốn ca và nhạc đều hay thì phải dúng 2 giàn , còn nếu chỉ có 1 thì phải chỉnh sửa lại sao cho ca và nhạc đều được không quá dở ....
                hôm nay, 09:10
              • Ng.Phuong.5
                Vấn đề in lỗ khoan ra pdf ở Orcad 9.2
                bởi Ng.Phuong.5
                Vấn đề cũ: khi in mạch ra pdf và bấm chọn Keep Drill Holes Open, in ra thì pdf trắng đen các lỗ chân linh kiện như nhau. Mặc dù có linh kiện phần Drill là 1mm, có linh kiện thì là 3mm. Cho em hỏi cách sửa phần này ở Orcad 9.2 với ạ.
                Mấy con...
                Hôm qua, 19:44
              • viettinh
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi viettinh
                Bác nói đúng quá. Cơ mà muốn mua hàng chính hãng, hàng thương hiệu mà tai lại hợp hàng tầu mới khổ chứ.
                Đang tính mua cái loa tầu nữa cột đằng sau loa này, Loa sony chỉ để hát nhép thôi, có dc k các bác ...
                Hôm qua, 18:12
              • nguyendinhvan
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi nguyendinhvan
                Theo tôi thì khi hpj sản xuất ra cái loa đó, đã có nhiều chuyên gia kỹ thuật hiệu chỉnh, tính toán các phần tử kỹ lưỡng rồi.
                Bây giờ tính toán hiệu chỉnh lại cần có đội ngũ tương đương với nhà sản xuất.
                Cách đơn giản...
                Hôm qua, 00:04
              • mèomướp
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi mèomướp
                Dạ cháu có ý tốt muốn động viên chú ấy ngâm cứu khoa học thôi ạ. Về phần kiểm tra dao động thì chú ấy chưa biết thì sẽ tìm hiểu được là cần những gì ạ, chắc chắn là khi hướng dẫn phần ấy các cô chú nào đó sẽ lưu ý cần loại sò công suất ra tránh cháy nổ rồi ạ....
                08-01-2025, 19:02
              • tuyennhan
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi tuyennhan
                Chủ thớt hỏi có kiểm tra được dao động mà không cấp nguồn thì rõ trình ở mức nào mà mèo còn xúi ngâm cứu nữa ác vậy ....
                08-01-2025, 15:43
              • tuyennhan
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi tuyennhan
                Loa bass đấu trực tiếp không qua phân tần để thành loa toàn dải xem có thoát tiếng khộng , nếu không thoát cần phải sửa lại mạch cs hay âm sắc nếu đủ trình còn nếu thoát ca hay nhưng chưa vừa ý vì bass kém chăc thì đấu lại như cũ và đấu thêm loa mid treble bên ngoài .
                08-01-2025, 15:28
              • mèomướp
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi mèomướp
                Dạ loa tép bé xíu như ngón chân cái thôi ạ. Thiếu gì chỗ để đâu. Quan trọng là gắn thêm nó loa nghe ok hay ko thôi ạ...
                08-01-2025, 11:44
              Đang tải...
              X