Page 134 - 1156_Arduino-Polnyy-uchebnyy-kurs-ot-igry-k-inzhenernomu-proektu
P. 134
5.6. Практические задания по Wiring
133
38. digitalWrite(in1,LOW);
39. digitalWrite(in2,LOW);
40. digitalWrite(in3,HIGH);
4 1. digitalWrite(in4,HIGH);
42. delay(5);
43.
44. digitalWrite(in1,LOW);
45. digitalWrite(in2,LOW);
46. digitalWrite(in3,LOW);
47. digitalWrite(in4,HIGH);
48. delay(5);
49.
50. digitalWrite(in1,HIGH);
5 1. digitalWrite(in2,LOW);
52. digitalWrite(in3,LOW);
53. digitalWrite(in4,HIGH);
54. delay(5);
55.
56. digitalWrite(in1,HIGH);
57. digitalWrite(in2,LOW);
58. digitalWrite(in3,LOW);
59. digitalWrite(in4,LOW);
50. delay(5);
6 1. }
Как видите, код получился слишком громоздкий, но с помощью
специальной библиотеки его можно сильно сократить и упро-
стить. Ниже приведен тот же самый фрагмент программы, но
написанный в IDE с использованием библиотеки Stepper для ша-
говых двигателей:
1. #include <Stepper.h> // Подключение библиотеки для двигателя
2.
3. Stepper myStepper(2048,8,9,10,11); // Инициализация объекта
4. // типа шаговый двигатель с 2048 шагами, подключенного
5. // к контактам 8+11
6.
7. void setup() {
8. myStepper.setSpeed(10); // Установка скорости
9. }
1 0.
1 1. void loop() {
1 2. myStepper.step(2048); // Сделать полный оборот вперед
1 3. delay(1000);
1 4. myStepper.step(+2048); // Сделать полный оборот назад
1 5. delay(1000);
1 6. }
4 / 18