登錄|立即注冊(cè)|使用QQ帳號(hào)登錄
論壇 > 24小時(shí)必答區(qū)
發(fā)帖|
看1020|回0|收藏
樓主 ID:682839 只看他
2023-12-22 15:13
使用StandardFirmata實(shí)例可以將PC的數(shù)據(jù)反映到開發(fā)板上的引腳上亮燈,但是我想把開發(fā)板上的這個(gè)結(jié)果通過串口發(fā)送到另外的開發(fā)板上。比如PC發(fā)送的數(shù)值為2和4,在接到的開發(fā)板通過串口將2和4發(fā)送出去。一個(gè)設(shè)計(jì),卡在這了,哪為大能可以給解決一下,代碼改了很多回, 不是串口不輸出數(shù)據(jù),就是輸出的數(shù)據(jù)不對(duì)。

      123                             Hc12
PC————StandardFirmata——-----nano1
                                                  nano2
                                                  nano3

代碼:

  1. void loop()
  2. {
  3.   byte pin, analogPin;

  4.   /* DIGITALREAD - as fast as possible, check for changes and output them to the
  5.    * FTDI buffer using Serial.print()  */
  6.   checkDigitalInputs();

  7.   /* STREAMREAD - processing incoming messagse as soon as possible, while still
  8.    * checking digital inputs.  */
  9.   while (Firmata.available())
  10.     Firmata.processInput();

  11.   // TODO - ensure that Stream buffer doesn't go over 60 bytes

  12.   currentMillis = millis();
  13.   if (currentMillis - previousMillis > samplingInterval) {
  14.     previousMillis += samplingInterval;
  15.     /* ANALOGREAD - do all analogReads() at the configured sampling interval */
  16.     for (pin = 0; pin < TOTAL_PINS; pin++) {
  17.       if (IS_PIN_ANALOG(pin) && Firmata.getPinMode(pin) == PIN_MODE_ANALOG) {
  18.         analogPin = PIN_TO_ANALOG(pin);
  19.         if (analogInputsToReport & (1 << analogPin)) {
  20.           Firmata.sendAnalog(analogPin, analogRead(analogPin));
  21.         }
  22.       }
  23.     }
  24.     // report i2c data for all device with read continuous mode enabled
  25.     if (queryIndex > -1) {
  26.       for (byte i = 0; i < queryIndex + 1; i++) {
  27.         readAndReportData(query[i].addr, query[i].reg, query[i].bytes, query[i].stopTX);
  28.       }
  29.     }
  30.   }

  31. #ifdef FIRMATA_SERIAL_FEATURE
  32.   serialFeature.update();
  33. #endif
  34. }

51黑電子論壇

Powered by Discuz! X3.1

首頁(yè)|標(biāo)準(zhǔn)版|觸屏版|電腦版