質問編集履歴

1

ソースの挿入

2021/11/09 03:20

投稿

Y.Ta
Y.Ta

スコア2

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ![イメージ説明](f3858b3918300966f9b81471a21d4ee2.jpeg)
1
+ [イメージ説明](f3858b3918300966f9b81471a21d4ee2.jpeg)
2
2
 
3
3
 
4
4
 
@@ -53,3 +53,167 @@
53
53
 
54
54
 
55
55
  L298nドライバーが発熱している原因はなんでしょう。
56
+
57
+
58
+
59
+ ```
60
+
61
+ //ソースコードです
62
+
63
+ #include<LiquidCrystal_I2C.h>
64
+
65
+ LiquidCrystal_I2C lcd(0x27,16,2);//LCD情報
66
+
67
+
68
+
69
+ #include <Stepper.h>
70
+
71
+ Stepper myStepper(200, 8, 9, 10, 11);//X軸モーター
72
+
73
+
74
+
75
+ #include<Wire.h>
76
+
77
+
78
+
79
+ volatile unsigned int count=0;//割り込み初期値
80
+
81
+
82
+
83
+ void setup(){//一度だけ実行
84
+
85
+
86
+
87
+ Serial.begin(9600);
88
+
89
+
90
+
91
+ pinMode(2, INPUT); //割り込みピン
92
+
93
+ attachInterrupt(0, count_pulse, RISING);//外部入力割り込み(2ピン、関数、HIGHでオン)
94
+
95
+
96
+
97
+ lcd.init(); // LCDの初期化
98
+
99
+ lcd.backlight(); // LCDバックライトの点灯
100
+
101
+ lcd.setCursor(0, 0); // LCD1行目指定
102
+
103
+ lcd.print("PickUp Coil Winding"); // 文字の表示
104
+
105
+ lcd.setCursor(0, 1); // LCD2行目指定
106
+
107
+ lcd.print("For SINGLE Coil"); // 文字の表示
108
+
109
+
110
+
111
+
112
+
113
+ myStepper.setSpeed(180);//X軸動作速度
114
+
115
+
116
+
117
+ //DCモーター
118
+
119
+ pinMode(3, OUTPUT);//速度
120
+
121
+ pinMode(4, OUTPUT);//DC out
122
+
123
+ pinMode(5, OUTPUT);//DC out
124
+
125
+
126
+
127
+ }
128
+
129
+
130
+
131
+ void rot1(){//DCモーター制御 正転(反転させる場合はHIGH/LOWを逆に)
132
+
133
+
134
+
135
+
136
+
137
+ analogWrite(3, 70); //DCパワー
138
+
139
+ digitalWrite(4, HIGH);
140
+
141
+ digitalWrite(5, LOW);
142
+
143
+
144
+
145
+
146
+
147
+ }
148
+
149
+
150
+
151
+ void rot2(){//X軸制御
152
+
153
+
154
+
155
+
156
+
157
+ myStepper.step(300);
158
+
159
+ delay(10);
160
+
161
+ myStepper.step(-300);
162
+
163
+ delay(10);
164
+
165
+
166
+
167
+ }
168
+
169
+
170
+
171
+ void loop(){
172
+
173
+
174
+
175
+ rot1();
176
+
177
+ delay(10);
178
+
179
+
180
+
181
+ rot2();
182
+
183
+ delay(10);
184
+
185
+
186
+
187
+ while(count > 500){//規定countでDCモーターを動作ストップさせループエンド
188
+
189
+ analogWrite(3, 0);
190
+
191
+ digitalWrite(4, LOW);
192
+
193
+ digitalWrite(5, LOW);
194
+
195
+ exit(0);
196
+
197
+ }
198
+
199
+ }
200
+
201
+
202
+
203
+ void count_pulse(){
204
+
205
+
206
+
207
+ count=count+1;
208
+
209
+ Serial.print("Count___");
210
+
211
+ Serial.println(count);
212
+
213
+
214
+
215
+
216
+
217
+ }
218
+
219
+ ```!