Thông báo

Collapse
No announcement yet.

Giao tiep 89 voi 555

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

  • Giao tiep 89 voi 555

    Chào các bạn !
    Mình là Thành U40 rồi, nhưng rất thích học 89c51.
    Các bạn cho Thành hỏi cách giao tiếp của NE555 để lấy xung cấp cho AT89C51 với, và phải khai báo gì cho 89C51 hiểu là mình dùng xung ngoài không ?
    Mong các bạn giúp đỡ và đừng cười mình nha.( mình đang dùng ASSEMBLER)
    Quan niệm của mình là không giấu dốt , các gì không biết thì phải học hỏi .
    E-mail của Thành là : Ngocquynh.ds@gmail.com hoặc Ngocquynhdesign@yahoo.com - Đt : 090.714.7968.
    Mong nhận được sự giúp đỡ của các bạn.
    Chào thân ái.

  • #2
    Bác đọc phần ngắt, cụ thể là ngắt ngoài, trong sách sẽ có chỗ nói rõ!
    Cứ nối 555 đến chân ngắt, xong lập trình xử lý ngắt để tăng số xung đếm được lên! Đó là ví dụ đơn giản nhất để đếm xung từ 555!

    Comment


    • #3
      Tôi hiểu ý câu hỏi của bạn Thanhtn chưa rõ lắm:
      - Nếu bạn định dùng 555 để cấp xung làm nguồn tín hiệu cho 89C51 để làm gì đó (đếm, kích hoạt sự kiện, chuẩn mốc thời gian...) thì sử dụng ngắt ngoài như trên đưa ra là OK. Chú ý sử dụng cùng nguồn 5V cho 555 để đảm bảo tương thích mức LOGIC.
      - Nhưng nếu bạn định sử dụng 555 để làm nguồn dao động cấp xung clock cho 89C51:
      + Về nguyên tắc, các chíp đều có thể dùng nguồn xung clock từ các hệ thống khác bên ngoài "bơm" vào (ví dụ điển hình như bộ nạp 89C51 Master Chip & Slave Chip...)
      + Trong một số ứng dụng rẻ tiền, nhằm tiết kiệm chi phí, một số thiết kế sử dụng chip không có dao động Thạch anh và dùng R-C bên ngoài kết hợp với mạch dao động trong chip là đủ. (Ví dụ như bọn HOLTEK thường hay chơi kiểu này...)
      + Nếu bạn định dùng 555 để làm nguồn "bơm" xung clock cho 89C51(đương nhiên 555 dao động phải có R-C rồi) thì nên cân nhắc xem về độ ổn định của hệ thống, và xem lại datasheet của 555 xem tần số làm việc Max lên đến bao nhiêu (lâu ko xài quên mất rồi). Vả lại như vậy thì thiết kế phức tạp quá, lại đắt đỏ hơn 1 chú thạch anh nhiều...

      Comment


      • #4
        Tôi đoán là bác Thanh dùng 555 cấp xung cho timer để dễ dàng điều chỉnh việc thời gian delay trong chương trình của 89C51, viết hàm delay dùng timer, dùng biến trở để chỉnh xung ra cho 555. Rất tiếc tôi không biết lắp mạch dùng 555, chỉ biết nó là con tạo xung. Mong các cao nhân cho cái mạch !

        Comment


        • #5
          Nguyên văn bởi bocodai
          Tôi đoán là bác Thanh dùng 555 cấp xung cho timer để dễ dàng điều chỉnh việc thời gian delay trong chương trình của 89C51, viết hàm delay dùng timer, dùng biến trở để chỉnh xung ra cho 555. Rất tiếc tôi không biết lắp mạch dùng 555, chỉ biết nó là con tạo xung. Mong các cao nhân cho cái mạch !
          Tặng các bạn chưong trình nho nhỏ giúp thiết kế với 555!
          Attached Files

          Comment


          • #6
            Cám ơn bạn Thuaimi nhiều nha .
            Ý tưởng của Thành là bơm xung từ 555 vào 89 để tiện cho việc điểu chỉnh VR dao động của 555.
            Vấn đề là viết chương trình ngắt ngoài như thế nào thì tối ưu bộ nhớ của 89.
            như bạn nói :xem lại datasheet của 555 xem tần số làm việc Max lên đến bao nhiêu thì Thành chưa rỏ . Mong bạn chỉ giáo thêm
            Cám ơn tất cả các bạn quan tâm
            ThànhTN

            Comment


            • #7
              Nguyên văn bởi Thanhtn
              xem lại datasheet của 555 xem tần số làm việc Max lên đến bao nhiêu thì Thành chưa rỏ . Mong bạn chỉ giáo thêm
              Cám ơn tất cả các bạn quan tâm
              ThànhTN
              Max 500Khz

              Comment


              • #8
                Nguyên văn bởi Thanhtn
                Cám ơn bạn Thuaimi nhiều nha .
                Ý tưởng của Thành là bơm xung từ 555 vào 89 để tiện cho việc điểu chỉnh VR dao động của 555.
                Vấn đề là viết chương trình ngắt ngoài như thế nào thì tối ưu bộ nhớ của 89.
                như bạn nói :xem lại datasheet của 555 xem tần số làm việc Max lên đến bao nhiêu thì Thành chưa rỏ . Mong bạn chỉ giáo thêm
                Cám ơn tất cả các bạn quan tâm
                ThànhTN
                Việc tối ưu bộ nhớ của chip là do các thuật toán và mức độ phức tạp (ứng dụng) của chương trình. Chương trình phục vụ ngắt ngoài (cũng như đối với các phục vụ ngắt khác) là tùy theo yêu cầu và ý đồ của người thiết kế. Nói chung thì bao gồm các vấn đề cơ bản sau (ví dụ đối với họ 89):
                - Chương trình chính (Khởi tạo, cấm hoặc cho phép ngắt, ngắt ngoài có mức ưu tiên cao...xác định chế độ kích hoạt ngắt (theo mức hoặc theo cạnh _sườn xung..)
                - Khi xảy ra ngắt, nhảy đến trình phục vụ ngắt (JUMP,AJUMP, LJUMP...) gì gì đó. Nhiều khi trình phục vụ ngắt (ISR Routine) lại làm nhiệm vụ chính, phức tạp và dài hơn cả chương trình chính...
                - Kết thúc ngắt (RETI), quay trở về chương trình chính để làm các việc khác (hoặc cũng có thể chẳng làm gì, chỉ "nhảy" tại chỗ (JUMP $) và chờ...các ngắt khác...
                Những cái này đã có rất nhiều đoạn source code trên diễn đàn, trên sách, trên mạng và nhiều ví dụ để tham khảo và "copy -> paste-> compile-> RUN" bạn chỉ cần để ý là OK
                Bạn chưa giải thích rõ dùng 555 để "bơm" xung cho 89 với mục đích gì, nếu để tạo xung clock thì chắc ko ổn (vì bạn natra2k2 có nêu rằng 555 làm việc MAX 500kHz.->quá thấp để hoạt động). Nếu để tạo ngắt cho 89 thì OK thôi
                Túm lại là bạn cứ post thẳng yêu cầu (sơ đồ, mục đích...) lên thì rõ ràng hơn và sẽ có rất nhiều người cùng hỗ trợ..
                Chương trình của bạn natra2k2 đưa lên là công cụ rất tốt để tham khảo, tính toán và thiết kế cho các ứng dụng của 555. Trước đây mỗi lần đụng đến 555 là thường phải "giở sách" và nhân chia cộng trừ..

                Thân ái,
                Last edited by thuaimi; 10-08-2006, 15:00.

                Comment


                • #9
                  sao ko dùng bộ timer đếm sự kiện như vậy là thiết lập cho 89 dùng timer xung ngoài roài
                  SHARE KHO PHIM LỚN

                  Comment


                  • #10
                    Cám ơn bạn Thuaimi nha.
                    Thành mới viết có chút xíu này mà vẫn chưa được
                    Ct của Thành như sau:
                    MCS-51 MACRO ASSEMBLER BAI1 08/10/:6 PAGE 1


                    DOS 5.0 (038-N) MCS-51 MACRO ASSEMBLER, V2.2
                    OBJECT MODULE PLACED IN D:\BAITAP\NN\BAI1.OBJ
                    ASSEMBLER INVOKED BY: D:\ASM51\ASM51.EXE D:\BAITAP\NN\BAI1.ASM


                    LOC OBJ LINE SOURCE

                    0000 1 org 0000h
                    0000 020006 2 ljmp main
                    0003 3 org 0003h
                    0003 0200EB 4 ljmp nng
                    5 main:
                    0006 D2AF 6 setb ea
                    0008 D2A8 7 setb ex0
                    000A D288 8 setb it0
                    000C E4 9 clr a
                    10 st:
                    000D B40008 11 cjne a,#0,nhay1 ; chop nhay
                    0010 7590F0 12 mov P1, #11110000b
                    0013 11DE 13 acall delay
                    0015 02000D 14 ljmp st
                    15
                    16 nhay1:
                    0018 B40108 17 cjne a,#1,nhay2
                    001B 7590FF 18 mov P1, #11111111b
                    001E 11DE 19 acall delay
                    0020 02000D 20 ljmp st
                    21
                    22 nhay2:
                    0023 B40208 23 cjne a,#2,nhay3
                    0026 7590F0 24 mov P1, #11110000b
                    0029 11DE 25 acall delay
                    002B 02000D 26 ljmp st
                    27
                    28 nhay3:
                    002E B40308 29 cjne a,#3,nhay4
                    0031 7590FF 30 mov P1, #11111111b
                    0034 11DE 31 acall delay
                    0036 02000D 32 ljmp st
                    33
                    34 nhay4:
                    0039 B40408 35 cjne a,#4,nhay5
                    003C 7590F0 36 mov P1, #11110000b
                    003F 11DE 37 acall delay
                    0041 02000D 38 ljmp st
                    39
                    40 nhay5:
                    0044 B40508 41 cjne a,#5,nhay6 ; tat tu 1 den 4
                    0047 7590F1 42 mov P1, #11110001b
                    004A 11DE 43 acall delay
                    004C 02000D 44 ljmp st
                    45
                    46 nhay6:
                    004F B40608 47 cjne a,#6,nhay7
                    0052 7590F3 48 mov P1, #11110011b
                    0055 11DE 49 acall delay
                    0057 02000D 50 ljmp st
                    MCS-51 MACRO ASSEMBLER BAI1 08/10/:6 PAGE 2


                    LOC OBJ LINE SOURCE

                    51
                    52 nhay7:
                    005A B40708 53 cjne a,#7,nhay8
                    005D 7590F7 54 mov P1, #11110111b
                    0060 11DE 55 acall delay
                    0062 02000D 56 ljmp st
                    57
                    58 nhay8:
                    0065 B40808 59 cjne a,#8,nhay9
                    0068 7590FF 60 mov P1, #11111111b
                    006B 11DE 61 acall delay
                    006D 02000D 62 ljmp st
                    63
                    64 nhay9:
                    0070 B40908 65 cjne a,#9,nhay10 ; ghep tu 1 den 4
                    0073 7590FE 66 mov P1, #11111110b
                    0076 11DE 67 acall delay
                    0078 02000D 68 ljmp st
                    69
                    70 nhay10:
                    007B B40A08 71 cjne a,#10,nhay11
                    007E 7590FD 72 mov P1, #11111101b
                    0081 11DE 73 acall delay
                    0083 02000D 74 ljmp st
                    75
                    76 nhay11:
                    0086 B40B08 77 cjne a,#11,nhay12
                    0089 7590FB 78 mov P1, #11111011b
                    008C 11DE 79 acall delay
                    008E 02000D 80 ljmp st
                    81
                    82 nhay12:
                    0091 B40C08 83 cjne a,#12,nhay13
                    0094 7590F7 84 mov P1, #11110111b
                    0097 11DE 85 acall delay
                    0099 02000D 86 ljmp st
                    87
                    88 nhay13:
                    009C B40D08 89 cjne a,#13,nhay14
                    009F 7590F6 90 mov P1, #11110110b
                    00A2 11DE 91 acall delay
                    00A4 02000D 92 ljmp st
                    93
                    94 nhay14:
                    00A7 B40E08 95 cjne a,#14,nhay15
                    00AA 7590F5 96 mov P1, #11110101b
                    00AD 11DE 97 acall delay
                    00AF 02000D 98 ljmp st
                    99
                    100 nhay15:
                    00B2 B40F08 101 cjne a,#15,nhay16
                    00B5 7590F3 102 mov P1, #11110011b
                    00B8 11DE 103 acall delay
                    00BA 02000D 104 ljmp st
                    105
                    MCS-51 MACRO ASSEMBLER BAI1 08/10/:6 PAGE 3


                    LOC OBJ LINE SOURCE

                    106 nhay16:
                    00BD B41008 107 cjne a,#16,nhay17
                    00C0 7590F2 108 mov P1, #11110010b
                    00C3 11DE 109 acall delay
                    00C5 02000D 110 ljmp st
                    111
                    112 nhay17:
                    00C8 B41108 113 cjne a,#17,nhay18
                    00CB 7590F1 114 mov P1, #11110001b
                    00CE 11DE 115 acall delay
                    00D0 02000D 116 ljmp st
                    117
                    118 nhay18:
                    00D3 B41200 119 cjne a,#18,st
                    *** ERROR #25, LINE #119 (0), DESTINATION ADDRESS OUT OF RANGE FOR RELATIVE REFERENCE
                    00D6 7590F0 120 mov P1, #11110000b
                    00D9 11DE 121 acall delay
                    00DB 02000D 122 ljmp st
                    123
                    124 delay:
                    00DE 7B02 125 mov r3, #2
                    00E0 7C02 126 vong1: mov r4, #2
                    00E2 7D05 127 vong2: mov r5, #5
                    00E4 DDFE 128 djnz r5, $
                    00E6 DCFA 129 djnz r4, vong2
                    00E8 DBF6 130 djnz r3, vong1
                    00EA 22 131 ret
                    132 nng:
                    00EB 04 133 inc a
                    00EC B41302 134 cjne a,#19,nhayaa
                    00EF 7400 135 mov a,#0
                    136 nhayaa:
                    00F1 32 137 reti
                    138 end
                    MCS-51 MACRO ASSEMBLER BAI1 08/10/:6 PAGE 4


                    SYMBOL TABLE LISTING
                    ------ ----- -------


                    N A M E T Y P E V A L U E A T T R I B U T E S

                    DELAY. . . C ADDR 00DEH A
                    EA . . . . B ADDR 00A8H.7 A
                    EX0. . . . B ADDR 00A8H.0 A
                    IT0. . . . B ADDR 0088H.0 A
                    MAIN . . . C ADDR 0006H A
                    NHAY1. . . C ADDR 0018H A
                    NHAY10 . . C ADDR 007BH A
                    NHAY11 . . C ADDR 0086H A
                    NHAY12 . . C ADDR 0091H A
                    NHAY13 . . C ADDR 009CH A
                    NHAY14 . . C ADDR 00A7H A
                    NHAY15 . . C ADDR 00B2H A
                    NHAY16 . . C ADDR 00BDH A
                    NHAY17 . . C ADDR 00C8H A
                    NHAY18 . . C ADDR 00D3H A
                    NHAY2. . . C ADDR 0023H A
                    NHAY3. . . C ADDR 002EH A
                    NHAY4. . . C ADDR 0039H A
                    NHAY5. . . C ADDR 0044H A
                    NHAY6. . . C ADDR 004FH A
                    NHAY7. . . C ADDR 005AH A
                    NHAY8. . . C ADDR 0065H A
                    NHAY9. . . C ADDR 0070H A
                    NHAYAA . . C ADDR 00F1H A
                    NNG. . . . C ADDR 00EBH A
                    P1 . . . . D ADDR 0090H A
                    ST . . . . C ADDR 000DH A
                    VONG1. . . C ADDR 00E0H A
                    VONG2. . . C ADDR 00E2H A


                    REGISTER BANK(S) USED: 0

                    ASSEMBLY COMPLETE, 1 ERROR FOUND (119)
                    Mong các bạn góp ý giúp Thành nha.
                    Cảm ơn nhiều.

                    Comment


                    • #11
                      Theo như tôi "lướt qua" chương trình của bạn thì mục đích như sau, không biết có đúng không:
                      Bạn định dùng 555 để "bơm" vào ngắt (ngoài) của 89 để điều khiển các LED (đèn nháy-chớp tắt...gì đó) ở cổng PORT1.
                      Chắc là bạn định thay đổi tần số của tín hiệu ngắt ngoài thường xuyên nên mới dùng 555 để điều chỉnh R-C của nó???
                      Nhưng nếu chỉ với mục đích như vậy thì dùng Timer trong chip 89 là thích hợp và tối ưu hơn. Vừa tiết kiệm được chi phí (giảm 555 và các linh kiện của mạch ngoài, gọn, lắp ráp nhanh...) và lại có vẻ chuyên nghiệp hơn...
                      Đề xuất nhỏ của tôi:
                      Ví dụ: Dùng vài phím bấm (8 phím chẳng hạn, hoặc 2 phím UP/DOWN để tăng giảm...) để đặt các chế độ Timer (thay đổi các khoảng thời gian cho thỏa mãn các yêu cầu Timer của bạn-thay vì dùng ngắt ngoài)-chắc bạn cũng không thay đổi quá nhiều mức lắm??
                      Khi xảy ra ngắt Timer thì làm các công việc như của bạn: kiểm tra thanh ghi A, xuất dữ liệu ra PORT1 và ..."nháy"..
                      Tôi thấy trình dịch của bạn đã báo lỗi ở dòng 119:
                      *** ERROR #25, LINE #119 (0), DESTINATION ADDRESS OUT OF RANGE FOR RELATIVE REFERENCE
                      Bạn kiểm tra lại xem địa chỉ của đích gọi đến NHÃN (chương trình con) có nằm trong khoảng hợp lệ của lệnh không (địa chỉ tham chiếu đến)? Nếu đích gọi đến xa hơn khoảng đó thì trình dịch sẽ báo lỗi và đương nhiên ko thể chạy được.
                      Ví dụ: ACALL chỉ gọi tới NHÃN trong khoảng 2K lệnh nhưng LCALL thì gọi được xa hơn (thoải mái...) nhưng LCALL lại chiếm 3 byte lệnh trong khi đó ACALL chỉ chiếm 2 byte lệnh.
                      Những cái này lâu rồi không biết còn nhớ đúng không nữa, mong mọi người góp ý để học hỏi thêm.
                      - Trước đây tôi dùng ASM51 của thằng MetaLink (www.metaice.com) dùng free đàng hoàng mà chạy rất tốt, tài liệu hướng dẫn đầy đủ...
                      - Mấy năm nay ko dùng chắc cũng quên nhiều rồi, bây giờ lại "ngứa nghề" bắt tay vào học Keil C
                      bọn KEIL nó gửi cho nhiều đĩa quá mà không học thì nó lại không vui...mà mình thì thiệt thòi.
                      Nhưng học Keil C thì chắc phải lên diễn đàn học thêm nhiều...mong mọi người giúp đỡ..

                      Comment


                      • #12
                        Cám ơn bạn Thuaimi rất nhiều về những thông tin bổ ích trên.
                        Nói thật là Thành mới học 89 khoảng tháng nay , mà tự học bằng sách mua ngoài thị trường nên lượng thông tin và kiến thức về 89 còn rất hạn chế .
                        Nếu bạn không ngại có thể cho Thành ( Ngocquynh.ds@gmail.com) một đoạn viết bằng ASM về cách điều chỉnh xung bằng 2 phím UP hoặc DOWN như bạn nói ở trên ( mục đích của Thành vẫn là ĐK dãy led chớp nháy theo nhiều trạng thái nhưng mình vẫn có thể điều chỉnh tốc độ nháy nhanh hoặc chậm bằng tay.
                        Mong bạn hồi âm và một lần nữa rất cám ơn sự nhiệt tình của bạn.
                        Thưởng cho bạn 3 ly nhé ? chịu không ?
                        Chào thân ái.
                        ThànhTN

                        Comment


                        • #13
                          Ôi chao, quả là một con người say mê với kỹ thuật. Tôi có thể tìm lại cho bạn mấy đoạn code cho mấy vụ phím bấm này, tuy nhiên ko biết có thất lạc hay mất ở đâu không thì chưa rõ (Thông cảm vì mấy năm qua đã thay 3 lần máy tính rồi, và hiện nay lại đang sử dụng...cũng ...3 máy nên tìm lại các đoạn code nhỏ như vậy sẽ tốn thời gian (thậm chí là lâu hơn viết lại từ đầu...).
                          Tuy nhiên trong khi chờ đợi tôi muốn đề xuất hướng để bạn tự phát triển nhanh như sau:
                          - Lấy 2 phím bấm (Key Button) gắn vào cổng nào đó của 89 (PORT_0) chẳng hạn, chú ý điện trở treo lên Vcc nếu cần phải có (xem lại tài liệu họ 89).
                          - Xử lý Phím có thể dùng ngắt ngoài, hoặc có thể dùng Timer để "quét" phím, tùy theo sở thích và thói quen cũng như điều kiện thực tế, hoặc cũng có thể dùng các "mẹo" khác mà tôi cũng chưa nghĩ ra, để học thêm....
                          -Khởi tạo chương trình: Cài đặt các giá trị tham số cho Timer (chế độ 8-bit, 16-bit...), cho Timer chạy
                          - Thiết lập 1 biến đếm (counter) -dùng các thanh ghi nào đó. Phím UP/DOWN sẽ dùng để tăng giảm giá trị của biến đếm này.Có thể dùng thao tác ấn phím liên tiếp hoặc ấn+giữ (Press/Hold).
                          -Thời gian delay (tương ứng với mạch 555 của bạn) = giá trị của biến đếm x thời gian của Timer từ khi Start đến khi Timer tràn --> điều chỉnh giá trị của biến đếm là bạn sẽ thay đổi được thời gian delay.
                          - Mỗi lần Timer tràn thì làm giảm giá trị của biến đếm (dùng DJNZ hay gì đó), giảm đến khi bằng 0 thì xuất dữ liệu ra PORT của bạn--> "nháy" (tương tự như 555 phát xung vào 89 gây ngắt ngoài)­
                          - Với tài nguyên sẵn có của 89 (ít nhất là 2 Timer) bạn có thể dùng thoải mái để thay cho Timer "cứng" (555 Timer) vừa tiết kiệm chi phí, công sức mà lại nghiên cứu được thêm về Timer, sản phẩm chắc chắn sẽ mang tính "chuyên nghiệp" hơn.
                          -Còn có thể có nhiều "mẹo" khác nữa. Trong nội dung trên có gì chưa đúng hoặc còn thiếu mong được mọi người cùng giúp.

                          Sơ qua vài ý kiến như vậy, hy vọng bạn có thể giải quyết trong những ngày cuối tuần. Chúc bạn thành công và nhớ post sản phẩm hoàn thiện lên nhé (sơ đồ mạch, source code, bình luận...)


                          Nguyên văn bởi Thanhtn
                          Nếu bạn không ngại có thể cho Thành ( Ngocquynh.ds@gmail.com) một đoạn viết bằng ASM về cách điều chỉnh xung bằng 2 phím UP hoặc DOWN như bạn nói ở trên ( mục đích của Thành vẫn là ĐK dãy led chớp nháy theo nhiều trạng thái nhưng mình vẫn có thể điều chỉnh tốc độ nháy nhanh hoặc chậm bằng tay.

                          Thưởng cho bạn 3 ly nhé ? chịu không ?
                          Chào thân ái.
                          ThànhTN
                          Quan điểm của tôi là chia sẻ (share) và trao đổi kinh nghiệm để cùng phát triển, những mẹo nhỏ như thế này chắc ko ai có ý định cất giữ, giấu diếm làm gì nên bạn không nên ngại ngần gì cả.

                          Thêm vài trao đổi cá nhân:
                          - Sở thích của tôi rất đam mê về Kỹ thuật nhưng hiện tại (mấy năm nay bị chuyển sang làm "quản lý") nên ít có điều kiện được "vọc" các món này, thành ra có thể trở thành amateur mất rồi. Nhưng tất cả thời gian rảnh có được thì vẫn say ở lĩnh vực này (dù chưa có được chút "doanh thu" nào ở đây mà trái lại "nướng" cũng kha khá)
                          - Trước đây ở tuổi U30 có thể "nhận thưởng" 30 ly nhưng nay đã U40 rồi thì chỉ nên <3 ly thôi. Cảm ơn bạn về thiện ý đó.
                          Rất vui được gặp bạn và mọi người trên diễn đàn.
                          Tranh thủ giờ nghỉ trưa cơ quan có vài ý ngắn gọn, 2h chiều phải đi "họp" rồi mà chưa biết phát biểu gì đây. Chúc mọi người cuối tuần vui vẻ và có nhiều bài viết hay cho tuần tới.
                          Thân ái,

                          Comment


                          • #14
                            Dong` 117 của bac' ne`, đoạn này nó báo lỗi do địa chỉ nhảy vượt khỏi +-128 byte! cjne là lệnh nhảy ngắn, bác sửa lại như sau là được!

                            nhay18:
                            cjne a,#18,bo_qua_18
                            jmp st
                            bo_qua_18:
                            .... tiep tuc chuong trinh o day ...


                            Bây giờ nếu thêm nhay19 và nó cũng báo lỗi tương tự à!
                            Các lần khác bác cũng giải quyết tương tự vậy nhá!

                            Comment


                            • #15
                              Ban Thuaimi oi !!!

                              Bạn vui lòng cho Thành biết ĐC E-mail của bạn được không , mình có một số vấn đề muốn cùng trao đổi với bạn.
                              E-mail của Thành là : Ngocquynh.ds@gmail.com
                              Mong tin
                              ThànhTN

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X