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

Dành cho người mới tìm hiểu 8051

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • digital83
    Thành viên chính thức
    • Oct 2008
    • 39

    #646
    Hình như bác ko hiểu ý mình rồi.
    Ý mình hỏi là đem cái mạch nạp lại gần con VDK rồi đưa 3 sợi dây để kết nối với nó rồi nạp.
    Có nghĩa là lúc này con VDK đã nằm sẵn trên bo mạch chạy rồi(Ko phải nằm trên mạch nạp)
    Hình như nạp như thế là nạp theo kiểu nối tiếp thì phải
    Mong các bác góp ý

    Comment

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

      #647
      Nguyên văn bởi digital83 Xem bài viết
      Các bác cho mình hỏi.
      Để nạp trực tiếp cho VDK họ 89xxx thì phải cần đủ những điều kiện cụ thể như thế nào?
      -VD: VDK mã nào nạp trực tiếp được,phần mềm gì..............
      Thanks các bác trước!
      Để nạp trực tiếp cho 89Sxx ta có thể:
      - Trên mạch chạy VDK chừa sẵn jump 6 chân: MOSI-MISO-SCK-RST-VCC-GND
      - Trên máy tính dùng phần mềm SPI Flash Programmer
      - Mạch nạp đơn giản chỉ là bộ đệm cho mấy dg tín hiệu này, với 1 đầu tới cổng LPT của máy tính, một đầu tới jump 6 chân mạch VDK

      Nếu muốn nạp cho tất cả 89xxx thì có thể dùng mạch nạp USB. Chi tiết bạn hỏi thêm bác mèo mod ấy!
      !e

      Comment

      • rongconn2t
        Banned
        • Apr 2008
        • 278

        #648
        các bác cho em hỏi tí.

        giả sử khi ta set ưu tiên ngắt ngoài 0 > 1.khi cả 2 ngắt cùng xảy ra -> ngắt ngoài 0 thực hiện trước,thế sau khi thực hiện xong chương trình con phuc vụ ngắt ngoài o nó có thực hiện tiếp chương trình con phục vụ ngắt ngoài 1 không?

        vẫn giả thiết trên.khi chương trình con phục vụ ngắt ngoài 0 chưa được thóat ra,tức là vẫn đang trong trạng thái ngắt. ta lại tiếp tục tạo ra ngắt ngoài 0 nữa,liệu nó có thực hiện ngắt không?
        ví dụ như:
        char i;
        void ngat_ngoai_0(void) interrupt 0 //ngắt ngoài 0
        {
        i++;
        if (i== 10 )
        {} //khong lam gi ca va thoat
        else while(1);
        }


        voi chương trình tren liêu rằng ta ấn nút ngắt ngoài 10 lần có thoát được chương trình không?

        cảm ơn mọi người trước

        Comment

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

          #649
          Nguyên văn bởi rongconn2t Xem bài viết
          các bác cho em hỏi tí.

          giả sử khi ta set ưu tiên ngắt ngoài 0 > 1.khi cả 2 ngắt cùng xảy ra -> ngắt ngoài 0 thực hiện trước,thế sau khi thực hiện xong chương trình con phuc vụ ngắt ngoài o nó có thực hiện tiếp chương trình con phục vụ ngắt ngoài 1 không?

          vẫn giả thiết trên.khi chương trình con phục vụ ngắt ngoài 0 chưa được thóat ra,tức là vẫn đang trong trạng thái ngắt. ta lại tiếp tục tạo ra ngắt ngoài 0 nữa,liệu nó có thực hiện ngắt không?
          ví dụ như:
          char i;
          void ngat_ngoai_0(void) interrupt 0 //ngắt ngoài 0
          {
          i++;
          if (i== 10 )
          {} //khong lam gi ca va thoat
          else while(1);
          }

          voi chương trình tren liêu rằng ta ấn nút ngắt ngoài 10 lần có thoát được chương trình không?
          - Ý 1: Sau khi làm xong ngắt ngoài 0, nó sẽ làm tiếp ngắt ngoài 1
          - Ý 2: Chừng nào thoát ra khỏi ngắt ngoài 0 (đang xử lí) thì mới có thể quay trở lại chính nó. Bạn ấn nút 10 lần cũng không thể thoát ra khỏi ngắt ngoài 0 đang xử lí (với vòng lặp while(1)
          !e

          Comment

          • blackmoon
            Thành viên tích cực
            • Jul 2005
            • 363

            #650
            Ngắt ngoài của 8051

            Nguyên văn bởi zemen Xem bài viết
            - Ý 1: Sau khi làm xong ngắt ngoài 0, nó sẽ làm tiếp ngắt ngoài 1
            - Ý 2: Chừng nào thoát ra khỏi ngắt ngoài 0 (đang xử lí) thì mới có thể quay trở lại chính nó. Bạn ấn nút 10 lần cũng không thể thoát ra khỏi ngắt ngoài 0 đang xử lí (với vòng lặp while(1)
            Xin bổ sung ý 1 của đại hiệp dế mèn:
            Như chúng ta đã biết, ngắt ngoài của 8051 có thể cấu hình theo kiểu ngắt do sườn xuống hoặc do mức thấp. Vì vậy:
            - Nếu ngắt ngoài 1 được cấu hình theo kiểu ngắt do sườn xuống thì trình tự xử lý xảy ra đúng theo dế mèn nói (bất kể tại thời điểm xử lý xong ngắt ngoài 0, tín hiệu tại chân ngắt ngoài 1 còn là mức thấp hay đã lên mức cao).
            - Nếu ngắt ngoài 1 được cấu hình theo kiểu ngắt do mức thấp thì trình tự xử lý sẽ có 2 hướng sau:
            + nếu sau khi xử lý xong ngắt ngoài 0 mà tín hiệu ngắt ngoài 1 còn ở mức thấp thì chương trình xử lý ngắt ngoài 1 sẽ được thực hiện.
            + nếu sau khi xử lý xong ngắt ngoài 0 mà tín hiệu ngắt ngoài 1 không còn ở mức thấp (đã dâng lên cao) thì chương trình xử lý ngắt ngoài 1 sẽ KHÔNG được thực hiện.

            Bản chất ta nhận thấy ở đây là: ngắt do sườn sẽ được lưu trữ trạng thái một khi nó xảy ra (dù là xuống cái rồi lên luôn!), còn ngắt theo mức sẽ chỉ được xử lý khi nó còn là mức thấp mà thôi. Thậm chí sau khi xử lý xong 1 ngắt ngoài do mức thấp, nếu tín hiệu còn kéo dài ở mức thấp thì sẽ gây ra ngắt đó liên tục, cho đến chừng nào tín hiệu trở về mức cao.

            Ý trả lời số 2 của đại hiệp dế mèn thì chuẩn không cần chỉnh rồi, tôi không có ý kiến thêm gì nữa.

            Thân mến,
            blackmoon.

            Comment

            • dienthu
              Thành viên mới
              • May 2008
              • 8

              #651
              chao cac bác !

              mình cũng mới dang bập bẹ về vdk vậy mà DAMH2 thầyy bảo làm về vdk về vấn đề nhận 8 bit ngõ vào xuất ra 2 led 7 đoạn

              mong bạn share tài liệu cho mình với

              cám ơn bạn nhe !

              chúc bạn luôn vui khỏe và thành công..........

              Comment

              • pavo_lusa
                Thành viên tích cực
                • Nov 2007
                • 179

                #652
                Tôi có Giáo trình AVR tiếng Việt ở đây:
                Trong đó có các phần:
                - Điều khiển vào ra.
                - Điều khiển Led 7 đoạn
                và những phần khác ...
                Hy vọng bạn sẽ tìm thấy thông tin cần thiết.
                bạn cần thì mail cho tôi : quangha.ngo@gmail.com
                Chúc thành công!
                Last edited by pavo_lusa; 02-03-2009, 20:19.
                :-)

                Comment

                • digital83
                  Thành viên chính thức
                  • Oct 2008
                  • 39

                  #653
                  Cảm ơn các anh!

                  Comment

                  • dienthu
                    Thành viên mới
                    • May 2008
                    • 8

                    #654
                    Nguyên văn bởi vohieu Xem bài viết
                    Sao không có ai thảo luận nữa vậy? Mình đang cần 1 bài tập mẫu về quét Led 7 đoạn đếm từ số 00 đến 99.bạn nào biết hướng dẫn co mình cụ thể nha. Cám ơn
                    mấy trang đầu bạn quỳnh co nói về vấn đề này rồi mà, bạn nên xem lại
                    chúc bạn thành công

                    Comment

                    • hocmaimai
                      Thành viên mới
                      • Mar 2009
                      • 9

                      #655
                      Mình quen dùng Assembler rùi nhưng cũng xin tham gia.
                      Mình thấy bước đầu học VĐK nên dùng Assembler vì nó rất nhanh và tiết kiệm bộ nhớ.
                      Quan trọng là dùng ngôn ngữ này anh em có thể hiểu rõ thêm về phần cứng

                      ;ghep noi 8 led don tren cong P1
                      ; Chuoi sang dan tu trai sang phai
                      INCLUDE 89c51.mc
                      org 000
                      init:
                      MOV A,#00000001
                      SETB P0.0
                      Main:
                      MOV P1,A
                      ACALL DelayA
                      RL A
                      JMP Main
                      Delay:
                      MOV R1,#55 ;Ton 2 byte va mat 2 chu ki may
                      Delay1:
                      MOV R2,#150 ;Ton 2 byte va mat 2 chu ki may
                      DJNZ R2,$ ;3 byte va 2 chu ki may
                      DJNZ R1,Delay1 ;2 byte va 2 chu ki may
                      RET
                      ;Chuong trinh tre
                      DelayA:
                      MOV R3,#20 ;2 byte va 2 chu ki may
                      DelayA_1:
                      ACALL Delay ;2byte va 2 chu ki may
                      DJNZ R3,DelayA_1 ;2 byte va 2 chu ki may
                      RET

                      Comment

                      • khoai_hut
                        Thành viên mới
                        • Aug 2008
                        • 2

                        #656
                        chao cac bac.
                        Em moi bat dau hoc vdk, muon tu lam mot mach nap cho con 8051 thi phai chuan bi nhung gi? va bat dau tu dau? em xin cam on!
                        pác nào có phần mềm assembler cho em với. gửi vào mail cho em: khoai_hut@yahoo.com

                        Comment

                        • xeko_89
                          Thành viên chính thức
                          • Mar 2008
                          • 31

                          #657
                          Cho em hỏi trong câu lệnh for(j=0;j<120;j++)
                          thì giá trị j<120 đó mình chọn như thế nòa với ạ?
                          Có phải chọn ngẫu nhiên ko?

                          Comment

                          • xeko_89
                            Thành viên chính thức
                            • Mar 2008
                            • 31

                            #658
                            lam ơn send cho mình quyển lập trinh c cho 8051 với được ko?
                            Mình đang học cái môn này , tim mỏi mắt mà chẳng thấy quyển nào. Thanks!

                            Comment

                            • trch
                              Thành viên tích cực
                              • Aug 2007
                              • 161

                              #659
                              Nguyên văn bởi khoai_hut Xem bài viết
                              chao cac bac.
                              Em moi bat dau hoc vdk, muon tu lam mot mach nap cho con 8051 thi phai chuan bi nhung gi? va bat dau tu dau? em xin cam on!
                              pác nào có phần mềm assembler cho em với. gửi vào mail cho em: khoai_hut@yahoo.com
                              theo mình thì mới bắt đầu học 8051 thì truoc tiên bạn phải có phần cứng để test. cái này rất quan trọng.thứ 2 nữa lần đầu tiên tiếp xúc nên học ASM trước
                              để biết rõ phần cứng và cấu trúc của VDK.khi đã thành thạo thì chuyển sang ngôn ngữ C. về ASM bạn có thể dùng "PINACLE" hay 1 số chương trình khác. lập trình C thì dùng "KEILC".

                              Comment

                              • trch
                                Thành viên tích cực
                                • Aug 2007
                                • 161

                                #660
                                Nguyên văn bởi xeko_89 Xem bài viết
                                Cho em hỏi trong câu lệnh for(j=0;j<120;j++)
                                thì giá trị j<120 đó mình chọn như thế nòa với ạ?
                                Có phải chọn ngẫu nhiên ko?
                                theo mình bạn nên đọc cuốn lập trình C căn bản trước cái đã.
                                đây nè.

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...