![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: May 2013
Bài gửi: 1
: |
![]() em mới tìm hiểu về piic ,code này khi dịch thì nó báo lỗi,mong các anh chị xem giúp t
lỗi ơ đây em k úp bàng hình ảnh đc mong mấy anh dowload vè xem dùm em.code em có đưa kem theo luôn ak.em dùng píc để điều khiển RF với giao tieps máy tinh #include <16F877A.h> #include <DEFS_16F877A.h> #include <stdlib.h> #device *=16 #fuses NOWDT,HS,NOPUT,NOPROTECT,NODEBUG,NOBROWNOUT,NOLVP, NOCPD,NOWRT //khai bao cac thiet dat cho PIC #use delay(clock=20000000) #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7) signed int8 y; #bit rc0 = 0x07.0 //khai bao su dung thach anh 20MHz de su dung ham delay cua chuong trinh #define DC1 RC0 #define DC2 RC1 // CCP2 #define DC3 RC2 // CCP1 #define DC4 RC3 #define RELAY1 RD0 #define RELAY2 RD1 #define RELAY3 RD2 #define RELAY4 RD3 //rb4 : A //rb5 : C //rb2 : D //rb3 : B /************************************************** ***********************************/ #INT_RDA VOID RECEVICE() { y=getc(); } void main() { INT8 X; X = 500; enable_interrupts(global); enable_interrupts(INT_RDA); set_tris_c(0xf0); set_tris_d(0x00); set_tris_b(0b00111100); //unsigned char x; //set_tris_c(0xf9); //dat 2chan ccp_pwm la output con cac chan con lai la input //output_c(127); //rc0 = 0; //output_d(0);//portd = 0 //output_bit(pin_c0,0);// pin c0 =0set_tris_c(0xf0); set_tris_b(0b00111100); setup_timer_2(t2_div_by_16,255,16);//t2_div_by_16:bo chia tan cho 16 => moi lan dem se mat thoi gian la (4/f*16) //tang den 255 thi reset=>timer 2 se tran` sau 255*4/f*16 //sau 16 lan tran timer 2 thi xay ra ngat=>sau 16*255*4/f*16 se xay ra ngat timer 2 //tong cong thoi gian~13ms setup_ccp1(ccp_pwm); setup_ccp2(ccp_pwm); while(true) { dc1 = 1; set_pwm1_duty(1023); set_pwm2_duty(1023); dc4 = 1; relay3 = 1; relay4 = 1; relay2 = 1; relay1 = 1; //********************************** DIEU KHIEN BANG MAY TINH ************************************************** ****** //////////////// ROBOT TIEN ///////////////////////////////////////////////////////////////////////// if(y==1) { // output_bit(pin_c1,0); set_pwm1_duty(550); set_pwm2_duty(550); } ///////////////ROBOT LUI ////////////////////////////////////////////////////////////////////// if(y==2) { relay2 = 0; relay3 = 0; set_pwm1_duty(800); set_pwm2_duty(800); } /////////////// ROBOT RE TRAI ///////////////////////////////////////////////////////////////////// if (y==3) { relay2 = 0; set_pwm1_duty(800); set_pwm2_duty(800); } ///////////////// ROBOT RE PHAI ///////////////////////////////////////////////////////////////////////// if (y==4) { relay3 = 0; set_pwm1_duty(800); set_pwm2_duty(800); } //////////////// DUNG ROBOT //////////////////////////////////////////////////////////////////////////// if(y==5) // phim D { set_pwm1_duty(1023); set_pwm2_duty(1023); } ///////////////// QUAY TRAI CAMERA //////////////////////////////////////////////////////////////////// if(y==7) { output_d(0x90); delay_ms(50); output_d(0xC0); delay_ms(50); output_d(0x60); delay_ms(50); output_d(0x30); delay_ms(50); } ////////////////// QUAY PHAI CAMERA /////////////////////////////////////////////////////////////////// if(y==6) { output_d(0x30); delay_ms(50); output_d(0x60); delay_ms(50); output_d(0xC0); delay_ms(50); output_d(0x90); delay_ms(50); } //***********************DIEU KHIEN BANG TAY ******************************************* ////////// robot tien/////////////////////////////////////////////////// while(rb3 == 1)// phim B { x--; set_pwm1_duty(x); set_pwm2_duty(x); delay_ms(200); } ////////////robot lui///////////////////////////////////////////////////// while(rb4 == 1) // phim A { relay2 = 0; relay3 = 0; delay_ms(200); x--; set_pwm1_duty(x); set_pwm2_duty(x); delay_ms(200); } //////////////// robot re trai////////////////////////////////////////// while(rb5 == 1) // phim C { relay2 = 0; delay_ms(200); x--; set_pwm1_duty(x); set_pwm2_duty(x); delay_ms(200); } ////////////////////robot re phai///////////////////////////// while(rb2 == 1) // phim D { relay3 = 0; delay_ms(200); x--; set_pwm1_duty(x); set_pwm2_duty(x); delay_ms(200); } /*while(x!=1023){ x++; set_pwm1_duty(x); set_pwm2_duty(x); delay_us(2500);} delay_ms(500); while(x>0){ x--; set_pwm1_duty(x); set_pwm2_duty(x); delay_us(2500);}*/ } } link lỗi đây ak,mong các anh chi giúp em http://www.mediafire.com/#myfiles thay đổi nội dung bởi: anhvip37, 08-05-2013 lúc 09:51 AM. Lý do: thiếu teptin |
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Feb 2011
Bài gửi: 1
: |
anhvip37 đã khắc phúc đc rồi
|
![]() |
![]() |
![]() |
#3 |
Nhập môn đệ tử
|
sửa lại #include <DEF_877a.h>
xóa dòng #device *=16 |
![]() |
![]() |