Thông báo

Collapse
No announcement yet.

HƯỚNG DẪN LẬP TRÌNH KEIL C CHO 8051-[Chỉ dành post bài hướng dẫn]

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

  • bạn define vang xanh do ma không cho nó 1 cái giá trị gì hết vậy.
    Lệnh define được dùng như sau : #define vang 1 ;chẳng hạn như vậy vì lệnh define chỉ dùng để đặt tên cho dễ nhớ thôi.Thay vì viết số 1 ngta dùng chữ "vàng" để biểu hiện ý nghĩa của nó!
    SỰ HỌC LÀ MÃI MÃI......!!!!

    Comment


    • anh trch oi cho em hỏi .em muốn tạo tần số 28000Hz trong 1s vậyem nên dùng con thạch anh có tần số là bao nhiêu thì được .giúp em với em đang cần lắm.cảm ơn anh nhiều nhé.hiện nay em đang dùng con thạch anh 12000Hz vậy nó có chạy được với tần số 28000Hz được không.em dùng IC89c51
      Last edited by hoang_hai; 22-03-2009, 21:27.

      Comment


      • chào mọi người em mới vào diễn đàn mong nhận dc sự giúp đỡ của mọi người
        em co cái code như thế này :
        PHP Code:
        ;*************************************************************************************************
        ;**************
        /////--- LED SANG LAN LUOT -CACH DON GIAN ---\\\\\\ ******************** 
        ;**----------------------------------------------------------------------------------------------------------------------
        ;**
        ////////////////___ led sang lan luot tu led 1 den led 8-P1___________\\\\\\\\\\\\\\\\\\\\\\\\\\\ 
        ;**///////////////___ sang o muc 1 va tat o muc 0__________________\\\\\\\\\\\\\\\\\\\\\\\\\ 
        ;**//////////////____ lap di lap lai khong gioi han____________________\\\\\\\\\\\\\\\\\\\\\ 
        ;**<<<<<<<<<<<<<<<<<<<----------------------------------------------------->>>>>>>>>>>>>> 
        ;** \\\\\\\\\\\\------- 
        nap gia trị cho tung trang thai ------------------------------//////////////// 
        ;*****************************************************************************************************
        ;***************************************************************************************************** 
        ORG 000H khai bao dia chi de bat dau chuong trinh tren Rom

        Mov P1
        ,#00000000B ;===>>>> lam 8 led noi P1 tat 
        LCall Delay ;===>>>>goi chuong trinh con Delay 
        Xuat
        Mov P1,#00000001B ;===>>>> lam led 1 sang
        LCall Delay
        Mov P1
        ,#00000010B ;===>>>> lam led 2 sang
        LCall Delay
        Mov P1
        ,#00000100B ;===>>>> lam led 3 sang
        LCall Delay
        Mov P1
        ,#00001000B ;===>>>> lam led 4 sang
        LCall Delay
        Mov P1
        ,#00010000B ;===>>>> lam led 5 sang
        LCall Delay
        Mov P1
        ,#00100000B ;===>>>> lam led 6 sang
        LCall Delay 
        Mov P1
        ,#01000000B ;===>>>> lam led 7 sang
        LCall Delay 
        Mov P1
        ,#10000000B ;===>>>> lam led 8 sang
        LCall Delay 
        Sjmp Xuat 
        ;===>>>> nhay ve thuc hien tu dau 

        ;**>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> delay <<<<<<<<<<<<<<<<<<<<<<<<<<<< 

        Delay:
        Mov R7,#0FFH ;===>>>> gan R7=#0FFH, 1 chu ki may 
        Kt2Mov R6,#0FFH ;===>>>> gan R6=#0FFH, 1 chu ki may 
        Kt1Djnz R6,Kt1 ;===>>>> giam R6 xuong 1R6 khac 0-> giam tiep
        Djnz R7
        ,Kt2 ;===>>>> giam R7 xuong 1R6 khac 0-> ve Kt2
        Ret 
        ;===>>>> ket thuc chuong trinh con
        ;_________________________________________________________________________________ 
        End 
        ;===>>>> ket thuc chuong trinh 
        em muốn dịch sang mã HEX qua phần mềm keil c thì em cần thực hiện những bước nào (em dùng con AT98S51 )
        MONG NHẬN ĐC SỰ GIÚP ĐỠ CỦA MỌI NGƯỜI
        8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
        liên lạc với em qua địa chi email: Mob: 01882.076.989

        Comment


        • em muốn dịch sang mã HEX qua phần mềm keil c thì em cần thực hiện những bước nào (em dùng con AT98S51 )
          Bạn đọc kỹ trang đầu tiên của luồng này, bạn ngohaibac đã giới hiệu rất chi tiết rồi!
          ----------------------
          Bể học là mênh mông!

          Comment


          • em xem rất kĩ rồi nhưng ở phần cuối của anh ngohaibac em ko hỉu file HEX nằm ờ đâu để nạp vào chip anh giải thích cho em đi
            8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
            liên lạc với em qua địa chi email: Mob: 01882.076.989

            Comment


            • Tất cả các phần mềm viết chương trình cho vi điều khiển 89, AVR hay là PIC đều quản lí theo project, vì vậy khi thực hiện một chương trình thì bạn phải tạo một forder lưu tất các các file liên quan vào trong đó (.pro, .c, thư viện), khi dịch thì file HEX tạo ra được tự động lưu trong forder này, bạn chỉ cần mở forder ra là có thể nhìn thấy nó.

              Comment


              • File Hex là file trong chương trình Keil C, muốn học cái 8051 này phải đọc nhiều vào.Loại này có 2 loại là keil C để viết chương trình,và Protues để mô phỏng.Có thể có loại khác nhưng bọn này là chủ yếu.Doaw về học đi

                Comment


                • cảm ơn
                  các pác làm ơn thì làm cho trót luôn đi
                  cho em click donw phần mềm protues đi nha
                  8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                  liên lạc với em qua địa chi email: Mob: 01882.076.989

                  Comment


                  • Help Me!. Giúp tôi cách cài Keil C với. Tôi bẻ khóa rồi mà vẫn không được. Vẫn báo lỗi như sau:" D:\BAITAPLAPTRINHVDK\BAI1.C(1): error C129: missing ';' before '000' ". Nó làm sao vậy
                    Nguyễn Văn Toàn

                    Comment


                    • Help Me!

                      Gửi hoangphat...
                      Tôi cũng đang học keil C như bạn. Tôi cài bản Keil uVision3. Sau khi viết chương trình đèn led như bạn dihcj sang fiel *.hex thì báo lỗi như sau:"D:\BAITAPLAPTRINHVDK\BAI1.C(1): error C129: missing ';' before '000' ". Đó là lỗi gì. Rõ là không có lỗi của chương trình rồi đúng không? Hay tại phần mềm. Tôi cung bẻ khóa giống bác ngohaibac hướng dẫn rồi mà. Giúp tôi với. Thanks!
                      Nội dung chương trình tôi viết:
                      ORG 000H
                      PORT2: LCALL DELAY;
                      MOV P2,# 00000000B;
                      LCALL DELAY;
                      MOV P2,# 00000001B;
                      LCALL DELAY;
                      MOV P2,# 00000011B;
                      LCALL DELAY;
                      MOV P2,# 00000111B;
                      LCALL DELAY;
                      MOV P2,# 00001111B;
                      LCALL DELAY;
                      MOV P2,# 00011111B;
                      LCALL DELAY;
                      MOV P2,# 00111111B;
                      LCALL DELAY;
                      MOV P2,# 01111111B;
                      LCALL DELAY;
                      MOV P2,# 11111111B;
                      LCALL DELAY;
                      SJMP PORT2;
                      DELAY: MOV R6,#0FFH;
                      HERE2: MOV R7,#0FFH;
                      HERE1: DJNZ R7,HERE1;
                      DJZN R6,HERE2;
                      RET
                      END
                      Nguyễn Văn Toàn

                      Comment


                      • ôi! ngay cả tôi cũng bị mắc lỗi như bạn
                        cái code của tôi dịch qua phần mềm keil c ko dc
                        tôi đang tìm cách nhưng vẫn bị lỗi cú pháp tương tự như bạn =>tôi cung ko giúp dc gì cho bạn rồi thông cảm nhé
                        CÓ AI BÍT THÌ GIÚP EM VỚI
                        8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                        liên lạc với em qua địa chi email: Mob: 01882.076.989

                        Comment


                        • DJZN R6,HERE2
                          sai cú pháp câu lệnh này sửa lại: DJNZ R6,HERE2
                          ----------------------
                          Bể học là mênh mông!

                          Comment


                          • Bạn chú ý tring ASM dấu ; để đánh dấu phần chú giải, không phải để kết thúc câu lệnh.

                            Nên báo lỗi error C129: missing ';' before '000' có thể do đặt sai dấu ; ở đâu đó, để cẩn thận bạn có thể bỏ hết dấu ; đi
                            ----------------------
                            Bể học là mênh mông!

                            Comment


                            • Code:
                              ORG 000H
                              PORT2: LCALL DELAY
                                     MOV P2,# 00000000B
                                     LCALL DELAY
                                     MOV P2,# 00000001B
                                     LCALL DELAY
                                     MOV P2,# 00000011B
                                     LCALL DELAY
                                     MOV P2,# 00000111B
                                     LCALL DELAY
                                     MOV P2,# 00001111B
                                     LCALL DELAY
                                     MOV P2,# 00011111B
                                     LCALL DELAY
                                     MOV P2,# 00111111B
                                     LCALL DELAY
                                     MOV P2,# 01111111B
                                     LCALL DELAY;
                                     MOV P2,# 11111111B
                                     LCALL DELAY
                                     SJMP PORT2
                              DELAY: MOV R6,#0FFH
                              HERE2: MOV R7,#0FFH
                              HERE1: DJNZ R7,HERE1
                                     DJNZ R6,HERE2
                                     RET
                              END
                              Bên trên là Code tôi đã sửa rồi. Nhưng khi tạo project thì vẫn bị báo lỗi như thế này:
                              Code:
                              Build target 'Simulator'
                              compiling Bai1.c...
                              D:\BAITAPLAPTRINHVDK\BAI1.C(1): error C129: missing ';' before '000'
                              Target not created
                              Tôi cũng không hiểu là bị lỗi như thế nào nữa. Có phải là Keil C của tôi chưa bẻ khóa thành công đúng không? Hay tại vì lý do nào khác? Mong các cao thủ gạo cội trong làng VDK ra tay ứng cứu. Cảm ơn rất nhiều!
                              Nguyễn Văn Toàn

                              Comment


                              • Cái này có người nói rồi mà bạn! Nếu viết mã bằng hợp ngữ thì lưu tệp dạng BAI1.ASM. Chỉ khi viết mã bằng C thì mới lưu tệp dạng BAI1.C. Bạn sửa lại đuôi tệp tin là nó chạy à!
                                !e

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X