![]() |
![]() |
#1 |
Đệ tử 4 túi
Tham gia ngày: Jun 2007
Bài gửi: 74
: |
![]() đố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! |
![]() |
![]() |
![]() |
#2 |
Đệ tử 7 túi
Tham gia ngày: Jul 2007
Nơi Cư Ngụ: Đà Nẵng
Bài gửi: 188
: |
hình như k phải, mặc định khi RST , các chân đều là IO digit.
|
![]() |
![]() |
![]() |
#3 |
Đệ tử 4 túi
Tham gia ngày: Jun 2007
Bài gửi: 74
: |
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 |
![]() |
![]() |
![]() |
#4 | |
Super Moderator
Tham gia ngày: Feb 2006
Bài gửi: 150
: |
Trích:
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 |
|
![]() |
![]() |
![]() |
#5 |
Đệ tử 4 túi
Tham gia ngày: Jun 2007
Bài gửi: 74
: |
để đọ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 ạ |
![]() |
![]() |
![]() |
#6 | |
Super Moderator
Tham gia ngày: Feb 2006
Bài gửi: 150
: |
Trích:
Khi Reset thì ANSx = 1 và TRISx = 1. |
|
![]() |
![]() |
![]() |
#7 |
Đệ tử 7 túi
Tham gia ngày: Jul 2007
Nơi Cư Ngụ: Đà Nẵng
Bài gửi: 188
: |
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); } |
![]() |
![]() |
![]() |
|
|