Thông báo

Collapse
No announcement yet.

"PORTx ghi giá trị 1 khi làm cổng out thì có điện trở kéo" xin giải thích giùm mình ?

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

  • "PORTx ghi giá trị 1 khi làm cổng out thì có điện trở kéo" xin giải thích giùm mình ?

    "Khi PORTx được ghi giá trị 1 khi các chân có cấu tạo như cổng ra thì điện trở kéo là chủ động(được nối với cổng)"

    trong 1 tài liệu ghi vậy nhưng ko rõ như thế nào? câu này có nghĩa là khi set 1 thì nó sử dụng điện trở tích hợp trong chip giùm mình phải ko? hay là sao?

  • #2
    ở một số loại chip thì khi out put là 1 thì chân đó được "thả nổi" nếu không có điện trở kéo lên thì không tạo được mức "high", còn khi có trở kéo thì chân đó đc kéo lên = điện áp kéo đó. Còn khi out put là 0 thì chân đó được nối với đất. Đặc điểm kỹ thuật này thường được sử dụng như kiểu "open drain" cho phép tạo mức logic 1 với mức điện áp khác nhau (tùy thuộc vào trở kéo lên mức cao bao nhiêu). Tuy nhiên nhược điểm là khi xuất mức 0 thì vẫn tiêu thụ dòng. Một số loại chip thì điện trở kéo này được tích hợp luôn bên trong. Một số thì sử dụng kỹ thuật khác kiểu push - pull bằng mosfet (không có trở).

    Comment


    • #3
      Nguyên văn bởi vuhapassall Xem bài viết
      ở một số loại chip thì khi out put là 1 thì chân đó được "thả nổi" nếu không có điện trở kéo lên thì không tạo được mức "high", còn khi có trở kéo thì chân đó đc kéo lên = điện áp kéo đó. Còn khi out put là 0 thì chân đó được nối với đất. Đặc điểm kỹ thuật này thường được sử dụng như kiểu "open drain" cho phép tạo mức logic 1 với mức điện áp khác nhau (tùy thuộc vào trở kéo lên mức cao bao nhiêu). Tuy nhiên nhược điểm là khi xuất mức 0 thì vẫn tiêu thụ dòng. Một số loại chip thì điện trở kéo này được tích hợp luôn bên trong. Một số thì sử dụng kỹ thuật khác kiểu push - pull bằng mosfet (không có trở).
      thank bác đã giải thích giúp, nhưng nói thật tui ko hiểu gì cả hic hic bác có thể giải thích rõ hơn được ko (nếu có ví dụ cụ thể thì tốt quá). Tui người ngoại đạo nên kiến thức còn kém ^^!

      theo bác giải thích + thực hành thì tui hiểu sơ như thế này ko biết phải ko? khi output = 0, 1 led được nối với chân output này đi ra cực âm, chiều dòng điện từ IC ra, ngược lại nếu output = 1, thì chiều dòng điện từ ngoài (led) vào chân IC. Còn vấn đề điện trở kéo gì đó thì tui chưa hiểu, ko biết nó có quan trọng ko?

      cho tui hỏi thêm 1 cách viết code c cho con avr:
      void daydulieu(unsigned char x)// Ham dua du lieu ra PORT
      {
      switch(x) // Tuy thuoc vao bien dau vao ma dua du lieu ra tu 0...9
      { //logic 1 tat led, logic 0 bat led
      case 0: { PORTB=0xC0; break; } // So 0
      case 1: { PORTB=0xF9; break; } // So 1
      case 2: { PORTB=0xA4; break; } // So 2
      case 3: { PORTB=0xB0; break; } // So 3
      case 4: { PORTB=0x99; break; } // So 4
      case 5: { PORTB=0x92; break; } // So 5
      case 6: { PORTB=0x82; break; } // So 6
      case 7: { PORTB=0xF8; break; } // So 7
      case 8: { PORTB=0x80; break; } // So 8
      case 9: { PORTB=0x90; break; } // So 9
      }
      }
      trong hàm này được set cứng PORTB, giờ tui muốn truyền thêm 1 tham số đó là PORTx mà mình muốn xử lý trong hàm, ví dụ muốn dùng PORTD thì daydulieu(PORTB, 9); lúc khai báo hàm này ko biết PORTx là kiểu dữ liệu gì để khai báo tham số PORTx này.
      Last edited by lion080889; 29-12-2013, 23:34.

      Comment


      • #4
        Tùy trình dịch. HT,XC, MikroC thì cứ giã PORTB vào còn CCS thì khai báo
        #byte PORTB = địa chỉ PORTB rồi sau đó làm như mấy thằng kia.

        Comment


        • #5
          Nguyên văn bởi duong_act Xem bài viết
          Tùy trình dịch. HT,XC, MikroC thì cứ giã PORTB vào còn CCS thì khai báo
          #byte PORTB = địa chỉ PORTB rồi sau đó làm như mấy thằng kia.
          tui đang dùng trình CodeVisionAVR, bác có thể chỉ tui cách sử dụng rõ hơn được ko?

          thank bác.

          Comment


          • #6
            tình hình là sau khi mò mẫm đã làm được ^^ code em nó đây cho những ai như mình
            void shownumber(unsigned char *PORTx, unsigned char x)// Ham dua du lieu ra PORT
            {
            switch(x) // Tuy thuoc vao bien dau vao ma dua du lieu ra tu 0...9
            {
            case 0: { *PORTx=0x3F; break; } // So 0
            case 1: { *PORTx=0x06; break; } // So 1
            case 2: { *PORTx=0x5B; break; } // So 2
            case 3: { *PORTx=0x4F; break; } // So 3
            case 4: { *PORTx=0x66; break; } // So 4
            case 5: { *PORTx=0x6D; break; } // So 5
            case 6: { *PORTx=0x7D; break; } // So 6
            case 7: { *PORTx=0x07; break; } // So 7
            case 8: { *PORTx=0x7F; break; } // So 8
            case 9: { *PORTx=0x6F; break; } // So 9
            }
            }
            sử dụng:
            shownumber(&PORTC, 0);
            shownumber(&PORTD, 0);
            Còn vấn đề về con trỏ kéo ở trên có bác nào giải thích cho mình rõ hơn được ko?

            Thanks

            Comment


            • #7
              Nguyên văn bởi lion080889 Xem bài viết
              tui đang dùng trình CodeVisionAVR, bác có thể chỉ tui cách sử dụng rõ hơn được ko?

              thank bác.
              Xin lỗi nhầm sang PIC. CodeVisionAVR cũng làm vậy thôi.

              Comment

              Về tác giả

              Collapse

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

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

              Collapse

              • nhathung1101
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi nhathung1101
                Vừa thử lại, con loa kẹo kéo Tầu giá 1tr2 và loa Pionner.

                Thử đọc chứ chưa hát:

                - Ủa ái ni thì loa tàu ra đúng.

                - Ủa ái ni trên con Pionner thành Ùa ái ni. Mà từ "ái" lại rõ to.

                Thử "chèm...
                hôm nay, 00:23
              • nhathung1101
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi nhathung1101
                Nhưng anh em nào còn đam mê sửa nguồn thì cứ cố gắng.
                Tiền số đang có giá, mà nguồn cho bọn "trâu cày" toàn vài Kw.
                Làm được vẫn sống tốt. Tôi thì nghỉ hưu rồi.

                Hôm trước có ku em năn nỉ tôi sửa cho nó cái nguồn 12V/170Amp. Tôi bảo đi mua cái mới.
                hôm nay, 00:02
              • nhathung1101
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi nhathung1101
                Ngày xưa, còn làm với bên viễn thông (giờ chẳng thèm làm vì công bèo).
                Tôi sửa nguồn, tối thiểu phải đủ công cụ:
                - Osciloscope.
                - Logic Analyzer (để làm với chuẩn truyền thông)
                - Đồng hồ đo dòng. Đồng hồ đo áp. Đồng...
                Hôm qua, 23:43
              • nhathung1101
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi nhathung1101
                Thì không cấp nguồn là an toàn nhất rồi còn gì? Lo gì cháy nổ.
                Còn đo đạc thì kiểm tra huyết áp hay nhịp tim ở cô hàng xóm vậy.

                Còn Mèo thì toàn xúi thâm, thằng nào nghe cứ lãnh đủ. Chuyên lừa chuột non....
                Hôm qua, 23:32
              • nhathung1101
                Trả lời cho Trình điều khiển bước rời rạc
                bởi nhathung1101
                "Chú ấy" ở bên Quảng Đông đấy. Đang bị "rã rời" rồi, nên đừng hướng vào con đường tội lỗi nữa....
                Hôm qua, 23:26
              • nhathung1101
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi nhathung1101
                Loa Tầu nó đáp ứng được tiếng VN, vì mấy câu hát kiểu "oăng oẳng như sủa" Nhật nó không có. Nó chỉ hát kiểu "đục đục chạc chạc" thôi.
                Nếu thấy loa Tầu hay, thì gỡ cái mác SONY gắn vào là xong. Còn cái loa Nhật thì vứt luôn, chỉnh làm quái gì.
                ...
                Hôm qua, 23:17
              • since0501
                Trả lời cho Pin Li-FePO4 (pin sắt) rất dể hỏng! Các biện pháp ngăn ngừa.
                bởi since0501
                Mình đào mộ xíu, cho mình hỏi là pin của bác vẫn ok chứ? Mình vừa đóng khối pin 16 cell 40135 thì khi chạy điện áp nó sụt so với khi nghỉ như video mình dẫn link, vậy cho mình hỏi là dung lượng pin sẽ tính khi áp nghỉ hay áp đang hoạt động, và pin sụt áp như vậy là bình thường hay pin kém?
                ht...
                Hôm qua, 17:56
              • mèomướp
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi mèomướp
                Dạ hông dám làm thì chắc chắn sẽ mãi ko thể làm được đâu ạ. Nguồn xung dân dụng vài kw giờ rất nhìu ạ, sạc ô tô điện, máy hàn, lò vi sóng, âm ly... tùy chất lượng mà độ phức tạp sẽ khác nhau ạ. Và cái giá phải trả về kinh tế...
                10-01-2025, 13:11
              • tuyennhan
                Trả lời cho Sửa bộ nguồn DC 60V 45A
                bởi tuyennhan
                Sửa dạng này thì chuyên còn không dám chắc khộng cháy nổ với linh kiện bán ngoài chợ nói gì khộng chuyên .
                10-01-2025, 09:25
              • tuyennhan
                Trả lời cho Cần tư vấn cải thiện chất âm thanh loa SoNy.
                bởi tuyennhan
                Đúng rồi chọn mua theo tai . ca thì phải toàn dải nhạc thì chỉ cao và thấp thé nên loa ca thì nghe nhạc không hay và ngược lại .
                Muốn ca và nhạc đều hay thì phải dúng 2 giàn , còn nếu chỉ có 1 thì phải chỉnh sửa lại sao cho ca và nhạc đều được không quá dở ....
                10-01-2025, 09:10
              Đang tải...
              X