Лучший эмулятор Arduino UnoArduSim V2.6. Первая серия.


Пример 1. Счетчик переменной count



//Начало скетча


  1. int count;
  2. void setup(){count=0;}
  3. void loop()
  4. { count=count+1;delay(100);
  5. }

//Конец скетча


Пример 2. Вывод данных в Serial порт.



//Начало скетча


  1. int count;
  2. void setup(){
  3. count=0;
  4. pinMode(13, OUTPUT);
  5. Serial.begin(9600);
  6. }
  7. void loop(){
  8. count=count+1;delay(100);
  9. digitalWrite(13, HIGH);delay(200);
  10. digitalWrite(13, LOW);delay(800);
  11. Serial.println(count);
  12. }

//Конец скетча


Пример 3. Отправка данных в Serial порт.



//Начало скетча


  1. int val = 0;
  2. void setup(){
  3. pinMode(13, OUTPUT);
  4. Serial.begin(9600);
  5. }
  6. void loop(){
  7. val = Serial.read();
  8. if (val == '1') { digitalWrite(13, HIGH);}
  9. if (val == '0') { digitalWrite(13, LOW);}
  10. if (val == '2') {
  11. digitalWrite(13, HIGH);delay(100);
  12. digitalWrite(13, LOW);delay(500);
  13. digitalWrite(13, HIGH);delay(100);
  14. digitalWrite(13, LOW);delay(500);
  15. digitalWrite(13, HIGH);delay(100);
  16. digitalWrite(13, LOW);delay(500);
  17. } }

//Конец скетча


Пример 4. Использование 2 Serial соединений, штатного и программного.



//Начало скетча


  1. #include "SoftwareSerial.h"
  2. SoftwareSerial KolotushkinSerial(2, 3);
  3. int val = 0;
  4. void setup(){
  5. pinMode(12, OUTPUT);
  6. pinMode(13, OUTPUT);
  7. KolotushkinSerial.begin(9600);
  8. Serial.begin(9600);
  9. }
  10. void loop(){
  11. val = Serial.read();
  12. if (val == '1') { digitalWrite(13, HIGH);}
  13. if (val == '0') { digitalWrite(13, LOW);}
  14. if (val == '2') {
  15. digitalWrite(13, HIGH);delay(100);
  16. digitalWrite(13, LOW);delay(500);
  17. digitalWrite(13, HIGH);delay(100);
  18. digitalWrite(13, LOW);delay(500);
  19. digitalWrite(13, HIGH);delay(100);
  20. digitalWrite(13, LOW);delay(500);
  21. }
  22. val = KolotushkinSerial.read();
  23. if (val == '1') { digitalWrite(12, HIGH);}
  24. if (val == '0') { digitalWrite(12, LOW);}
  25. if (val == '2') {
  26. digitalWrite(12, HIGH);delay(100);
  27. digitalWrite(12, LOW);delay(500);
  28. digitalWrite(12, HIGH);delay(100);
  29. digitalWrite(12, LOW);delay(500);
  30. digitalWrite(12, HIGH);delay(100);
  31. digitalWrite(12, LOW);delay(500);
  32. } }

//Конец скетча


Пример 5. Использование кнопки и пьезоэлектрического динамика.



//Начало скетча


  1. int buttonState = 0;
  2. void setup(){
  3. pinMode(2, INPUT);
  4. pinMode(3, OUTPUT);
  5. }
  6. void loop(){
  7. buttonState = digitalRead(2);
  8. if (buttonState == HIGH) {
  9. tone(3, 923, 300);
  10. //delay(300);
  11. tone(3, 323, 300);
  12. //delay(300);
  13. tone(3, 523, 300);
  14. //delay(300);
  15. } else { noTone(3);}
  16. }

//Конец скетча


Пример 6. Изменение скорости вращения четырех фазного шагового двигателя при помощи потенциометра.



//Начало скетча


  1. void setup() {
  2. // 8, 9, 10, 11 контакты к которым подключается шаговый двигатель
  3. pinMode(8, OUTPUT);
  4. pinMode(9, OUTPUT);
  5. pinMode(10, OUTPUT);
  6. pinMode(11, OUTPUT);
  7. }
  8. void loop() {
  9. // контакт А0 считывает сигнал с потенциометра
  10. int sensorReading = analogRead(A0);
  11. int t = map(sensorReading, 0, 1023, 1, 20);
  12. digitalWrite(11, HIGH); digitalWrite(9, LOW); delay(t);
  13. digitalWrite(10, HIGH); digitalWrite(8, LOW); delay(t);
  14. digitalWrite(9, HIGH); digitalWrite(11, LOW); delay(t);
  15. digitalWrite(8, HIGH); digitalWrite(10, LOW); delay(t);
  16. }

//Конец скетча


Пример 7. Изменение скорости вращения двух фазного шагового двигателя при помощи потенциометра.



//Начало скетча


  1. void setup() {
  2. // 8, 9 контакты к которым подключается шаговый двигатель
  3. pinMode(8, OUTPUT);
  4. pinMode(9, OUTPUT);
  5. }
  6. void loop() {
  7. // контакт A0 считывает сигнал с потенциометра
  8. int sensorReading = analogRead(A0);
  9. int t = map(sensorReading, 0, 1023, 1, 20);
  10. // карта: значения 0, 1023 это от 0 до +5 вольт с потенциометра
  11. // карта: значения 1, 20 это задержка для delay от 1 до 20 миллисекунд
  12. digitalWrite(8, HIGH);delay(t);
  13. digitalWrite(9, LOW);delay(t);
  14. digitalWrite(8, LOW);delay(t);
  15. digitalWrite(9, HIGH);delay(t);
  16. }

//Конец скетча


Пример 8. Изменение скорости вращения импульсного шагового двигателя при помощи потенциометра.



//Начало скетча


  1. void setup() {
  2. pinMode(7, OUTPUT);digitalWrite(7, LOW);
  3. pinMode(6, OUTPUT);
  4. pinMode(5, OUTPUT);digitalWrite(5, LOW);
  5. }
  6. void loop() {
  7. int sensorReading = analogRead(A0);
  8. int t = map(sensorReading, 0, 1023, 1, 20);
  9. digitalWrite(6, LOW);
  10. delay(t);
  11. digitalWrite(6, HIGH);
  12. delay(t);
  13. }

//Конец скетча


Пример 9. Изменение направления и скорости вращения DC Motor(a) при помощи потенциометра.



//Начало скетча


  1. void setup() {
  2. pinMode(5, OUTPUT);
  3. pinMode(7, OUTPUT);
  4. pinMode(6, INPUT);
  5. }
  6. void loop() {
  7. int sensorReading = analogRead(A0);
  8. int t = map(sensorReading, 0, 1023, 0, 255);
  9. analogWrite(5, t);
  10. digitalWrite(7, LOW);
  11. delay(5000);
  12. digitalWrite(7, HIGH);
  13. delay(5000);
  14. }

//Конец скетча




Видео "Лучший эмулятор Arduino UnoArduSim. Первая серия."

Управление моторами."


Лучший эмулятор Arduino UnoArduSim