Thông báo

Collapse
No announcement yet.

Hướng dẫn lập trình ASSEMBLY!

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

  • Hướng dẫn lập trình ASSEMBLY!

    Em là người mới học vi điều khiển. Theo như kinh nghiệm của những anh chị đi trước thì mới học lập trình vi điều khiển thì nên học ASSEMBLY trước vì nó gần với phần cứng và cũng tránh 1 số lỗi như ở lập trình C. Em vào diễn đàn tham khảo nhưng chủ yếu là thấy mọi người dùng keil C, nếu có ASS thì không được tập trung vả lại với nhứng người mới làm quen như em sẽ gặp khó khăn.

    Vậy nên em mạn phép lập ra Thread này mong được sự giúp đỡ, hướng dẫn của mọi người, cũng là cho những ai mới học lập trình ASM về cách tiếp cận ngôn ngữ này từ những điều cơ bản nhất.

    Mong rằng topic sẽ thu hút được sự ủng hộ của mọi người như topic "Hướng dẫn lập trình keil C" (1 topic rất hay và bổ ích)

    Em xin cám ơn!!

  • #2
    Nguyên văn bởi dtsMoNo2 Xem bài viết
    Em là người mới học vi điều khiển. Theo như kinh nghiệm của những anh chị đi trước thì mới học lập trình vi điều khiển thì nên học ASSEMBLY trước vì nó gần với phần cứng và cũng tránh 1 số lỗi như ở lập trình C. Em vào diễn đàn tham khảo nhưng chủ yếu là thấy mọi người dùng keil C, nếu có ASS thì không được tập trung vả lại với nhứng người mới làm quen như em sẽ gặp khó khăn.

    Vậy nên em mạn phép lập ra Thread này mong được sự giúp đỡ, hướng dẫn của mọi người, cũng là cho những ai mới học lập trình ASM về cách tiếp cận ngôn ngữ này từ những điều cơ bản nhất.

    Mong rằng topic sẽ thu hút được sự ủng hộ của mọi người như topic "Hướng dẫn lập trình keil C" (1 topic rất hay và bổ ích)

    Em xin cám ơn!!
    Bạn nói đúng rồi đó học ASM trước thì sau này giải thuật C sẽ viết hay hơn.
    Bạn cần giúp đỡ gì mọi người luôn sẵn lòng
    Tôi xin bóc tem luồn này nhé.

    Những điều cần biết khi viết ASM:
    1. Phải thuộc và hiểu từng lệnh ASM
    2. Phải hiểu và biết chức năng các thanh ghi SFR của VXL, đặc biệt là các con trỏ @Rx,@DPTR
    3. Phải viết từng hàm con độc lập với nhau (giống như C) để thuận tiện sửa code khi chương trình gặp lỗi
    4. Phải định nghĩa các biến, bit và các thông số khác ở đầu chương trình và sử dụng chúng suốt chương trình để thuận tiện cho việc thay đổi các thông số như: tốc độ hay vòng lặp sau này..
    5. Dành cho những pro ASM dientuvietnam viết ra những kinh nghiệm của mình.

    Chúc ae dtvn buổi tối vui vẻ.

    Email:
    Tel: 0983.497.310

    Comment


    • #3
      bác tienhuypro có giáo trình hay hướng dẫn ko cho em xin vào mail: Nguoivotinh.379@gmail.com nhé.
      Gửi cho em bằng file trực tiếp hoặc link trên mediafire nhé. Thanks

      Comment


      • #4
        Nguyên văn bởi Van_Thinh Xem bài viết
        bác tienhuypro có giáo trình hay hướng dẫn ko cho em xin vào mail: Nguoivotinh.379@gmail.com nhé.
        Gửi cho em bằng file trực tiếp hoặc link trên mediafire nhé. Thanks
        Bạn ở TP.HCM thì tới trường Bách Khoa mua sách VXL 8051 của thầy Hồ Trung Mỹ sẽ có hướng dẫn rõ ràng và dễ hiểu nữa .

        Email:
        Tel: 0983.497.310

        Comment


        • #5
          Nguyên văn bởi tienhuypro Xem bài viết

          Những điều cần biết khi viết ASM:
          1. Phải thuộc và hiểu từng lệnh ASM
          2. Phải hiểu và biết chức năng các thanh ghi SFR của VXL, đặc biệt là các con trỏ @Rx,@DPTR
          3. Phải viết từng hàm con độc lập với nhau (giống như C) để thuận tiện sửa code khi chương trình gặp lỗi
          4. Phải định nghĩa các biến, bit và các thông số khác ở đầu chương trình và sử dụng chúng suốt chương trình để thuận tiện cho việc thay đổi các thông số như: tốc độ hay vòng lặp sau này..
          5. Dành cho những pro ASM dientuvietnam viết ra những kinh nghiệm của mình.

          Chúc ae dtvn buổi tối vui vẻ.
          Anh có thể bắt đầu từ những Vd đơn giản và cụ thể đối vói 8051 được không ạ.
          Em mới hoc nên muốn đi từ những cái đơn giản.

          Comment


          • #6
            Nguyên văn bởi dtsMoNo2 Xem bài viết
            Anh có thể bắt đầu từ những Vd đơn giản và cụ thể đối vói 8051 được không ạ.
            Em mới hoc nên muốn đi từ những cái đơn giản.
            Gởi bạn tài liệu tham khảo trước nè.
            Có gì khó hiểu thì port lên cho anh em giải quyết nhé bạn .
            Thân gởi luôn bạn Van_Thinh

            http://www.giaoducvn.net/cdt/content/view/340/66/

            Email:
            Tel: 0983.497.310

            Comment


            • #7
              những kiến thức của anh huy hay quá. đề nghị anh phát huy năng lên giải đáp để pà kon kòn được sáng con mắt, mong admin để a huy làm mod một thread đi

              Comment


              • #8
                quá khen quá khen

                Nguyên văn bởi le hung dung Xem bài viết
                những kiến thức của anh huy hay quá. đề nghị anh phát huy năng lên giải đáp để pà kon kòn được sáng con mắt, mong admin để a huy làm mod một thread đi
                Quá khen, bác nói em thế em không biết chuôi đi đâu đây nữa

                Email:
                Tel: 0983.497.310

                Comment


                • #9
                  Một số bài tập mấu cơ bản nhất

                  Mình cũng muốn giúp các bạn mới làm quen VDK một tí
                  Gửi vài bài cơ bản để các bạn tham khảo

                  Comment


                  • #10
                    file bài mẫu

                    File đây.Các bạn tham khảo nhé

                    Comment


                    • #11
                      srrrrrrrrr

                      sorrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr

                      Comment


                      • #12
                        Xin loi các bạn.Sao hom nay gui file ko duoc

                        ;--------chuong trinh hien thi n7 tren 2 led 7 doan anode chung----------
                        org 0
                        mov dptr,#ma7d
                        quet: Mov a,#10 ;lay ma chu n
                        movc a,@a+dptr
                        mov p2,a
                        setb p3.0
                        call delay
                        clr p3.0
                        mov p2,#0ffh
                        mov a,#8
                        movc a,@a+dptr
                        mov p2,a
                        setb p3.1
                        call delay
                        mov p2,#0ffh
                        clr p3.1
                        jmp quet
                        delay:
                        Mov r7,#100
                        lap: Djnz r7,lap
                        ret
                        ma7d: Db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h, 0c8h
                        end

                        Comment


                        • #13
                          quet led don

                          ;-- --Các bạn tự vẽ phần cứng và mo phong thu nhé-----
                          ;---------Đây là bài tập về led đơn----------------
                          ORG 0
                          MOV TMOD,#1
                          MOV R0,#20
                          MOV A,#0FEH
                          TIEP:
                          MOV TL0,#LOW(-50000)
                          MOV TH0,#HIGH(-50000)
                          SETB TR0
                          CHO:
                          JNB TF0,XLY
                          CLR TF0
                          MOV P0,A
                          DJNZ R0,TIEP
                          MOV R0,#20
                          RL A
                          SJMP TIEP
                          XLY:
                          MOV P0,A
                          SJMP CHO
                          END

                          Comment


                          • #14
                            Nguyên văn bởi tc8051 Xem bài viết
                            ;-- --Các bạn tự vẽ phần cứng và mo phong thu nhé-----
                            ;---------Đây là bài tập về led đơn----------------
                            ORG 0
                            MOV TMOD,#1
                            MOV R0,#20
                            MOV A,#0FEH
                            TIEP:
                            MOV TL0,#LOW(-50000)
                            MOV TH0,#HIGH(-50000)
                            SETB TR0
                            CHO:
                            JNB TF0,XLY
                            CLR TF0
                            MOV P0,A
                            DJNZ R0,TIEP
                            MOV R0,#20
                            RL A
                            SJMP TIEP
                            XLY:
                            MOV P0,A
                            SJMP CHO
                            END

                            sao mình không hiểu code của bạn , chỉ mình với

                            Email:
                            Tel: 0983.497.310

                            Comment


                            • #15
                              Có gì đâu mà không hiểu chương trình của bạn tc8051 là nháy led tuần tự sử dung bộ timer0 để định thời gian trễ

                              to tc8051: mình thấy sau khi xóa cờ TF0 thì bạn nên xóa luôn cả TR0 vì nếu không xóa thì bạn khởi động timer0 trc khi nạp giá trị cho nó

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X