C:\Users\meito\MPLABXProjects\Takujo-15-2.X\Takujo-15-2.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 = 0b10001100;
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 RA0 = 0;
51 RA1 = 0;
52 RA2 = 0;
53 RA7 = 0;
54 RB6 = 0;
55 RB5 = 0;
56 RB4 = 1;
57
58 __delay_ms(300);
59 RB1 = 1;
60 __delay_ms(500);
61 RB0 = 1;
62 __delay_ms(1000);
63 RB1 = 0;
64 __delay_ms(500);
65 RB0 = 0;
66 __delay_ms(500);
67
68 while(1){
69 while(RA7 == 0){
70 __delay_ms(50);
71 }
72
73
74 RB4 = 0;
75 RB5 = 1;
76 RA2 = 1;
77 CCPR3L = 255;
78
79 while(RB2 == 1){
80 __delay_ms(10);
81 }
82 for(spe=255; spe>-1; spe--){
83 CCPR3L = spe ;
84 __delay_ms(5);
85 }
86 RA2 = 0;
87 RA0 = 1;
88
89 __delay_ms(2000);
90 RA0 = 0;
91
92
93 RB4 = 0;
94 RB6 = 1;
95
96 RA2 = 1;
97 for(spe =0; spe<256; spe++){
98 CCPR3L = spe ;
99 __delay_ms(5);
100 }
101
102 while(RB7 == 1){
103 __delay_ms(10);
104 }
105 RB6 = 0;
106 RB4 = 1;
107
108 while(RB3 == 1){
109 if(RB7 == 0){
110 RB4 = 0;
111 RB5 = 1;
112 }
113 __delay_ms(10);
114 }
115 RB5 = 0;
116 RB6 = 1;
117
118
119 while(RB2 == 1){
120 __delay_ms(10);
121 }
122
123 while(RB7 == 1){
124 __delay_ms(10);
125 }
126 RB6 = 0;
127 RB4 = 1;
128
129 while(RB3 == 1){
130 if(RB7 == 0){
131 RB4 = 0;
132 RB5 = 1;
133 }
134 __delay_ms(10);
135 }
136
137
138 while(RB2 == 1){
139 __delay_ms(10);
140 }
141 RB5 = 0;
142 RB4 = 1;
143
144 for(spe=255; spe>-1; spe--){
145 CCPR3L = spe ;
146 __delay_ms(5);
147 }
148 RA2 = 0;
149
150 __delay_ms(2000);
151
152
153 RB1 = 1;
154 __delay_ms(500);
155 RB0 = 1;
156 __delay_ms(500);
157 RB4 = 0;
158 RB6 = 1;
159
160 RA2 = 1;
161 for(spe =0; spe<256; spe++){
162 CCPR3L = spe ;
163 __delay_ms(5);
164 }
165
166
167 while(RA1 == 0){
168 __delay_ms(10);
169 }
170
171 RB0 = 0;
172 __delay_ms(500);
173 RB1 = 0;
174 __delay_ms(500);
175
176 }
177 }
178
179