시스템 구성

본 시스템은 Ubuntu Linux 클라이언트, Raspberry Pi 4 서버 데몬, 장치 제어 공유 라이브러리, GPIO/SPI 기반 하드웨어 회로로 구성한다.

Ubuntu Client
  -> TCP Command
Raspberry Pi 4 Server Daemon
  -> Command Parser
  -> Device Manager
  -> Dynamic Libraries
  -> GPIO/SPI Hardware

개발 환경

권장 디렉터리 구조

remote_device_control/
  Makefile
  README.md
  실행_과정.txt
  include/
    protocol.h
    device_api.h
    device_manager.h
    gpio_map.h
  common/
    protocol.c
    logger.c
  client/
    client.c
    menu.c
    signal_handler.c
  server/
    server.c
    daemon.c
    session.c
    device_manager.c
  devices/
    led.c
    buzzer.c
    light.c
    segment.c
  lib/
    libdevice_led.so
    libdevice_buzzer.so
    libdevice_light.so
    libdevice_segment.so
  build/

프로세스 설계

서버