C:\Users\meito\MPLABXProjects\Takujo-13-3.X\Takujo-13-3.c |
1 /*****************************************
2
3
4
5
6 #include <xc.h>
7
8 #define _XTAL_FREQ 8000000
9
10
11 #pragma config FOSC = INTOSC
12 #pragma config WDTE = OFF
13 #pragma config PWRTE = ON
14 #pragma config MCLRE = ON
15 #pragma config CP = OFF
16 #pragma config CPD = OFF
17 #pragma config BOREN = ON
18 #pragma config CLKOUTEN = OFF
19 #pragma config IESO = ON
20 #pragma config FCMEN = OFF
21
22
23 #pragma config WRT = OFF
24 #pragma config PLLEN = ON
25 #pragma config STVREN = ON
26 #pragma config BORV = LO
27 #pragma config LVP = OFF
28
29 void main()
30 {
31 unsigned int spe ;
32
33 OSCCON = 0b01110010;
34 ANSELA = 0b00000000;
35 ANSELB = 0b00000000;
36 TRISA = 0b10000010;
37 TRISB = 0b00001100;
38 PORTA = 0b00000000;
39 PORTB = 0b00001100;
40 CCPTMRS = 0b00000000;
41 CCP3CON = 0b00001100;
42 T2CON = 0b00000010;
43 PR2 = 124;
44 CCPR3L = 0;
45 CCPR3H = 0;
46 TMR2 = 0;
47 TMR2ON = 1;
48
49 CCPR3L = 0;
50 RA1 = 0;
51 RA2 = 0;
52 RA7 = 0;
53 RA0 = 0;
54
55 __delay_ms(300);
56 RB1 = 1;
57 __delay_ms(500);
58 RB0 = 1;
59 __delay_ms(1000);
60 RB1 = 0;
61 __delay_ms(500);
62 RB0 = 0;
63 __delay_ms(500);
64
65 while(1){
66 while(RA7 == 0){
67 __delay_ms(50);
68 }
69
70 RA2 = 1;
71 for(spe =0; spe<256; spe++){
72 CCPR3L = spe ;
73 __delay_ms(5);
74 }
75 __delay_ms(2000);
76
77 while(RB2 == 1){
78 __delay_ms(10);
79 }
80 __delay_ms(2000);
81
82 while(RB2 == 1){
83 __delay_ms(10);
84 }
85 for(spe=255; spe>-1; spe--){
86 CCPR3L = spe ;
87 __delay_ms(5);
88 }
89 RA2 = 0;
90
91 __delay_ms(2000);
92
93 while(RA1 == 0){
94 __delay_ms(10);
95 }
96
97 RB1 = 1;
98 __delay_ms(500);
99 RB0 = 1;
100 __delay_ms(500);
101
102 RA2 = 1;
103 for(spe =0; spe<256; spe++){
104 CCPR3L = spe ;
105 __delay_ms(5);
106 }
107
108 while(RA1 == 1){
109 __delay_ms(50);
110 }
111
112 __delay_ms(500);
113 RB1 = 0;
114 __delay_ms(500);
115 RB0 = 0;
116 __delay_ms(500);
117
118 while(RB3 == 1){
119 __delay_ms(50);
120 }
121 RA0 = 1;
122
123 while(RB2 == 1){
124 __delay_ms(10);
125 }
126 for(spe=255; spe>-1; spe--){
127 CCPR3L = spe ;
128 __delay_ms(5);
129 }
130 RA2 = 0;
131
132 RA0 = 0;
133
134 __delay_ms(2000);
135
136 }
137 }
138
139