04-04-2009, 11:53 AM | #1 |
Đệ tử 6 túi
Tham gia ngày: Nov 2008
Nơi Cư Ngụ: Di Linh
Bài gửi: 131
: |
xử lí da ta từ pc truyền xuống
mình đang làm giao tiếp pc <--> pic dùng vb6
đoạn code sau đơn giản chỉ khi nào nhận được data thì đảo trang thái portB. việc nhận có xảy ra , nhưng nó lai ko thoát ngắt được (cứ đảo portB). mong mọi người giúp /////////////////////////////////////////////////////////////// #include <16F877.h> #device *= 16 ADC = 10 // su dung ADC 10 bit , ADC tu 0-1024 #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT #use delay(clock=4000000,RESTART_WDT) #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bi ts=8)//,stream=PC,errors) #use fast_io(b) #byte portb = 0x06 // có xảy ra ngắt nhưng cứ đảo port B// int16 val_adc; #INT_rda void ngat_rs232() { portb = ~ portb; /// neu xay ra ngat rs_232 thi dao portb } ////////////////////////////////// void main() { set_tris_a ( 1 ) ; set_tris_b ( 0x00 ) ; portb = 255; enable_interrupts ( INT_rda ) ; // data nhan tu rs 232 da san sang enable_interrupts ( GLOBAL ) ; // cho phep ngat toan cuc ////// cho phep bien doi ad chan RA0 /////////////// setup_adc(adc_clock_internal); setup_adc_ports(AN0); set_adc_channel(0); delay_ms(10); while(1) { Delay_ms(500); val_adc = read_adc(); val_adc = (val_adc >> 2) ; /// putc('a');// kenh 0 putc(val_adc); } } thay đổi nội dung bởi: phandinh, 04-04-2009 lúc 12:39 PM. |
|
|