PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cảm biến (http://www.picvietnam.com/forum/forumdisplay.php?f=18)
-   -   sửa giúp em đoạn code cho cảm biến siêu âm srf05 (http://www.picvietnam.com/forum/showthread.php?t=31943)

hungcdt_k49 13-03-2013 12:10 AM

sửa giúp em đoạn code cho cảm biến siêu âm srf05
 
em mới tập tành viết code, bài tập lớn của em viết về cảm biến siêu âm. em không hiểu sao led chỉ hiển thị số 50, đèn led trên cảm biến vẫn nháy, em lắp con led vào chân echo thì nó vẫn nháy, chứng tỏ có xung trả về, mong mọi người sửa giúp em. code của em đây:

#include "18f4431.h"
#fuses hs,noprotect,nodebug,nocpd,nolvp,nobrownout,nowdt
#use delay(clock=20000000)
int8 dvi,chuc,tram,ngan,i,led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
int16 time,s;
#int_ccp1
void ccp1() // bat canh len
{
set_timer1(0);
}
#int_ccp2
void ccp2() // bat canh xuong
{
time=get_timer1();
}
void main()
{
setup_ccp1(ccp_capture_fe);
setup_ccp2(ccp_capture_re);
setup_timer_1(t1_internal|t1_div_by_4);
enable_interrupts(int_ccp1);
enable_interrupts(int_ccp2);
enable_interrupts(global);
while(1)
{
output_high(pin_d0);
delay_us(20);
output_low(pin_d0);
delay_ms(50);
s=((time*0.0013*344)/2);
dvi=s%10;
chuc=((s-dvi)/10)%10;
tram=((s-(chuc*10+dvi))/100)%10;
ngan=((s-(tram*100+chuc*10+dvi))/1000);
for(i=0;i<100;i++)
{
output_d(0b01111111);
output_b(led[chuc]);
delay_us(500);
output_d(0b10111111);
output_b(led[tram]);
delay_us(500);
}
output_d(0xff);
}
}


Múi giờ GMT. Hiện tại là 03:47 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