Site Language

Translate

Russian Albanian Arabic Armenian Azerbaijani Belarusian Bulgarian Catalan Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Serbian Slovak Slovenian Spanish Swedish Turkish Ukrainian Yiddish

CashBack Реальный возврат при покупках в интернете

Основные версии плат Arduino

Due — плата на базе 32-битного ARM микропроцессора Cortex-M3 ARM SAM3U4E;

Leonardo — плата на микроконтроллере ATmega32U4;

Uno — самая популярная версия базовой платформы Arduino;

Duemilanove — плата на микроконтроллере ATmega168 или ATmega328;

Diecimila — версия базовой платформы Arduino USB;

Nano — компактная платформа, используемая как макет. Nano подключается к компьютеру при помощи кабеля USB Mini-B;

Mega ADK — версия платы Mega 2560 с поддержкой интерфейса USB-host для связи с телефонами на Android и другими устройствами с интерфейсом USB;

Mega2560 — плата на базе микроконтроллера ATmega2560 с использованием чипа ATMega8U2 для последовательного соединения по USB-порту;

Mega — версия серии Mega на базе микроконтроллера ATmega1280;

Arduino BT — платформа с модулем Bluetooth для беспроводной связи и программирования;

LilyPad — платформа, разработанная для переноски, может зашиваться в ткань;

Fio — платформа разработана для беспроводных применений. Fio содержит разъем для радио XBee, разъем для батареи LiPo и встроенную схему подзарядки;

Mini — самая маленькая платформа Arduino;

Pro — платформа, разработанная для опытных пользователей, может являться частью большего проекта;

Pro Mini — как и платформа Pro, разработана для опытных пользователей, которым требуется низкая цена, меньшие размеры и дополнительная функциональность.

 

CashBack Все честно и без обмана

 

Это информационный ресурс с лучшими инструкциями и туториалами по использованию контроллеров Arduino

 Карта сайта Arduino, Mega ADK, Cubieboard Cubietech, Arduino Uno, Arduino Mega2560, Карта сайта, Arduino Fio, Cubietruck, Arduino Ethernet, Esplora, Arduino Robot, Raspberry, Arduino Leonardo, Arduino Due, Arduino Micro, Banana, Intel Galileo Gen 2, Arduino Duemilanove, Beaglebone, BananaPro, Arduino Usb, Intel, Intel Galileo, Intel, Intel Galileo, Intel Edison, Intel Edison, Intel Galileo Gen 2, Карта сайта, Arduino Duemilanove, Mega ADK, Arduino Duemilanove, Arduino Nano, Arduino Leonardo, Arduino Due, Arduino Micro, Arduino Lilypad, Arduino Uno, Arduino Uno, Arduino Mega2560, Cubietruck, Raspberry, Banana, Arduino Leonardo, Arduino Due, Lilypad Arduino Simple, Lilypad, Arduino Usb, Arduino Micro, Lilypad, Arduino Simple Snap, Lilypad Arduino Simple, Intel, Lilypad, Arduino Cubieboard, Arduino Usb, BananaPro, Arduino Gemma, Arduino EthernetArduino Yin, Arduino Zero, Mega ADK, Arduino 101 Genuino 101, Arduino mini, Lilypad Arduino Simple, Lilypad, Arduino Pro, Intel, Arduino Fio, Arduino Gemma, Arduino BT, Arduino Fio, Arduino Mega, Arduino NanoMega ADK, Arduino Uno, Arduino Diecimila, BananaPro, Intel, Intel Galileo, Arduino Ethernet, Arduino BT, Arduino Mega, Arduino Duemilanove, Arduino Nano, Esplora, Raspberry, Banana, Arduino Robot

Плата расширения USB Host Shield

 Плата расширения USB Host Shield 2.0 позволяет Arduino выступать в роли родительского USB-устройства для практически любой имеющейся USB-периферии. С этой платой открывается масса новых возможностей для создания интересных устройств. В настоящее время платой USB Host Shield 2.0 поддерживаются следующие классы устройств:

 HID-устройства, такие как клавиатуры, мыши, джойстики и др.;

 игровые устройства: Sony PS3, Nintendo Wii, Xbox360;

 USB преобразователи: FTDI, PL-2303, ACM, а также некоторые аппараты и GPS-приемники;

 Android -устройства;

 цифровые фотоаппараты: Canon (EOS, PowerShot), Nikon.

Для программирования USB Host Shield используется специальная библиотека, скачать которую можно со страницы https://github.com/felis/USB_Host_Shield_2.0.

Спецификацию и примеры использования этой библиотеки можно найти на сайте Circuits@Home http://www.circuitsathome.com/arduino_usb_host_shield_projects.

 Плата расширения USB Host Shield  CashBack 1
  USB Host Shield 2.0  

 

 

Интерфейс USB

 

Последовательный интерфейс USB используется для подключения периферийных устройств. Соответственно, существуют понятия "главное устройство" — хост (он управляет обменом данными через интерфейс, выступает инициатором обмена) и "периферийное устройство" — клиент (в процессе обмена данными он "подчиняется" хосту). Логика работы хоста и клиента принципиально отличаются, поэтому нельзя напрямую соединять устройства "хост — хост" и "клиент — клиент". Имеются специальные устройства — хабы, которые подключаются в качестве клиента к одному хосту и, в то же время, выступают хостом для других периферийных устройств. Хабы также применяются для "разветвления" шины USB.

Физически интерфейс USB (до версии 2.0) использует 4 провода

 "земля" (GND);

 +5 В (VBUS);

 D–, D+ — линии приема/передачи данных (обозначения D+ и D– условны, с электрическими потенциалами это никак не связано).

Спецификация USB 1.0 определяла два типа разъемов: A — на стороне контроллера или концентратора USB и B — на стороне периферийного устройства. Впоследствии были разработаны миниатюрные разъемы для применения USB в переносных

Назначение контактов USB 1.0, USB 2.0
Назначение контактов USB 1.0, USB 2.0

 

и мобильных устройствах, получившие название Mini-USB. Новая версия миниатюрных разъемов, называемых Micro-USB, была представлена USB Implementers Forum 4 января 2007 года.

Благодаря встроенным линиям питания USB позволяет подключать периферийные устройства без собственного источника питания (максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 500 мА, у USB 3.0 — 900 мА).

Стандарт USB поддерживает концепцию plug-and-play. Эта концепция подразуме- вает, что пользователю достаточно "воткнуть" устройство в соответствующий порт ПК. Дальше ОС автоматически определит тип подключенного устройства, найдет подходящий для данного устройства драйвер, сконфигурирует устройство и т. д. Для того чтобы это все работало, стандартом USB предусмотрены некие общие требования для всех устройств:

 каждое устройство содержит дескриптор (описание) устройства;

 есть общий для всех USB-устройств механизм, который позволяет ОС прочитать дескриптор устройства для того, чтобы идентифицировать устройство, узнать его характеристики;

 есть общий для всех USB-устройств механизм, который позволяет ОС выполнить первичную конфигурацию устройства (например, присвоить устройству новый адрес).

 HID-устройства USB

HID (Human Interface Device) — устройство, подключаемое к вычислительной технике, с тем, чтобы с ней мог работать человек. Говоря проще, HID — это устройство ввода информации. Устройства ввода необходимы для непосредственного участия человека в работе компьютера: для введения исходных данных для вычислений, для выбора параметров действия, для редактирования имеющихся данных и результатов и т. д.

HID-устройства ввода различаются по типу вводимой информации:

 для текстовой информации — это преимущественно клавиатуры. Они служат для управления техническими и механическими устройствами (компьютер, калькулятор, кнопочный телефон). Каждой клавише устройства соответствует один или несколько определенных символов. Возможно увеличить количество действий, выполняемых с клавиатуры, с помощью сочетаний клавиш. В клавиатурах такого типа клавиши сопровождаются наклейками с изображением символов или действий, соответствующих нажатию;

 для звуковой информации — это микрофон. Электроакустические приборы, преобразующие звуковые колебания в колебания электрического тока, используются во многих устройствах (телефоны и магнитофоны, приборы звукозаписи и видеозаписи на радио и телевидении, для радиосвязи);

 для графической информации:

• сканер — устройство для считывания плоского изображения и представления его в растровой электронной форме;

• цифровая камера — устройство (фотоаппарат), использующее массив полупроводниковых светочувствительных элементов (матрицу), на которую изображение фокусируется с помощью системы линз объектива. Полученное изображение сохраняется в электронном виде в памяти самой камеры или же дополнительном цифровом носителе;

• веб-камера — цифровая видео- или фотокамера, способная в реальном времени фиксировать изображения, предназначенные для дальнейшей передачи по сети Интернет как в потоковом режиме, так и за определенные промежутки времени;

• плата захвата (тюнер) — электронное устройство для преобразования аналогового видеосигнала в цифровой видеопоток. Используется для захвата телесигнала, сигнала с камер видеонаблюдения и др.

HID-устройства управления различаются по функционалу:

 относительное позиционирование (обрабатывают информацию о перемещении):

• мышь — манипулятор, преобразующий механические движения в движение курсора на экране. Различают механические, оптические, гироскопические, сенсорные мыши;

• трекбол — манипулятор, чей принцип работы сходен с шариковой механической мышью и аналогичен мыши по принципу действия и по функциям. Однако пользователь не передвигает мышь, а управляет с помощью ладони или пальцев непосредственно шариком, закрепленным на специальном держателе с датчиками;

• трекпойнт — миниатюрный тензометрический джойстик, применяемый в ноутбуках для замены мыши. Трекпойнт считывает направление и силу давления пальца пользователя;

• тачпад — сенсорная панель, применяемая, в основном, в портативных ком- пьютерах. В отличие от трекпойнта, считывающего давление пальца, тачпад считывает емкостные характеристики при соприкосновении пальца с поверхностью емкостных датчиков. Поэтому управление тачпадом с помощью непроводящих предметов (ручка, карандаш, стилус) достаточно проблематично;

• джойстик — устройство ввода информации, которое представляет собой ка- чающуюся в двух плоскостях ручку, боковое давление которой считывается датчиками в основании устройства. Используется как игровой гаджет, а так же как средство управления (например, роботизированной техникой на производстве);

 абсолютное позиционирование (высчитывают абсолютные координаты на плоскости, в качестве которой выступает устройство):

• графический планшет — устройство для ввода графики (отдельных линий и рисунков) от руки непосредственно в компьютер. Состоит из пера и плоского планшета, чувствительного к нажатию пера;

• тачскрин (сенсорный экран) — устройство ввода информации, представляющее собой экран, реагирующий на прикосновения к нему (используется в современных смартфонах, платежных и информационных терминалах).

 

Отдельно хочется выделить специальные HID-устройства для компьютерных игр:

 игровые мыши — отличаются от обычных компьютерных мышей высокой чувствительностью, настраиваемым весом, большим количеством программируемых кнопок;

 кейпады — специальные игровые клавиатуры-приставки, в которых кнопки скомбинированы для максимального удобства игрока (в современные модели встраивается мини-джойстик);

 руль и педали — манипуляторы для игр жанра "автогонки" (рэйсинг);

 джойстики — используются для игр жанра "авиасимуляторы";

 геймпады — специальные игровые манипуляторы, используемые в аркадных жанрах (перешли с игровых консолей);

 танцевальные платформы — специальные платформы с датчиками давления. Управление производится с помощью ног. Используются для игр жанра "танцевальные аркады";

 музыкальные инструменты (гитары, барабаны) — специальные манипуляторы в форме музыкальных инструментов с кнопками и датчиками давления. Используются для игр жанра "музыкальные аркады".

Операционные системы, как правило, имеют встроенные драйверы HID-класса, так что у разработчиков отпадает необходимость в трудоемкой собственной разработке драйвера для нового устройства. Чтобы определить устройство как HID, необходимо поддержать ряд структур, описывающих HID-интерфейс, а также написать алгоритм обмена по interrupt-каналу (каналу прерываний) передачи данных. Во многих отношениях устройства HID не имеют никаких особенных отличий от других USB-устройств. Однако кроме требований, которые относятся ко всем USB-устройствам, устройства HID выдвигают ряд дополнительных требований:

 HID-устройство должно иметь Interrupt In — конечную точку для выдачи данных в хост. Interrupt Out — конечная точка для получения периодических данных от хоста, является опциональной и может не использоваться;

 HID-устройство должно содержать дескриптор класса — Device Class Descriptor и один или более дескрипторов репорта HID Report Descriptor;

 HID-устройство должно поддерживать специфический для класса управляющий запрос Get_Report, а также опционально поддерживать дополнительный запрос Set_Report;

 для передачи Interrupt In (данные из устройства в хост) устройство должно положить данные репорта в FIFO соответствующей конечной точки и разрешить передачу;

 для передачи Interrupt Out (данные из хоста в устройство) устройство должно разрешить соответствующую конечную точку Out, а затем, после прихода пакета, забрать данные из FIFO.

 

Подключение HID-мыши USB

В библиотеке USB Host Shield 2.0 имеется пример для подключения к Arduino HID-мыши USB — USBHIDBootMouse.pde. Загружаем его и смотрим в мониторе по- следовательного порта результат работы скетча.

Скетч для подключения HID-мыши USB
Скетч для подключения HID-мыши USB

 

Использование HID-устройства (руль Defender) для управления роботом

Теперь создадим собственный проект. Будем управлять роботом с помощью игрового манипулятора — руля Defender Forsage Drift GT. Для этого необходимо организовать беспроводное управление моделью робота данным устройством. Для беспроводной передачи данных воспользуемся беспроводным радиомодулем NRF24L01.

Руль подсоединен к плате Arduino через USB Host Shield. В качестве блока управления подсоединяем к Arduino модуль 2,4 ГГц NRF24L01.  Дополнительно к Arduino робота подключаем такой же радиомодуль 2,4 ГГц NRF24L01. Электрическая схема блока робота представлена на рисунке.

 

Электрическая схема блока робота
Электрическая схема блока робота

 

 

Загружаем скетч USB_HID_Desc.pde, входящий в примеры библиотеки USB_Host, подсоединяем к Arduino через USB Host Shield наш руль и получаем Descriptor Report HID-устройства

Скетч получения Descriptor Report HID-устройства
Скетч получения Descriptor Report HID-устройства

 

 

Usage Page Gen Desktop Ctrls(01) Usage Game Pad

Collection Application Collection Logical Report Size(08)

Report Count(04) Logical Min(00) Logical Max(FF00) Physical Min(00) Physical Max(FF00) Usage X

Usage Y Usage Z Usage Z Usage Rz

Input(00000010)

Report Size(04)

Report Count(01) Logical Max(07) Physical Max(3B01) Unit(14)

Usage Hat Switch Input(01000010)

Unit(00) Report Size(01)

Report Count(0C) Logical Max(01) Physical Max(01) Usage Page Button(09) Usage Min(01)

Usage Max(0C) Input(00000010)

Usage Page Undef(00) Report Size(08) Report Count(02) Logical Max(01) Physical Max(01) Usage Input(00000010)

End Collection Collection Logical Report Size(08) Report Count(04) Physical Max(FF00) Logical Max(FF00) Usage Output(00000010) End Collection End Collection

Для создания своего кода возьмем код примера, входящий в библиотеку USB_Host и реализующий функционал джойстика, а именно USBHIDJoystick.pde, и перепишем файлы hidjoystickrptparser.h  и hidjoystickrptparser.cpp  для сохранения данных в структуре. Далее добавим отправку данных руля по радиоканалу с помощью библиотеки для NRF24L01  Отправку производим каждые 300 мс.

 

#if !defined( HIDJOYSTICKRPTPARSER_H )

#define HIDJOYSTICKRPTPARSER_H

#include <inttypes.h>

#include <avr/pgmspace.h>

 

#include "avrpins.h"

#include "max3421e.h"

#include "usbhost.h"

#include "usb_ch9.h"

#include "Usb.h"

#if defined(ARDUINO) && ARDUINO >=100

#include "Arduino.h"

#else

#include <WProgram.h>

#endif

#include "printhex.h"

#include "hexdump.h"

#include "message.h"

#include "confdescparser.h"

#include "hid.h"

struct GamePadEventData

{

uint8_t X, Y, Z1, Z2, Rz;

};

class JoystickEvents

{

public:

virtual void OnGamePadChanged(const GamePadEventData *evt); virtual void OnHatSwitch(uint8_t hat);

virtual void OnButtonUp(uint8_t but_id); virtual void OnButtonDn(uint8_t but_id);

uint8_t X; uint8_t Y; uint8_t Z1; uint8_t Z2; uint8_t Rz;

};

#define RPT_GEMEPAD_LEN 5

class JoystickReportParser : public HIDReportParser

{

JoystickEvents *joyEvents;

uint8_t oldPad[RPT_GEMEPAD_LEN];

uint8_t oldHat;

uint16_t oldButtons;

 

public:

};

 

JoystickReportParser(JoystickEvents *evt);

virtual void Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf);

 

#endif // HIDJOYSTICKRPTPARSER_H

 

#include "hidjoystickrptparser.h"

JoystickReportParser::JoystickReportParser(JoystickEvents *evt) : joyEvents(evt),

oldHat(0xDE), oldButtons(0)

{

for (uint8_t i=0; i<RPT_GEMEPAD_LEN; i++) oldPad[i] = 0xD;

}

void JoystickReportParser::Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t

*buf)

{

bool match = true;

// Checking if there are changes in report since the method was last called for (uint8_t i=0; i<RPT_GEMEPAD_LEN; i++)

if (buf[i] != oldPad[i])

{

match = false; break;

}

// Calling Game Pad event handler if (!match && joyEvents)

{

joyEvents->OnGamePadChanged((const GamePadEventData*)buf);

for (uint8_t i=0; i<RPT_GEMEPAD_LEN; i++) oldPad[i] = buf[i];

}

uint8_t hat = (buf[5] & 0xF);

// Calling Hat Switch event handler if (hat != oldHat && joyEvents)

 

{

joyEvents->OnHatSwitch(hat); oldHat = hat;

}

uint16_t buttons = (0x0000 | buf[6]); buttons <<= 4;

buttons |= (buf[5] >> 4);

uint16_t changes = (buttons ^ oldButtons);

// Calling Button Event Handler for every button changed if (changes)

{

for (uint8_t i=0; i<0x0C; i++)

{

uint16_t mask = (0x0001 << i);

if (((mask & changes) > 0) && joyEvents) if ((buttons & mask) > 0)

joyEvents->OnButtonDn(i+1);

 

else

}

 

joyEvents->OnButtonUp(i+1);

 

oldButtons = buttons;

}

}

void JoystickEvents::OnGamePadChanged(const GamePadEventData *evt)

{

X=evt->X; Y=evt->Y; Z1=evt->Z1; Z2=evt->Z2;

Rz=evt->Rz;

}

void JoystickEvents::OnHatSwitch(uint8_t hat)

{

Serial.print("Hat Switch: "); PrintHex<uint8_t>(hat); Serial.println("");

}

void JoystickEvents::OnButtonUp(uint8_t but_id)

{

Serial.print("Up: "); Serial.println(but_id, DEC);

}

 

void JoystickEvents::OnButtonDn(uint8_t but_id)

{

Serial.print("Dn: "); Serial.println(but_id, DEC);

}

 

#include <avr/pgmspace.h>

#include <avrpins.h>

#include <max3421e.h>

#include <usbhost.h>

#include <usb_ch9.h>

#include <Usb.h>

#include <usbhub.h>

#include <avr/pgmspace.h>

#include <address.h>

#include <hid.h>

#include <hiduniversal.h>

#include "hidjoystickrptparser.h"

#include <printhex.h>

#include <message.h>

#include <hexdump.h>

#include <parsetools.h>

USB Usb;

USBHub Hub(&Usb); HIDUniversal Hid(&Usb); JoystickEvents JoyEvents;

JoystickReportParser Joy(&JoyEvents);

#include <SPI.h>

#include <Mirf.h>

#include <nRF24L01.h>

#include <MirfHardwareSpiDriver.h>

#define MAX_BUFF 32 // Буфер приема-передачи

void setup()

{

Serial.begin( 115200 ); Serial.println("Start"); if (Usb.Init() == -1)

Serial.println("OSC did not start."); delay( 200 );

if (!Hid.SetReportParser(0, &Joy)) ErrorMessage<uint8_t>(PSTR("SetReportParser"), 1 );

 

Mirf.spi = &MirfHardwareSpi; Mirf.init();

Mirf.setRADDR((byte *)"defender"); // Здесь задаем адрес Mirf.payload = MAX_BUFF; // Здесь задаем буфер Mirf.channel = 10;

// Это канал приема-передачи - должен

// быть одинаковым у устройств. Mirf.config(); Serial.println("Start..");

}

char buff[MAX_BUFF]; int c_count = 0;

void loop()

{

Usb.Task(); buff[0]=map(JoyEvents.X,0,255,1,100); buff[1]=map(JoyEvents.Y,0,255,1,100);; buff[2]=map(JoyEvents.Z1,0,255,1,100); buff[3]=map(JoyEvents.Z2,0,255,1,100); buff[4]=JoyEvents.Rz+1;

buff[5]=0;

Mirf.setTADDR((byte *)"automobile1"); //Адрес! Serial.print(">");

Mirf.send((uint8_t *)buff); while(Mirf.isSending()){

}

Serial.println(buff); delay(300);

}

Теперь необходимо написать скетч приема данных и отправки команд двигателям робота. Первый байт из буфера данных: влево (0–50) — вправо (51–100), второй байт: вперед (51–100) — назад (1–50). Надо только правильно перевести байты в данные для микросхемы L293. Полученный скетч представлен в примере.

 

#include <SPI.h>

#include <Mirf.h>

#include <nRF24L01.h>

#include <MirfHardwareSpiDriver.h>

#define MAX_BUFF 32 // Буфер приема-передачи

void setup(){ Serial.begin(9600);

Mirf.spi = &MirfHardwareSpi; Mirf.init();

Mirf.setRADDR((byte *)"automobile1"); // Здесь задаем адрес Mirf.payload = MAX_BUFF; // Здесь задаем буфер Mirf.channel = 10;

// Это канал приема-передачи - должен

// быть одинаковым у устройств. Mirf.config();

// настраиваем выводы для моторов pinMode(3, OUTPUT);

pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); Serial.println("Start..");

}

char buff[MAX_BUFF];

void loop(){ delay(10);

//receiving if(Mirf.dataReady()) { Mirf.getData((uint8_t *)buff); int fb1=buff[0];

int lr=buff[1]; go12(fb1,lr1);

}

delay(100);

}

//

void go12(int fb,int lr)

{

// вперед-назад if(fb>50)

{digitalWrite(3,HIGH);digitalWrite(4,LOW); digitalWrite(5,HIGH);digitalWrite(6,LOW);}

else if(fb<50)

{digitalWrite(3,LOW);digitalWrite(4,HIGH); digitalWrite(5,LOW);digitalWrite(6,HIGH);}

else

{digitalWrite(3,LOW);digitalWrite(4,LOW); digitalWrite(5,LOW);digitalWrite(6,LOW);}

// влево-вправо

int lr1=map(abs(50-lr),1,50,1,255); int fb1=map(abs(50-fb),1,50,1,255);

 

if(lr<50)

{int left=min(255,max(0,fb1-lr1/2)); int right=min(255,fb1+lr1/2)}

else

{int right=min(255,max(0,fb1-lr1/2)); int left=min(255,fb1+lr1/2)} analogWrite(9, left);

analogWrite(10, right);

}

 

Подключение к Arduino Android-устройства через USB Host Shield

 

В 2011 г. корпорация Google представила стандарт Android Open Accessory (AOA), который обеспечивает взаимосвязь между внешними USB-устройствами (Arduino- подобными платами и др.) и Android-устройством. Начиная с версии Android 3.1 (поддержка AOA портирована и в Android 2.3.4) по замыслу Google все устройства должны поддерживать USB-соединение в режиме "accessory mode". В этом режиме подключенное устройство (к примеру плата Arduino) является хостом (в т. ч. питает шину 5 В/500 мА), а Android-устройство — периферией.

Данная взаимосвязь между устройством на базе Android и Arduino-подобными платами открывает массу возможностей для разработчика и радиолюбителя: управление сервоприводами, двигателями, индикацией с Android-телефона, считывание состояния датчиков на Android-телефоне или планшете — таких, как гироскоп, акселерометр, компас, GPS, передача данных через модуль GPRS/HDSPA планшета и многое другое.

 Плата расширения L293D, ИК-датчик VS1838B, TFT LCD, Модем M590E GSM GPRS, "монитор TFT LCD, датчик движения HC-SR501, ИК-пульт дистанционного управления, Радиомодуль NRF24L01, SD Card Module, Звуковой модуль, 5-axis stepper motor driver, Шаговый двигатель, Модем M590E GSM GPRS, 5-axis stepper motor driver,  Часы реального времени DS 3231/DS 1307, терморегулятор W1209 DC, Релейный модуль, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E,  датчик движения HC-SR501, Передатчик и приемник в диапазоне RF 433 Mhz, Блок питания, L293D, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, Датчики контроля температуры, Радиомодуль NRF24L01, OKI 120A2, Rotary Encoder, SD Card Module, Беспроводной пульт дистанционного управления, Микросхема контроллера коллекторного электродвигателя, Модуль Bluetooth HC-06,, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Mini 360 на схеме LM2596, MP3-TF-16P, L293D, Модуль LCD монитора, Инфракрасные датчики расстояния, Часы реального времени,  USB Host Shield, HC-SR501, Cветочувствительный датчик сопротивления, блок питания Mini 360 на схеме LM2596, ЖК-дисплей TFT дисплей, Контроллер L298N, HC-SR501, Модуль MP3 Player WTV020, GSM GPRS, Сервоприводы, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Модуль Wi-Fi ESP8266-12E, Инфракрасные датчики расстояния, Card Module, Ультразвуковые дальномеры HC-SR04, Блок питания,  Карта памяти SD, Mini 360, Ethernet shield, L293D, блок питания Mini 360 на схеме LM2596, Радиомодуль, датчик температуры DS18B20, ИК-пульт дистанционного управления, USB конвертер UART, ИК-пульт,  Антена для модуля WiFi, Ethernet shield,  Модуль блока питания XL6009, Микросхема контроллера коллекторного электродвигателя, Модуль качества воздуха MQ-135, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, SD Card Module, Радиомодуль NRF24L01, двигатель OKI,  5-axis stepper motor driver, L293D, TB6560, Драйвер шагового двигателя TB6600, Шаговый двигатель,  Модуль камеры, Блок питания, L293D, блок питания Mini 360 на схеме LM2596, 5axis mach3 interface, Карта памяти SD, Ethernet shield, Контроллер L298N, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, Модуль LCD монитора LCD1602, Шаговый двигатель OKI 120A2, Шаговый двигатель, Шаговый двигатель.

 

All Vintage Vinyl Records VinylSU.xyz

1.png2.png3.png4.png5.png