![]() |
có ai rành về ADC của pic xem giùm em cái này nhé
1 Attachment(s)
em dang dùng pic6F877A để làm mạch đo dòng và áp và hiển thị giá trị dòng và áp đó lên máy tính thông qua giao diện VB6.
sơ đồ nguyên lý kèm theo: áp được lấy thông qua biến áp 220:3 V dòng dược lấy vào qua biến dòng có tỉ số 200/5A còn đây là chương trình: (không biết là em viết vậy có được không? tại vì giờ mới tập viết PIC) (mà không bít có phải dùng setup_adc_ports(ALL_ANALOG) thì nó sẽ so sánh điện áp analog vào với điện áp chuẩn Vref là 5V kô nữa ) v #include <16F877A.H> #DEVICE ADC=10 #use delay (clock=20000000) #use rs232(baud=9600, xmit=PIN_C6,rcv=PIN_C7, STOP=1) int16 dong=0, ap=0; void main() { setup_adc_ports(ALL_ANALOG); setup_adc(ADC_CLOCK_INTERNAL); while(1) { set_adc_channel(0); delay_us(10); ap=read_adc(); ap=ap*220/614.4; set_adc_channel(1); delay_us(10); dong=read_adc(); dong=dong*200/1024; printf("%Lu %Lu\r",ap, dong); } } |
sao bạn khong dùng proteus để mô phỏng chúng, nó hỗ trợ đày đủ cái cậu cần.
xem là biết ngay code cậu đúng hay sai.. |
Trích:
em không hiểu con LM324(cách đấu như vậy thì chúc năng của nó làm gi em có phải nó để khuyếch đại không?bác nối khó hiểu quá) |
Múi giờ GMT. Hiện tại là 04:44 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam