RP Store Tìm linh kiện theo mã, gửi BOM nhận báo giá Gửi BOM

Chương trình chuyển .asm sang .hex và xóa ROM

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • technology
    Thành viên mới
    • Aug 2006
    • 14

    #1

    Chương trình chuyển .asm sang .hex và xóa ROM

    Chào mọi người .Em đang có bài tập lớn về VDK 8051,cụ thể em định dùng AT89C51 nhưng có một số thắc mắc ,mong cả nhà giúp đỡ:


    -Để chuyển từ file .asm sang .hex thì em có thể dùng chương trình nào?Em có MASM nhưng hình như nó không tương thích với các dòng máy tốc độ cao.Ai có thể gửi link down cho em thì tốt quá

    -Em đọc sách thấy có khái niệm xóa Rom và đốt Rom nhưng không hiểu nó khác gì nhau,ai giải thích giúp em với?

    -Trước khi nạp một chương trinh mới vào Rom cần xóa chương trình cũ trong Rom.Để xóa chương trình cũ thì mình có thể đặt điện áp nguồn 12v vào chân Vcc của 8051 đúng không ?


    Thanks cả nhà!!
  • namqn
    Thành viên tích cực
    • Feb 2006
    • 869

    #2
    Nguyên văn bởi technology Xem bài viết
    Chào mọi người .Em đang có bài tập lớn về VDK 8051,cụ thể em định dùng AT89C51 nhưng có một số thắc mắc ,mong cả nhà giúp đỡ:


    -Để chuyển từ file .asm sang .hex thì em có thể dùng chương trình nào?Em có MASM nhưng hình như nó không tương thích với các dòng máy tốc độ cao.Ai có thể gửi link down cho em thì tốt quá

    -Em đọc sách thấy có khái niệm xóa Rom và đốt Rom nhưng không hiểu nó khác gì nhau,ai giải thích giúp em với?

    -Trước khi nạp một chương trinh mới vào Rom cần xóa chương trình cũ trong Rom.Để xóa chương trình cũ thì mình có thể đặt điện áp nguồn 12v vào chân Vcc của 8051 đúng không ?


    Thanks cả nhà!!
    - Chuyển mã nguồn .asm sang mã nhị phân (mã máy) lưu trong tập tin .hex được gọi là hợp dịch (assembly). Mỗi loại vi điều khiển (bao gồm các chip tương thích nhị phân) có một tập lệnh riêng, do đó cần dùng trình hợp dịch (assembler) riêng. Với 89C51 thì bạn tìm trình hợp dịch cho họ MCS51 (Pinnacle vừa hợp dịch vừa mô phỏng luôn: http://www.vaultbbs.com/pinnacle/).

    - Xóa ROM là làm cho tất cả các bit về trạng thái không bị lập trình (thường là trạng thái 1). Đốt ROM hiểu theo nghĩa rộng là thay đổi nội dung của ROM.

    - Trước khi nạp chương trình vào ROM thì đúng là cần phải xóa ROM. Đặt điện áp 12V vào Vcc thì bạn sẽ đốt chip luôn, chứ không phải xóa ROM. Mỗi loại chip có cách xóa ROM riêng, tuy nhiên thường không khác nhau lắm.

    Thân,

    Comment

    • hamhoc
      Thành viên chính thức
      • Dec 2006
      • 38

      #3
      Để chuyển từ file .asm sang .hex chạy trong môi trường WIN bạn có thể sử dụng chương trình READS51 hoặc KEIL C trong đó có cả môi trường soạn thảo và chạy mô phỏng ( Bạn có thể link download các chương trình này ở trong diễn đàn ).

      Để nạp chương trình vào ROM của 89C51 bạn phải có mạch nạp và chương trình nạp. Khi bạn nạp chương trình điều khiển cho 89C51 thì chương trình nạp sẽ xóa sạch ROM. Bạn không cần phải quan tâm đến việc xóa ROM nữa.
      ( Mạch nạp và chương trình nạp bạn cũng có thể tìm thấy trong diễn đàn nếu không tôi sẽ POST lên cho bạn )

      Chúc thành công .

      Comment

      • technology
        Thành viên mới
        • Aug 2006
        • 14

        #4
        Như vậy là khi nạp chương trình mới cho 8051 thì cứ nạp đè lên chương trình cũ mà không cần quan tâm đến xóa Rom ạ?
        Nhờ anh(chị) hamhoc post cho em mạch nạp và chương trình nạp cho AT89C51 với ,cảm ơn nhiều.

        Comment

        • hamhoc
          Thành viên chính thức
          • Dec 2006
          • 38

          #5
          Đúng rồi, bạn không cần quan tâm đến việc xóa ROM nữa.
          Đây là link mà bạn có thể vào để lấy sơ đồ mạch nạp và chương trình nạp
          มุ่งพัฒนาประเทศด้วยวิทยาศาสตร์และเทคโนโลยี การสร้างสรรค์งานวิจัย และนวัตกรรมสู่สังคมโลก The World Master of Innovation


          Chúc thành công

          Comment

          • zemen
            Thành viên tích cực
            • Nov 2005
            • 536

            #6
            tham khảo!

            Nếu muốn tạo file hex từ file txt thì dùng phần mềm đơn giản này cũng được.
            Đầu tiên soạn code bằng chương trình notepad của windows, lưu vào 1 thư mục. Tiếp theo là kéo file vừa lưu và thả đè lên file asem.exe này (nên cho chúng cùng thư mục). thế là ta sẽ có 1 file object (đối tượng) cùng tên. Nếu trong file object không báo lỗi thì ta sẽ có thêm file hex cùng tên.
            Cuối cùng dùng phần mềm nạp ISP3.0 bạn hamhoc đã đưa link để nạp file hex này cho vdk.
            Attached Files
            !e

            Comment

            • vnsat
              Thành viên mới
              • Mar 2009
              • 26

              #7
              cung rat hay do
              |

              Comment

              • thien thach
                Thành viên mới
                • Jun 2009
                • 1

                #8
                minh muon tim pham mem chuyen doi cho vdk cac bac co the cho minh dc khong
                |

                Comment

                • doireuphong
                  Thành viên mới
                  • Oct 2009
                  • 27

                  #9
                  e lap trinh tren keil C rui nhung ko biet lam sao chuen sang file .hẽ de nap vao vdk het . may anh chi e voi . thanks truoc nha!!
                  ah, co the chi e wa nick ANH_DUNG_240290 dc ko , vi e it len mang lam . hi.

                  Comment

                  • fanganma
                    Thành viên mới
                    • Feb 2009
                    • 4

                    #10
                    Nguyên văn bởi doireuphong Xem bài viết
                    e lap trinh tren keil C rui nhung ko biet lam sao chuen sang file .hẽ de nap vao vdk het . may anh chi e voi . thanks truoc nha!!
                    ah, co the chi e wa nick ANH_DUNG_240290 dc ko , vi e it len mang lam . hi.
                    Vào Flash\Configure Flash tool\
                    Trong thẻ Output tick vào Create Hex file. Có thể đặt lại Đường dẫn ở Select Folder.., đặt lại tên ở Name...->OK F7. Xong. Nạp thì tùy chip và mạch nạp mà nạp
                    Làm thêm online

                    Comment

                    • notbelived
                      Thành viên chính thức
                      • Mar 2008
                      • 30

                      #11
                      Như vậy có file HEX từ các trình dịch trên ta nạp vào at89c52 được ko ạ ?

                      Comment

                      • donghieu89
                        Thành viên mới
                        • Jan 2010
                        • 6

                        #12
                        thanks
                        dang thu

                        Comment

                        • camlam06
                          Thành viên mới
                          • Feb 2011
                          • 4

                          #13
                          vậy nếu mình muốn chuyển ngược lại, từ file hex sang asm thì làm như thế nào

                          Comment

                          • chumanh
                            Thành viên tích cực
                            • Nov 2009
                            • 256

                            #14
                            Nguyên văn bởi camlam06 Xem bài viết
                            vậy nếu mình muốn chuyển ngược lại, từ file hex sang asm thì làm như thế nào
                            disassembler, nhưng có ra được asm thì cậu đọc cũng chẳng hiểu được đâu

                            Comment

                            • camlam06
                              Thành viên mới
                              • Feb 2011
                              • 4

                              #15
                              um cảm ơn chumanh, minh nghe noi PROD_STUDIO+5.0 cũng dịch được ngược lại, nhưng chưa thử, dù sao cũng cảm ơn bạn

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...