Trích:
Nguyên văn bởi maiduy082
đoạn code của em thế này:
setup_adc(adc_clock_internal);
setup_adc_ports( ALL_ANALOG);
set_adc_channel(0);
data = read_adc();
putc(data);
anh cho em hỏi thêm 1 ý nữa, khi mình không sử dụng (không nối đi dâu) chân Vref+ và chân Vref- thì pic sẽ hiểu như thế nào.
cám ơn anh Nam.
|
Nếu kết quả của read_adc() là một giá trị 8-bit thì lệnh putc(data) vẫn truyền được giá trị đó về PC, nhưng không phải là mã ASCII của 1 ký tự. Do đó, ở phía PC bạn phải hiểu là đã nhận được 1 byte giá trị, chứ không phải mã ASCII của 1 ký tự.
Nếu kết quả của read_adc() là một giá trị 10-bit thì lệnh putc(data) có lẽ chỉ lấy byte thấp của giá trị 10-bit đó, và gửi về PC như đã nói trên. Tôi thường không viết sai kiểu này nên mới có cụm từ "có lẽ" trong câu trước.
Vấn đề không phải là bạn có nối các chân Vref+ và Vref- hay không, mà là bạn có thiết lập để sử dụng hay không. Nếu thiết lập để không dùng các chân này thì không cần phải nối chúng đi đâu cả.
Thân,