Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <16f877a.h>
- #fuses noprotect, nolvp, nowdt, put, hs
- #use delay (clock=20000000)
- #use fast_io(c)
- #use fast_io(d)
- #bit RC0=0x07.0
- #bit RC1=0x07.1
- #bit RC2=0x07.2
- #bit RC3=0x07.3
- #bit RC4=0x07.4
- #bit RC5=0x07.5
- #bit RC7=0x07.7
- int16 dem,i;
- int servo1,servo2,servo3,servo4,servo5, tam;
- int mang1[11]={10,11,12,13,14,15,16,17,18,19,20};
- int mang2[11]={20,19,18,17,16,15,14,13,12,11,10};
- #int_TIMER0
- void TIMER0_isr(void)
- {
- set_timer0(139);
- dem++;
- if (dem >= 200) // ngat 0,1ms, 0,1x200=20ms, chu ky 50hz, value chay tu 6-23
- {
- dem=0;
- RC0=1;
- RC1=1;
- RC2=1;
- RC3=1;
- RC4=1;
- }
- if (dem >= servo1)RC0=0;
- if (dem >= servo2)RC1=0;
- if (dem >= servo3)RC2=0;
- if (dem >= servo4)RC3=0;
- if (dem >= servo5)RC4=0;
- }
- /*#Int_TIMER1
- void Time()
- {
- set_timer1(65285);
- value=tam;
- }*/
- void home()
- {
- servo1=10;
- servo2=13;
- servo3=18;
- servo4=20;
- servo5=13;
- }
- void quaytrai()
- {
- servo1=10;
- }
- void quayphai()
- {
- servo1=20;
- }
- void len()
- {
- servo2=10;
- servo3=13;
- }
- void xuong()
- {
- servo2=15;
- servo3=18;
- }
- void gapqua()
- {
- servo4=10;
- servo5=20;
- }
- void nhaqua()
- {
- servo4=15;
- servo5=15;
- }
- void main()
- {
- set_tris_c(0x00);
- //set_tris_d(0x00);
- //setup_timer_1(T1_INTERNAL|T1_DIV_BY_1); // cho timer 1 chay ? ch? d? timer.B?t chia 8
- //set_timer1(65285) ; // m?c d?nh s? d?m ban d?u cho timer1 la 24280.
- //enable_interrupts(int_timer1);
- enable_interrupts(int_timer0);
- enable_interrupts(global);
- setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4);
- set_timer0(131);
- while(true)
- {
- servo1=6;
- delay_ms(1500);
- servo1=8;
- delay_ms(1500);
- servo1=10;
- delay_ms(1500);
- servo1=14;
- delay_ms(1500);
- servo1=17;
- delay_ms(1500);
- servo1=20;
- delay_ms(1500);
- servo1=24;
- delay_ms(1500);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement