Thông báo

Collapse
No announcement yet.

1 CÂu HỎi NhỎ VỀ I/o 8051

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

  • #16
    Cái này các anh check bẳng phân cứng ấy,chứ bằng mô phỏng chưa chắc ăn lắm đâu. Chương trình test thì đúng rồi.

    Comment


    • #17
      Trên đây là một đoạn code hoàn chỉnh.
      Hãy biên dịch rồi sau đó cho chạy và xem thế nào mỗi khi nhấn và nhã phím!?
      Hãy nhớ rằng:
      khi đọc về ta dùng lệnh MOV thanhghi,PORT nha
      .

      Comment


      • #18
        Lại cứng với mềm nữa rồi! Phi thích test cả hai luôn, nên thể theo yêu cầu của cô bạn THÁI mình sẽ về test tiếp .( Hôm sau đã nha ).

        Mà cô bạn THÁI ah! Đấy là một trong những ví dụ nhỏ mà mình muốn nói rằng trong một số trường hợp việc làm trên vẫn không nguy hiểm cho POrt của 8051 thôi.
        Nhưng quy trình thì cứ làm như anh em đã nói đi ha. Đấy là một cái khía cạnh nhỏ để lưu ý thêm thôi.
        Last edited by MicroDuyphi; 26-02-2006, 12:25.

        Comment


        • #19
          Bạn cứ test hộ mình,lâu lắm ko làm 89

          Comment


          • #20
            Sau đoạn lệnh này, thì chân P2.0 sẽ ở mức thấp hay cao?

            ORG 00H
            MOV A,#00H
            MOV P1,A

            LOOP: MOV A,P1
            MOV P2,A
            LJMP LOOP
            END

            Theo ý anh DP thì P2.0 sẽ ở mức cao? vậy có nghĩa là sau lệnh:
            MOV A,#00H
            MOV P1,A

            LOOP: MOV A,P1
            tại đây mức logic chân P1 sẽ như thế nào? theo ý anh DP, tất cả sẽ là mức 1?
            Bạn nào có 89 thì test hộ mình với, anh DP đâu rồi, sao lâu thế..hihi..
            Hình sau có mô tả

            Comment


            • #21
              Viết bằng C thì:
              unsigned char x;
              P1=0;
              while(1)
              {
              x=P1;
              p2=x;
              }

              Vậy chân P2.0 sẽ ở mức logic nào nhỉ?

              Comment


              • #22
                Kết quả test

                Trước hết tôi test chương trình viết bằng C viết trên Keil C.

                Sơ đồ nguyên lý như sau:


                Source code:

                Code:
                # include "regx51.h"
                
                void main(){
                	unsigned char x;
                	P1=0;
                	while(1)
                	{
                	x=P1;
                	P2=x;
                	}
                }
                Kết quả trên cả Proteus và mạch thật, P2 = 0x00; Các đèn led đều sáng ngon lành cả.

                Các bác qua đó rút ra kết luận cho mình. Tôi không muốn chuyện nhỏ thế này mất tình đoàn kết. Chắc chắn thì hãy nói còn không thì thôi.
                Technical sale at WT Microelectronics S'pore
                Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
                Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

                Comment


                • #23
                  Vậy có nghĩa là dù có tác động vào cổng P1(ấn nút....),thì P2 vẫn là mức 0? cảm ơn bạn Bắc nhiều, bạn có thể test hộ mình nốt đoạn asm trên nữa ko? thanks.

                  main()
                  {

                  asm
                  {
                  MOV A,#00H
                  MOV P1,A

                  LOOP: MOV A,P1
                  MOV P2,A
                  LJMP LOOP
                  }

                  }

                  Comment


                  • #24
                    test chương trình viết = ASM

                    Tiếp theo là chương trình viết bằng ASM của anh MicroDuyphi.

                    Tôi viết bằng Keil C:

                    Sơ đồ test như trên:

                    Source code:

                    Code:
                    ORG 00H
                    MOV A,#00H
                    MOV P1,A
                    
                    LOOP: MOV A,P1
                    MOV P2,A
                    LJMP LOOP
                    END
                    Kết quả tương tự như trên: P2 = 0x00;
                    Technical sale at WT Microelectronics S'pore
                    Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
                    Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

                    Comment


                    • #25
                      Khi tôi cho các chân của Port 1 mức logic 1, tức mắc vào VCC qua con trở 330 Ohm thì các led vẫn sáng tức là vẫn ở mức logic P2 = 0x00;

                      Không biết ai đúng nhỉ?

                      Chúc mừng bạn Trang.
                      Last edited by ngohaibac; 26-02-2006, 15:29.
                      Technical sale at WT Microelectronics S'pore
                      Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
                      Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

                      Comment


                      • #26
                        Tôi làm cái này là trên cơ sở mạch của bác Quế Dương cung cấp đó. Có cần cung cấp luôn mức điện áp không?
                        Technical sale at WT Microelectronics S'pore
                        Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
                        Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

                        Comment


                        • #27
                          Hihi.. bạn edit lại rôi.Mình cứ tưởng mình sai...
                          To anh DP: vậy là rõ, kết quả chứng minh anh sai nhé. Vậy hãy trả ơn cho em và chuộc lỗi bằng cách đóng góp 2 mạch điện thú vị cho box của em quản lý: "Các mạch điện ứng dụng" nhé. Hihi...

                          Comment


                          • #28
                            Nguyên văn bởi thaithutrang
                            Hihi.. bạn edit lại rôi.Mình cứ tưởng mình sai...
                            To anh DP: vậy là rõ, kết quả chứng minh anh sai nhé. Vậy hãy trả ơn cho em và chuộc lỗi bằng cách đóng góp 2 mạch điện thú vị cho box của em quản lý: "Các mạch điện ứng dụng" nhé. Hihi...
                            Trời, bạn Trang kêu gọi fan kinh quá đó. Có khi mình cũng phải tham gia box của bạn thôi. Mặc dù kiến thức không uyên thâm bằng bạn nhưng ban đầu có lẽ chỉ làm guest thôi.

                            Chúc bạn phát triển box tốt.
                            Technical sale at WT Microelectronics S'pore
                            Hỗ trợ dự án sử dụng các hãng Texas Instrument, STMicro, Freescale, Fairchild, International Rectifier, Ublox, Lumiled, Maxim
                            Liên hệ: 0915.560.511 hoặc ngo.haibac@wtmec.com

                            Comment


                            • #29
                              Nguyên văn bởi MicroDuyphi
                              Có sự nhầm lẫn đâu đó giữa PIC và 8051.
                              Chỉ có PIC mới có khái niệm định nghĩa cổng/bit vào ra mà thôi.
                              Nhưng cũng chỉ với dòng PIC16, còn dòng PIC18 hình như không cần!
                              Việc để PORT8051 là port nhập người ta cần làm thao tác:
                              mov A,#FFh là có nhiều lý do để có thể giải thích. Điều đó không có nghĩa là không thể làm thao tác sau khi xem PORT 8051 là PORT nhập: MOV A,#00H
                              o day khong co' nhầm lẫn nào hết vì em chỉ mới học họ vi điều khiển 8051 chứ chẳng bit' con PIC là con gì ( chưa học)

                              Comment


                              • #30
                                trước hết em xin chân thành cảm ơn các bác đã tham gia góp ý cho em
                                nhưng quả thật em chưa nhận được câu trả lời mong đợi
                                hình như các bác đang thử tài nhau thôi chứ chưa để y' đến câu hỏi của em
                                em dang làm con mạch dùng 89c51 và trong lúc lập trình em gặp vấn đề này mong được các bác giải qưyết cho chứ không phải em định nêu ra 1 luồng tranh cãi mới đâu.
                                nhấn tiện bác nào co' trình biên dịch asm cho 8051 thì cho em với bởi vì em chưa có học C
                                nick của em là : phidoigabay1@yahoo.com
                                mong các bác đọc kỹ lại câu hỏi của em và trả lời cho em

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X