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

Пример 1. Запись строки в файл test.txt, на SD карту.




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


#include "SPI.h"
#include "SD.h"
File myFile; // переменная myFile класса File

void setup() {
  if (!SD.begin()) { // инициализация SD карты
    return;
  }
  myFile = SD.open("test.txt", FILE_WRITE); // если файла с именем " test.txt " - отсутствует, то он будет создан.
  if (myFile) { // если файл открыт для записи, то выполнить следующее…
    myFile.println("Hallo world!");
    myFile.close(); // закрыть файл
  }
}

void loop() {
}


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




Пример 2. Управление сервомотором без использования библиотек.



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


void setup() {
  pinMode(9, OUTPUT);
}

void loop() {
  servo(9, 0);
  delay(2000);
  servo(9, 90);
  delay(2000);
  servo(9, 180);
  delay(2000);
  servo(9, 90);
  delay(2000);
}

void servo(int pin, int angle)
{
  for (int i = 0; i <= 60; i++)
  {
    int pulseWidth = (angle * 11) + 500;
    digitalWrite(pin, HIGH);
    delayMicroseconds(pulseWidth);
    digitalWrite(pin, LOW);
    delay(20 - pulseWidth / 1000);
  }
}


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




Пример 3. Для модуля на 4 светодиода.



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


void setup() {
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT);
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
}

void loop() {
  digitalWrite(0, HIGH);
  delay(500);
  digitalWrite(0, LOW);
  digitalWrite(1, HIGH);
  delay(500);
  digitalWrite(1, LOW);
  digitalWrite(2, HIGH);
  delay(500);
  digitalWrite(2, LOW);
  digitalWrite(3, HIGH);
  delay(500);
  digitalWrite(3, LOW);
}


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




Пример 4. Отображение цифр на модуле 7 сегментный индикатор.



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


int pins[4] = {0, 1, 2, 3};
//контакты 0, 1, 2, 3, на плате Arduino
//контакты D0, D1, D2, D3 дешифратора К176ИД2
// значения для вывода цифр 0-9
byte numbers[10] = { 0b0000, 0b1000, 0b0100, 0b1100, 0b0010, 0b1010, 0b0110, 0b1110, 0b0001, 0b1001};
// переменная для хранения значения текущей цифры
int number = 0;

void setup()
{
  // Сконфигурировать контакты как выходы
  for (int i = 0; i < 4; i++)
    pinMode(pins[i], OUTPUT);
  pinMode(7, OUTPUT); digitalWrite(7, LOW); //для включения дешифратора
}

void loop() {
  showNumber(number);
  delay(1000);
  number = (number + 1) % 10;
}
// функция вывода цифр
void showNumber(int num)
{
  for (int i = 0; i < 4; i++)
  {
    if (bitRead(numbers[num], 3 - i) == HIGH) { // зажечь сегмент
      digitalWrite(pins[i], HIGH);
    } else { // потушить сегмент
      digitalWrite(pins[i], LOW);
    }
  }
}


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




Пример 5. Бегущая дорожка для модуля сдвиговый регистр.



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


#include "SPI.h"
enum { REG_SELECT = 4 }; // CS к 4, CLK 13, Din 11

void setup() {
  SPI.begin();
  pinMode(REG_SELECT, OUTPUT);
  digitalWrite(REG_SELECT, LOW);
  SPI.transfer(0);
  digitalWrite(REG_SELECT, HIGH);
}

void rotate(uint8_t &bits) {
  uint8_t high_bit = bits & (1 << 7) ? 1 : 0;
  bits = (bits << 1) | high_bit;
}

void loop() {
  static uint8_t nomad = 1;
  digitalWrite(REG_SELECT, LOW);
  SPI.transfer(nomad);
  digitalWrite(REG_SELECT, HIGH);
  rotate(nomad);
  delay(200);
}


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







Видео "Эмулятор Arduino UnoArduSim V2.6. Третья серия."

Использование модулей SD карта, сдвиговый регистр, сервомотор.


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