tắt chức năng analog của các port??

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • hongquyen
    Đệ tử 4 túi
    • Jun 2007
    • 74

    #1

    tắt chức năng analog của các port??

    đối với PIC16f887 sau khi reset thì mặc định các port A,B,E sẽ mặc định là đọc điện áp là analog vậy trong CCS thì mình khai báo 2 lệnh sau trong main:setup_adc_(adc_off)và setup_adc_ports(no_analog) để đọc điện áp digital cho chính xác làm như vậy có phải kg ạ??

    em cảm ơn!
  • Mr.Bi
    Đệ tử 7 túi
    • Jul 2007
    • 188

    #2
    hình như k phải, mặc định khi RST , các chân đều là IO digit.

    Comment

    • hongquyen
      Đệ tử 4 túi
      • Jun 2007
      • 74

      #3
      nhưg mà anh ơi sau khi reset thì thanh ghi ANSEL bằng 1 mà anh, mà bằng 1 có nghĩa là chứ năng analog hoạt đúng mà ạ??

      anh coi lại giúp em với

      Comment

      • phamminhtuan
        Super Moderator
        • Feb 2006
        • 150

        #4
        Nguyên văn bởi hongquyen View Post
        đối với PIC16f887 sau khi reset thì mặc định các port A,B,E sẽ mặc định là đọc điện áp là analog vậy trong CCS thì mình khai báo 2 lệnh sau trong main:setup_adc_(adc_off)và setup_adc_ports(no_analog) để đọc điện áp digital cho chính xác làm như vậy có phải kg ạ??

        em cảm ơn!
        để đọc điện áp digital cho chính xác có nghĩa là sao hả bạn?
        setup_adc_ports(no_analog) cấu hình các ngõ vào ADC (ANx) sử dụng như digital I/O, chỉ xuất/nhập mức logic
        Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
        http://www.picvietnam.com/forum/showthread.php?t=1263

        Comment

        • hongquyen
          Đệ tử 4 túi
          • Jun 2007
          • 74

          #5
          để đọc điện áp digital cho chính xác <<<< ý của em là sau khi reset thì thanh ghiANSEL sẽ là 1, vậy nếu mình kg tác động vào thanh ghi(dùng setup_adc_ports(no_analog) ) này thì khi đọc mức logic thì nó sẽ luôn là "0"

          ý em là như vậy ạ

          Comment

          • phamminhtuan
            Super Moderator
            • Feb 2006
            • 150

            #6
            Nguyên văn bởi hongquyen View Post
            để đọc điện áp digital cho chính xác <<<< ý của em là sau khi reset thì thanh ghiANSEL sẽ là 1, vậy nếu mình kg tác động vào thanh ghi(dùng setup_adc_ports(no_analog) ) này thì khi đọc mức logic thì nó sẽ luôn là "0"

            ý em là như vậy ạ
            Hoàn toàn chính xác, khi ANSx = 1 và TRISx = 1 thì đọc giá trị của Port = 0
            Khi Reset thì ANSx = 1 và TRISx = 1.
            Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
            http://www.picvietnam.com/forum/showthread.php?t=1263

            Comment

            • Mr.Bi
              Đệ tử 7 túi
              • Jul 2007
              • 188

              #7
              u khai báo thế này , dù RST bao nhiu , các chân của u cũng là IO Digit , ok ?
              Code:
              main()
              { set_tris_x(0x00); // neu mun tất cả các chân của port này là chân xuất
                                             (set_tris_x(0xFF); // hoặc nhập)
                 PORTx = 0 ; xuất mức 0
                 while(1); 
              }

              Comment

              Working...