산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

SerialDebug: 아두이노 디버깅을 위한 고급 시리얼 로깅 라이브러리

지원 보드

아두이노 우노, 메가, 듀, 101, MKR 시리즈(Zero, 1000, Fox 1200), ESP8266/ESP32 기반 보드(NodeMCU, Feather, ESP32 Thing), Teensy 3.1/3.6 등 AVR Tiny 계열을 제외한 거의 모든 아두이노 호환 보드 지원. 온보드 LED는 선택 사항.

SerialDebug: 아두이노 디버깅을 위한 고급 시리얼 로깅 라이브러리

프로젝트 개요

안드로이드, iOS, ESP-IDF(ESP32 네이티브 SDK) 같은 현대적 개발 플랫폼은 디버그 메시지에 레벨(Verbose, Debug, Info, Warning, Error 등)을 지원합니다. 메시지 중요도에 따라 레벨을 설정하면 중요한 로그만 필터링해 볼 수 있어 디버깅 효율이 크게 향상됩니다.

아두이노 기본 Serial.print()에는 이런 기능이 없어, SerialDebug 라이브러리를 개발했습니다.

SerialDebug 라이브러리 주요 기능

SerialDebugApp (데스크톱 앱)

라이브러리와 연동되는 선택적 데스크톱 앱으로, 아두이노 IDE 시리얼 모니터 대신 사용 가능합니다. 로그 레벨별 색상 구분, 필터링, 검색, 내보내기 등 고급 기능 제공. 라이브러리와 독립적이므로 필수 아님.

설치 및 사용법

  1. 아두이노 IDE 라이브러리 매니저에서 "SerialDebug" 검색 설치
  2. 또는 GitHub에서 직접 다운로드
  3. 코드에 #include <SerialDebug.h> 추가 후 debug.begin(Serial) 호출
  4. debug.setLevel(DEBUG) 등으로 레벨 설정
  5. debugA("message"), debugI("value: %d", val) 등 매크로 사용

예제 코드

#include <SerialDebug.h>

void setup() {
  Serial.begin(115200);
  debug.begin(Serial);
  debug.setLevel(DEBUG);  // 기본 레벨 설정
}

void loop() {
  debugV("Verbose: detailed trace");      // 가장 상세
  debugD("Debug: sensor value = %d", analogRead(A0));
  debugI("Info: WiFi connected");         // 일반 정보
  debugW("Warning: battery low: %d%%", 15);  // 경고
  debugE("Error: sensor read failed");    // 에러
  
  // 조건부 로깅
  if (debug.isLevel(DEBUG)) {
    // 무거운 연산만 디버그 모드에서 수행
  }
  
  delay(1000);
}

GitHub 저장소

https://github.com/JoaoLopesF/SerialDebug - 라이브러리, 예제, 문서, SerialDebugApp 다운로드

회로도

별도 회로 불필요. 지원 보드 아무거나에 LED 선택적 연결.

SerialDebug: 아두이노 디버깅을 위한 고급 시리얼 로깅 라이브러리

제조공정

  1. 다리미판 제조: 설계, 재료, 생산 공정
  2. 인쇄회로기판(PCB): 설계, 제조, 미래 트렌드
  3. 서핑보드 제작과 디자인: 폴리네시아 기원에서 현대 혁신까지
  4. Arduino Edge Control 보드, 정밀 농업용 스마트 실외 IoT & AI 구현
  5. 아두이노, 산업용 IoT 보드 '포텐타 H7' CES서 공개… 듀얼 코어·내구성 강화
  6. RasPiRobot Board V2: 라즈베리 파이를 강력한 로봇 컨트롤러로 확장하기
  7. DIY 아두이노 워드 클럭 – 세련된 실시간 텍스트 시계 만들기
  8. 블루투스 제어 아두이노 스파이봇(Spybot) 만들기
  9. 플릭모트(FlickMote): 스마트 홈을 위한 제스처 제어 IR 리모컨
  10. DIY 아두이노 TV B-Gone: 모든 TV를 끄는 만능 리모컨