Код выдает ошибки (ошибки находятся ниже кода)

1597534268qwert...
Offline
Зарегистрирован: 24.06.2022
#include <CyberLib.h>
 
#include "HardwareSerial.h"
#include "HardwareSerial_private.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <inttypes.h>
#include <util/atomic.h>
#include "Arduino.h"
#include "USBAPI.h"
 
#include "wiring_private.h"
 
 
/////////////////////////////
#define PORT_SPEED 115200UL
#define TURN_OFF_CONNECTION 50
#define TURN_ON_ECG_READ 49
#define TURN_OFF_ECG_READ 48
#define ECG_DELAY_MICROS 5000UL
/////////////////////////////
uint8_t const static CODE_WORD[5] = { 51, 101, 99, 115, 101 };
uint8_t const static ANSWER[5] = { 101, 99, 103, 101, 116 };
/////////////////////////////
boolean static IsOpen = false;
uint16_t static temp = 0;
/////////////////////////////
inline __attribute__((always_inline)) static void GetCurrentEcgValue()
{
  temp = PIND & B00001100 ? 0 : analogRead(0);
  Serial.write(temp >> 8);
  Serial.write(temp);
}
  int StopTimerInterrupt;
  int ChangeRXEventRange;
  
void setup()
{
  Serial.begin(PORT_SPEED, SERIAL_8N1);
}
 
 
void SerialInputInterrupt()
{
 
  
  if (IsOpen)
  {
    switch (Serial.read())
    {
      case TURN_OFF_CONNECTION:
        StopTimerInterrupt();
        Serial.changeRXEventRange(5);
        IsOpen = false;
        return;
 
      case TURN_ON_ECG_READ:
        StartTimerInterrupt(GetCurrentEcgValue, ECG_DELAY_MICROS);
        return;
 
      case TURN_OFF_ECG_READ:
        StopTimerInterrupt();
        return;
    }
    return;
  }
  uint8_t count = 0;
  while (CODE_WORD[count] == Serial.read())
  {
    count ++;
  }
  if (count == 5)
  {
    Serial.write(ANSWER, 5);
    Serial.ChangeRXEventRange(1);
    IsOpen = true;
  }
}
 
// трюк для того, чтобы пустой loop не включался в main
inline __attribute__((always_inline)) static void loop() {}
 
 
 
Arduino: 1.8.13 (Windows 10), Плата:"Arduino Uno"
 
 
 
 
 
C:\Users\Documents\Arduino\sketch_feb08a\sketch_feb08a.ino: In function 'void SerialInputInterrupt()':
 
sketch_feb08a:53:28: error: 'StopTimerInterrupt' cannot be used as a function
 
sketch_feb08a:54:16: error: 'class HardwareSerial' has no member named 'changeRXEventRange'
 
sketch_feb08a:59:9: error: 'StartTimerInterrupt' was not declared in this scope
 
C:\Users\Documents\Arduino\sketch_feb08a\sketch_feb08a.ino:59:9: note: suggested alternative: 'StopTimerInterrupt'
 
sketch_feb08a:63:28: error: 'StopTimerInterrupt' cannot be used as a function
 
sketch_feb08a:76:12: error: 'class HardwareSerial' has no member named 'ChangeRXEventRange'
 
exit status 1
 
'StopTimerInterrupt' cannot be used as a function
 
 
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
 
 
 
 
 
1597534268qwert...
Offline
Зарегистрирован: 24.06.2022

Не получается залить скетч на ардуино выдает ошибки не могу понять в чем дело, пока новичок в ардуино

b707
Offline
Зарегистрирован: 26.05.2017

1597534268qw, почему бы вам не обратится туда, где вы это списали?

Сравнивая код и ваш вопрос - совершенно очевидно, что это писали не вы и вы в этом ни буквы не понимаете. В коде куча совершенно бредовых ошибок, причем замысел автора вообще не просматривается.

Такое впечатление, что вы просто половину кода потеряли при копировании.

Исправить ошибки синтаксиса можно, только код от этого разумнее не станет и работать не начнет.

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Ошибка в строке +100500

https://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommen...

Что этот треш должен делать по вашему ?

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

1597534268qwert@gmail.com пишет:

 
#include "USBAPI.h"
 

А как у Вас устройство настроено?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

1597534268qwert@gmail.com пишет:

Код выдает ошибки (ошибки находятся ниже кода)

И чё?

Когда (и если) у Вас появятся какие-то вопросы, Вы не стесняйтесь, спрашивайте.

1597534268qwert...
Offline
Зарегистрирован: 24.06.2022

Доброй ночи , проблема состоит в том что данный , скетч должен считывать сигнал с ардуино и подавать его на порт , затем моя программа должна считывать данные и строить график . Пробовал все возможные варианты написания скетчей , но моя программа (C#) неправильно строит график , а плоттер по последовательному соединению в самом Arduino IDE корректно строит график. 

b707
Offline
Зарегистрирован: 26.05.2017

1597534268qwert@gmail.com пишет:

Доброй ночи , проблема состоит в том что данный , скетч должен считывать сигнал с ардуино и подавать его на порт

А где этот скетч должен запускаться?

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

1597534268qwert...
Offline
Зарегистрирован: 24.06.2022

 Сигнал считывает устройство , которое подключено к Ардуино, а сама ардуинка по кабелю конектится с компом

 

b707
Offline
Зарегистрирован: 26.05.2017

1597534268qwert@gmail.com пишет:

 Сигнал считывает устройство , которое подключено к Ардуино, а сама ардуинка по кабелю конектится с компом

ответ в стиле "рация на бронепоезде"... Что-то я вообще потерял нить обсуждения...

Я вас спросил, где этот скетч должен запускаться? На ардуине? 

 

Чтобы можно было нормально обсуждать код - вставьте его по правилам форума.

Morroc
Offline
Зарегистрирован: 24.10.2016

1597534268qwert@gmail.com пишет:

Пробовал все возможные варианты написания скетчей

Кроме правильного ? )

 

1597534268qwert@gmail.com пишет:

скетч должен считывать сигнал с ардуино и подавать его на порт

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

вот типовой пример передачи в порт значения analogread каждую миллисекунду. что вам не подходит ?

https://www.arduino.cc/en/Tutorial/BuiltInExamples/AnalogReadSerial