Jump to content
Fordli

Как соединить два устройства SPI с помощью arduino

Recommended Posts

Я хочу построить простой шлюз с arduino+nrf24l01+enc28j60, nrf24l01 принимает сигнал и enc28j60 передает его в LAN, но проблема в том, что и nrf24l01 и enc28j60 используют протокол SPI для взаимодействия с arduino, если я хочу использовать собственный lib разработки arduino, я могу выбрать только один из nrf24l01 и enc28j60, потому что они имеют общее определение (pins_arduino.h). 

static const uint8_t SS   = 10;
static const uint8_t MOSI = 11;
static const uint8_t MISO = 12;
static const uint8_t SCK  = 13

Итак, решение состоит в том, чтобы выбрать nrf24l01 вместо использования lib development, которая поставляется с arduino, но использовать другой IO порт, который я разработал сам, это правильно?

Share this post


Link to post
Share on other sites

открою секрет. на один SPI можно навесить к...ую тучу устройств

Share this post


Link to post
Share on other sites

Приглашаем на вебинар «Инновационные технологии Analog Devices в области управления питанием» (11.08.2021)

В программе вебинара технология Silent Switcher® - сочетание высокого КПД и сверхмалого уровня ЭМИ, технология uModule® - высокоинтегрированные решения для источников питания, микро- и нанопотребляющие DC/DC-преобразователи, решения для резервного питания, цифровое управление системой питания (PSM), безоптронные изолированные обратноходовые преобразователи. В практической части вебинара будут продемонстрированы примеры работы с инструментами Analog Devices для проектирования источников питания.
Подробнее

spacer.png


Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Share this post


Link to post
Share on other sites

Концевые микропереключатели KLS – простая и надежная коммутация по оптимальной цене

На складе Компэл широко представлены нажимные переключатели от KLS в стандартных и миниатюрных корпусах с различными типами актуаторов. Микропереключатели серий KLS7-KW10 и KLS7-KW4-3Z соответствуют строгим стандартам электрической безопасности и эффективности, что гарантирует надежную коммутацию цепей управления.

Подробнее

Это уже не "на один SPI", т.к. применяется программное расширение. Да и "туча" получается не такая уж и "куева" и ограничена кол-вом свободных линий для выбора ведомого.:)

Share this post


Link to post
Share on other sites

Датчики STMicroelectronics – новые возможности систем умного дома ST

Согласно прогнозам аналитиков, в ближайшие пару лет будет наблюдаться заметный рост рынка датчиков движения и положения для умного дома. Компания STMicroelectronics предлагает одну из самых широких линеек MEMS-датчиков, включая акселерометры, гироскопы, цифровые компасы, модули IMU, микрофоны и датчики параметров окружающей среды. Рассмотрим применение датчиков и тенденции их развития.
Подробнее

OK

spacer.png


Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Share this post


Link to post
Share on other sites
Posted (edited)

Второй вариант гораздо лучше... но подойдет разве что для 74HC595 (сдвиговых регистров). А если SPI-EEPROM?

Edited by Геннадий

Share this post


Link to post
Share on other sites

А при чем тут EEPROM? Вам не нравилось что?

2 часа назад, Геннадий сказал:

SPI с I2C не перепутали?

Так вот:

- Нет не перепутали

- Да позволяет несколько устройств на шине.


Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Share this post


Link to post
Share on other sites

Почему не понравилось? Парочку с программным расширением подключить можно, но это, скорее, частный случай, чем закономерность. Иначе "можно навесить к...ую тучу устройств" звучит несколько преувеличенно, потому как ограничивается кол-вом свободных линий SS.

Share this post


Link to post
Share on other sites
15 часов назад, Piotr__1 сказал:

OK

spacer.png

Моей arduino нужно установить 2 сигнала ss, один для nrf24l01 и один для enc28j60. затем, когда устройство инициализируется, просто настройте пины в соответствии с фактическим ss, правильно?

Share this post


Link to post
Share on other sites
44 минуты назад, Fordli сказал:

Моей arduino нужно установить 2 сигнала ss

Можно и один. Первое устройство подключить напрямую, второе через инвертор.

Share this post


Link to post
Share on other sites

@Fordli Да, надо перед работой с нужным устройством дергать за соответствующий #SS, дальше работать как обычно.


Жизнь не белая или чёрная, а в мелкую серенькую полосочку...

Share this post


Link to post
Share on other sites
16 часов назад, Bobius сказал:

Можно и один. Первое устройство подключить напрямую, второе через инвертор.

Звучит реалистично

9 часов назад, Piotr__1 сказал:

@Fordli Да, надо перед работой с нужным устройством дергать за соответствующий #SS, дальше работать как обычно.

Хорошо, спасибо еще раз!

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

  • Similar Content

    • By Fordli
      Как заставить яркость светодиодов меняться при сложении и вычитании чисел?
      Я просматриваю множество способов использования PWM или analogwrite() в Интернете и предполагаю, что возвращаемое значение моей кнопки будет таким
      A5 5A 06 83 00 01 01 00 01
      A5 5A 06 83 00 01 01 00 02
      A5 5A 06 83 00 01 01 00 03
      И так далее, то есть я использую analogwrite() для прямого считывания последней цифры?
      Ниже приводится содержание моего дисплея.

    • By Fordli
      Недавно я завершил проект по отпиранию двери с помощью сенсорного экрана с пронесенной картой.
      Как решить проблему, когда MFRC522 не называет тип при запуске Arduino
      #include <SoftwareSerial.h> #include <Servo.h> #include <SPI.h> #include <MFRC522.h> #include <IRremote.h> #define SS_PIN 10 // customize the two PIN ports of the RC522 #define RST_PIN 9 #define RECV_PIN 5 // IR receive pins #define CARDS 4 //number of cards #define SERVO_PIN 6 // Servo port #define BUZZ_PIN 8 //buzzer pin long int IR_ID = 0xFFABCD; //define IR variable string ESP01S_Data = "". decode_results result. const byte User_ID[CARDS][4] = { {0xDD, 0xAA, 0xBB, 0x11}, // campus card {0xAD, 0x99, 0xDD, 0xEE}, }; //Save multiple card uid values MFRC522 rfid(SS_PIN, RST_PIN); //new RC522 object Servo myservo; SoftwareSerial EspSerial(3, 2); // RX, TX IRrecv irrecv(RECV_PIN);  
    • By Fordli
      Недавно я использовал Arduino для программирования stm32, и мне нужно использовать ШИМ-выход, но кажется, что частота фиксирована на 550 Гц.
      Я хотел бы знать, как изменить частоту ШИМ простым и легким способом.
      Например, я могу использовать analogWriteFreq(3000) для изменения частоты ШИМ на 3 КГц на ESP8266, но эта функция не работает на stm32. есть ли аналогичный метод для stm32?
    • By Fordli
      Я считаю, что знакомиться с новым продуктом, создавая игры, очень весело и нескучно, и именно поэтому я сделал этот проект.
      Этот проект заключается в использовании Arduino UNO и lcd-дисплея Stone tft для разработки простой игры в крестики-нолики.
      Материалы, необходимые для эксперимента
      Arduino UNO tft lcd дисплей Stone STWI070WT-01 Принцип работы системы
      Задайте, что первое нажатие на экран должно быть O, второе нажатие на экран - X, проделайте этот цикл. Установите 8 массивов для хранения количества O и X в каждой строке, столбце и диагонали каждой сетки, до тех пор, пока есть три одинаковых знака является победа, то будет мигающий красный ящик, чтобы доказать победу строки, столбца или диагонали, а затем нажмите сброс, чтобы начать игру снова.
      Простая схема соединения

      Разработка графического интерфейса пользователя

      Прежде чем я размещу код, мне действительно нужно поблагодарить всех на форуме за исправление моей ошибки при загрузке.

      После решения этой проблемы, мой код был загружен на плату UNO без каких-либо проблем, что, наконец, позволило мне реализовать мой проект. Спасибо всем, кто помог мне!
      unsigned int r_flag1 = 0; uint8_t RecievedTemp1[30] = {0}; //uint8_t *RecievedTemp1 = new uint8_t[30]; uint8_t cout_i = 0; unsigned int quan_hang1 = 0; unsigned int quan_hang2 = 0; unsigned int quan_hang3 = 0; unsigned int quan_lie1 = 0; unsigned int quan_lie2 = 0; unsigned int quan_lie3 = 0; unsigned int quan_zuoxia = 0; unsigned int quan_youxia = 0; //unsigned int quan[8]={0}; // unsigned int cha_hang1 = 0; unsigned int cha_hang2 = 0; unsigned int cha_hang3 = 0; unsigned int cha_lie1 = 0; unsigned int cha_lie2 = 0; unsigned int cha_lie3 = 0; unsigned int cha_zuoxia = 0; unsigned int cha_youxia = 0; unsigned int cha[8]={0}; void setup() { Serial.begin(115200); for(int i=3; i<=8; i++) pinMode(i,OUTPUT); } void loop(){ if(Serial.available() != 0) { // for(cout_i = 0; cout_i < 30; cout_i ++) // { // //RecievedTemp1[cout_i] = Serial.readBytes(RecievedTemp1, 15); // Serial.readBytes(RecievedTemp1, 20); // //Serial.println(RecievedTemp1[cout_i]); // } Serial.readBytes(RecievedTemp1, 20); for(cout_i = 0; cout_i < 19; cout_i ++) { Serial.println(RecievedTemp1[cout_i]); } switch(RecievedTemp1[13]) { case 49: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image2\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang1++; quan_lie1++; quan_youxia++; // quan[0]++; // quan[3]++; // quan[7]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button1\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image2\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang1++; cha_lie1++; cha_youxia++; // cha[0]++; // cha[3]++; // cha[7]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button1\",\"enable\":false}>ET")); } break; case 50: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image3\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang1++; quan_lie2++; // quan[0]++; // quan[4]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button2\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image3\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang1++; cha_lie2++; // cha[0]++; // cha[4]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button2\",\"enable\":false}>ET")); } break; case 51: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image4\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang1++; quan_lie3++; quan_zuoxia++; // quan[0]++; // quan[5]++; // quan[6]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button3\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image4\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang1++; cha_lie3++; cha_zuoxia++; // cha[0]++; // cha[5]++; // cha[6]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button3\",\"enable\":false}>ET")); } break; case 52: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image5\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang2++; quan_lie1++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button4\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image5\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang2++; cha_lie1++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button4\",\"enable\":false}>ET")); } break; case 53: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image6\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang2++; quan_lie2++; quan_zuoxia++; quan_youxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button5\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image6\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang2++; cha_lie2++; cha_zuoxia++; cha_youxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button5\",\"enable\":false}>ET")); } break; case 54: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image7\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang2++; quan_lie3++; // quan[1]++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button6\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image7\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang2++; cha_lie3++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button6\",\"enable\":false}>ET")); } break; case 55: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image8\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang3++; quan_lie1++; quan_zuoxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button7\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image8\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang3++; cha_lie1++; cha_zuoxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button7\",\"enable\":false}>ET")); } break; case 56: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image9\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang3++; quan_lie2++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button8\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image9\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang3++; cha_lie2++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button8\",\"enable\":false}>ET")); } break; case 57: if((r_flag1 == 0)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image10\",\"image\":\"circle\"}>ET")); r_flag1 = 1; quan_hang3++; quan_lie3++; quan_youxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button9\",\"enable\":false}>ET")); } else if((r_flag1 == 1)&&(RecievedTemp1[14]==2)) { Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image10\",\"image\":\"x\"}>ET")); r_flag1 = 0; cha_hang3++; cha_lie3++; cha_youxia++; Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button9\",\"enable\":false}>ET")); } break; case 48: r_flag1 = 0; quan_hang1=quan_hang2=quan_hang3=cha_hang1=cha_hang2=cha_hang3=0; quan_lie1=quan_lie2=quan_lie3=cha_lie1=cha_lie2=cha_lie3=0; quan_zuoxia=quan_youxia=cha_zuoxia=cha_youxia=0; // for(char count_i=50;count_i<58;count_i++) // { // Serial.println((("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image%c\",\"image\":\"bai\"}>ET"),count_i)); // } Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image2\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image3\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image4\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image5\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image6\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image7\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image8\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image9\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_image\",\"type\":\"image\",\"widget\":\"image10\",\"image\":\"bai\"}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif4\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif5\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif6\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif7\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif8\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif9\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif10\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":false}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button9\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button8\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button7\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button6\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button5\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button4\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button3\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button2\",\"enable\":true}>ET")); Serial.println(F("ST<{\"cmd_code\":\"set_enable\",\"type\":\"widget\",\"widget\":\"button1\",\"enable\":true}>ET")); break; } if((quan_hang1==3)||(cha_hang1==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif4\",\"visible\":true}>ET")); } else if((quan_hang2==3)||(cha_hang2==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif5\",\"visible\":true}>ET")); } else if((quan_hang3==3)||(cha_hang3==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif6\",\"visible\":true}>ET")); } else if((quan_lie1==3)||(cha_lie1==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif7\",\"visible\":true}>ET")); } else if((quan_lie2==3)||(cha_lie2==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif8\",\"visible\":true}>ET")); } else if((quan_lie3==3)||(cha_lie3==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif9\",\"visible\":true}>ET")); } else if((quan_zuoxia==3)||(cha_zuoxia==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif11\",\"visible\":true}>ET")); } else if((quan_youxia==3)||(cha_youxia==3)) { Serial.println(F("ST<{\"cmd_code\":\"set_visible\",\"type\":\"widget\",\"widget\":\"gif10\",\"visible\":true}>ET")); } } } Здесь будет приложен демонстрационный видеоролик проекта.
       
    • By Антон Палыч
      Мне нужно сделать структурную схему по вот такой электрической схеме для дипломного проекта. Это примочка дилея на основе ардуио нано. Сам я в электронике совсем не сведущ, выбрал такой проект только из-за программирования самой ардуины.

×
×
  • Create New...