아두이노 메인 함수에서 Preference를 정의하고 begin()한 다음에 .h 및 .cpp 클래스 파일 내에서 preference를 저장하고 불러오는 예제 코드를 작성하시오. 아두이노(ESP32 등)에서 Preferences 라이브러리를 사용할 때, 메인 파일(.ino)에서 객체를 초기화하고 이를 별도의 클래스(.h, .cpp)에서 공유하여 사용하는 가장 깔끔한 방법은 클래스 생성자에 Preferences 객체의 주소(포인터)를 전달하는 방식입니다.이 방식을 사용하면 메인에서 관리하는 설정을 클래스 내부에서 자유롭게 읽고 쓸 수 있습니다.1. 클래스 헤더 파일 (MySettings.h)클래스 내부에서 Preferences 객체에 접근할 수 있도록 포인터 변수를 선언합니다.C++#ifndef MY_SE..
[목차]Python CodeArduino Code* 소스 코드 : OTA264V011_Pyduino260408W.zip[Python]# pip3 install Flask flask-sqlalchemy apscheduler waitress requests python-dotenv --break-system-packagesimport osfrom flask import Flask, request, jsonify, render_template, send_file, redirect, url_for, sessionfrom werkzeug.utils import secure_filenamefrom models import db, Device, Firmware, OtaTask, AutoRule, CompileJobf..
아두이노를 이용해사용자가 원하는 특정한 주파수를 갖는 GPIO 출력을 갖도록 하는 코드 [예제 코드]// 설정할 GPIO 핀const int outputPin = 18; // 원하는 출력 핀 번호로 설정// PWM 채널 설정const int pwmChannel = 0;const int resolution = 8; // 8-bit (0~255)int dutyCycle = 128; // 50% 듀티사이클 (8-bit 기준)// 초기 주파수int currentFrequency = 1000; // Hzvoid setup() { Serial.begin(115200); // 초기 PWM 설정 ledcSetup(pwmChannel, currentFrequency, resolution); ..
아두이노에서 클래스 생성자 활용하는 예제struct 구조와 유사하지만, 초기화 방법 및 함수 활용 측면에서 많은 장점이 있음.XIAO를 대상으로 테스트함. [테스트 코드]class cValueInfo{ public: unsigned long mSecond_ThisOperation = 0; // [msec] float VoltageValue = 0.; float CurrentValue = 0.; // 기본 생성자 cValueInfo() { mSecond_ThisOperation = 0; // [msec] VoltageValue = 0.0; CurrentValue = -0.0001; } cValueInf..
portENTER_CRITICAL() 사용 [예제 코드]#include const char* ssid = "your_SSID";const char* password = "your_PASSWORD";WiFiServer server(80);#define LED_PIN 2 // GPIO2를 LED 제어 핀으로 사용// 🔹 공유 변수 (WiFiTask와 GPIOTask에서 사용)volatile bool isDataReady = false; // 데이터 준비 여부String valueString = ""; // WiFi로 전송할 데이터// 🔹 FreeRTOS Critical Section 관리용 변수portMUX_TYPE mux = portMUX_INITIALIZER_UNLOCKED;v..
* FreeTROS 이용isDataReady인 경우에 valueString을 WiFi를 통해 전송WiFi 전송 중에서 GPIO 제어에 시간 지연이 발생하지 않음. [예제 코드]#include const char* ssid = "your_SSID";const char* password = "your_PASSWORD";WiFiServer server(80);#define LED_PIN 2 // GPIO2를 LED 제어 핀으로 사용// 🔹 공유 변수 (WiFiTask와 GPIOTask에서 사용)volatile bool isDataReady = false; // 데이터 준비 여부String valueString = ""; // WiFi로 전송할 데이터void WiFiTask(void *..
ESP32Nano 2개 사이를 RS-485 방식으로 데이터를 송신 및 수신하고자 함.원본 데이터의 형식은 JSON임. [송신측 코드]* Serial2.begin(9600) 사용 가능#include #include #define DE_RE 2 // RS-485 모듈 DE & RE 핀HardwareSerial RS485Serial(1); // UART1 사용 (TX = GPIO17, RX = GPIO16)void setup() { pinMode(DE_RE, OUTPUT); digitalWrite(DE_RE, HIGH); // 송신 모드 활성화 RS485Serial.begin(9600, SERIAL_8N1, 16, 17); // RX = GPIO16, TX = GPIO17 Serial...
다양한 프로그래밍 언어에서 실수 계산을 위한 float형과 double형을 제공한다.아두이노에서도 동일하게 float형과 double형을 제공하지만,아두이노 내에서 처리되는 방식은 두 형식 모두 float형으로 처리된다.https://www.arduino.cc/reference/ko/language/variables/data-types/double/ double - 아두이노 참조설명 배밀도 부동소수점 숫자. 우노와 ATMEGA 기반 보드에서, 이것은 4바이트를 차지한다. 즉, double 구현은 float 와 정확히 같고, 정확도에서 얻는 게 없다. 아두이노 Due에서 double 은 8바이트 (64비트www.arduino.cc 정밀한 계산을 위해 (일반적으로) 8바이트 크기를 가지는 double형을 사..
int previousValue = -1; void setup() { // put your setup code here, to run once: pinMode(0, OUTPUT); pinMode(1, OUTPUT); } void loop() { // put your main code here, to run repeatedly: int value2 = analogRead(A3)/4; int value3 = analogRead(A2)/4; value2 = 255-value2; if(value2200) value2 = 200; value3 = 255-value3; if(value3200) value3 = 200; analogWrite(0, value2); analogWrite(1, value3); delay(..
// the number of the LED pin const int ledPin = 16; // 16 corresponds to GPIO16 const int ledPin2 = 17; // 17 corresponds to GPIO17 const int ledPin3 = 5; // 5 corresponds to GPIO5 // setting PWM properties const int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup(){ // configure LED PWM functionalitites ledcSetup(ledChannel, freq, resolution); // attach the channel t..
- Total
- Today
- Yesterday
- ServantClock
- 아두이노
- 혁신과허들
- 빌리칠드
- arduino
- bilient
- BSC
- BiliChild
- 혁신
- 배프
- 절연형
- 심심풀이
- Innovation&Hurdles
- Innovations&Hurdles
- 전압
- 전류
- Decorator
- 심심풀이치매방지기
- Hurdles
- 오블완
- Innovations
- 치매
- image
- 둎
- Video
- 허들
- DYOV
- 치매방지
- 빌리언트
- 티스토리챌린지
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |

