반응형

전체 글 821

USB Device Driver 작성 및 Linux Kernel에서 USB 인터페이스 사용 방법

USB Device Driver 작성 및 Linux Kernel에서 USB 인터페이스 사용 방법이 글에서는 Embedded Linux 환경에서 USB Device Driver를 작성하고, Linux Kernel에서 USB 인터페이스를 사용하는 방법을 설명합니다. 또한, USB Touch Device를 예제로 들어 Input Report를 처리하는 방법까지 다룹니다. 이번 예제는 Rockchip RK3399 기반 시스템을 기준으로 작성되었습니다.1. USB Device Driver란?USB(Device Driver)는 USB 장치를 제어하고 커널과 사용자 공간에서 데이터를 주고받기 위한 소프트웨어 계층입니다. 이를 통해 USB 장치가 시스템에서 정상적으로 동작하도록 합니다.USB 장치 드라이버는 보통 아래..

Linux/Kernel Driver 2025.03.23

AWS IoT Device Management

AWS IoT Device Management1. 개요AWS IoT Device Management는 대규모 IoT 디바이스를 안전하게 등록, 모니터링 및 관리할 수 있도록 지원하는 AWS의 서비스입니다. IoT 환경에서는 수천 개에서 수백만 개의 디바이스를 운영해야 할 수도 있으며, 이를 효율적으로 관리하지 않으면 운영의 복잡성이 증가하고 보안 위협이 발생할 가능성이 높아집니다. AWS IoT Device Management는 이러한 문제를 해결하기 위해 제공되는 강력한 솔루션입니다.이 글에서는 AWS IoT Device Management의 주요 기능, 사용 방법 및 실제 활용 사례를 설명합니다.2. AWS IoT Device Management의 주요 기능AWS IoT Device Managemen..

AWS IoT 2025.03.22

HIDL(HAL Interface Definition Language) 개념과 구조

HIDL(HAL Interface Definition Language) 개념과 구조1. 개요Android에서 하드웨어 추상화 계층(Hardware Abstraction Layer, HAL)은 하드웨어와 상위 애플리케이션 및 시스템 서비스를 연결하는 중요한 역할을 합니다. Android 8.0(Oreo)부터 도입된 HIDL(HAL Interface Definition Language)은 기존 HAL 구조를 대체하며, 보다 명확하고 안정적인 인터페이스를 제공하기 위한 시스템입니다.본 포스팅에서는 HIDL의 개념과 구조를 설명하고, AOSP(Android Open Source Project) 코드 예제를 통해 이해를 돕도록 하겠습니다.2. HIDL의 필요성기존의 HAL 구현 방식은 C/C++을 기반으로 하며,..

Android/Framework 2025.03.22

USART Driver 작성 및 Linux Kernel에서의 USART 인터페이스 사용 방법

USART Driver 작성 및 Linux Kernel에서의 USART 인터페이스 사용 방법개요USART(Universal Synchronous/Asynchronous Receiver-Transmitter)는 임베디드 시스템에서 중요한 직렬 통신 인터페이스입니다. 이번 포스팅에서는 Rockchip RK3399 플랫폼을 기준으로, Linux Kernel에서 USART 드라이버를 작성하고, 이를 통해 데이터를 읽고 쓰는 방법을 알아보겠습니다.USART란?USART는 직렬 통신을 지원하는 하드웨어 모듈로, 동기 및 비동기 통신을 모두 지원합니다. 동기 통신은 별도의 클럭 신호를 사용하며, 비동기 통신은 스타트와 스톱 비트를 활용합니다. USART는 주로 센서, 디버깅, 데이터 로깅 등의 목적으로 사용됩니다.주..

Linux/Kernel Driver 2025.03.22

AWS IoT Greengrass란?

AWS IoT Greengrass란?1. AWS IoT Greengrass 개요AWS IoT Greengrass는 AWS IoT 서비스를 엣지 디바이스에서 확장하여 로컬 컴퓨팅, 메시징, 데이터 관리, 기계 학습 추론 및 기타 AWS 서비스와의 원활한 통합을 가능하게 하는 서비스입니다. 이 서비스는 클라우드와 로컬 디바이스 간의 상호작용을 효율적으로 관리하며, 엣지 디바이스에서 독립적으로 실행할 수 있는 기능을 제공합니다.AWS IoT Greengrass는 주로 다음과 같은 환경에서 활용됩니다:클라우드 연결이 제한적인 환경에서 로컬 디바이스에서 실시간 처리가 필요한 경우AWS 클라우드 서비스를 엣지 디바이스로 확장하여 데이터 전송 비용을 절감하고, 운영 효율성을 향상시키고자 하는 경우머신 러닝 모델을 엣..

AWS IoT 2025.03.21

HAL과 커널 드라이버의 관계

HAL과 커널 드라이버의 관계Android는 하드웨어와 상위 애플리케이션 프레임워크 간의 추상화를 제공하기 위해 다양한 계층으로 구성되어 있습니다. 그중 HAL(Hardware Abstraction Layer)과 커널 드라이버는 하드웨어와 소프트웨어를 연결하는 핵심 요소입니다. 이번 포스팅에서는 HAL과 커널 드라이버의 역할, 관계, 그리고 AOSP(Android Open Source Project) 코드와 함께 구현 방식을 설명하겠습니다.1. HAL과 커널 드라이버의 역할1.1 커널 드라이버커널 드라이버는 리눅스 커널 내에서 동작하는 모듈로, 하드웨어와 직접 통신하며 상위 계층에서의 접근을 단순화하는 역할을 합니다. 일반적으로 다음과 같은 역할을 수행합니다.하드웨어 제어: 장치의 전원 관리, 인터럽트 ..

Android/Framework 2025.03.21

Embedded Linux에서 SPI Driver 작성하기 (Rockchip RK3399 기준)

Embedded Linux에서 SPI Driver 작성하기 (Rockchip RK3399 기준)SPI Driver란?SPI(Serial Peripheral Interface)는 임베디드 시스템에서 주변 장치와 통신하기 위해 널리 사용되는 동기식 직렬 통신 프로토콜입니다. 이번 포스팅에서는 Rockchip RK3399를 기준으로 SPI Flash를 읽고 쓰는 방법을 포함하여 Linux Kernel에서 SPI 인터페이스를 사용하는 방법을 단계별로 설명합니다.1. SPI 인터페이스 개요SPI는 Master-Slave 구조를 기반으로 동작합니다. 주요 신호선은 아래와 같습니다:MOSI (Master Out Slave In): Master에서 Slave로 데이터 전송.MISO (Master In Slave Out..

Linux/Kernel Driver 2025.03.21

AWS IoT Core란 무엇인가?

AWS IoT Core란 무엇인가?1. 개요AWS IoT Core는 Amazon Web Services(AWS)에서 제공하는 클라우드 기반의 IoT(Internet of Things) 관리 서비스로, 다양한 IoT 디바이스를 안전하게 연결하고 관리할 수 있도록 지원하는 서비스입니다. AWS IoT Core는 디바이스와 클라우드 간의 안전한 통신을 가능하게 하며, 메시지 브로커, 인증 및 권한 관리, 데이터 처리 및 저장 기능을 제공합니다.이 글에서는 AWS IoT Core의 주요 개념과 아키텍처, 기능, 그리고 실제 활용 사례에 대해 설명하겠습니다.2. AWS IoT Core의 주요 기능2.1 디바이스 연결 및 관리AWS IoT Core는 다양한 프로토콜을 지원하여 IoT 디바이스가 AWS 클라우드에 쉽..

AWS IoT 2025.03.20

AWS IoT란 무엇인가?

AWS IoT란 무엇인가?1. 개요AWS IoT(Internet of Things)는 Amazon Web Services(AWS)에서 제공하는 클라우드 기반 IoT 서비스로, 다양한 IoT 디바이스와 클라우드를 연결하여 데이터를 수집, 처리, 분석할 수 있도록 지원하는 서비스입니다. IoT 디바이스가 데이터를 효율적으로 송수신할 수 있도록 MQTT, HTTP, WebSockets 등의 프로토콜을 지원하며, 보안 및 디바이스 관리 기능도 포함하고 있습니다.AWS IoT는 단순한 연결 서비스가 아니라 데이터의 흐름을 관리하고, 디바이스를 효과적으로 운영할 수 있도록 다양한 기능을 제공합니다. 본 포스팅에서는 AWS IoT의 개념과 주요 구성 요소를 살펴보고, 이를 어떻게 활용할 수 있는지 설명하겠습니다.2...

AWS IoT 2025.03.20

HAL의 구조 및 Android 프레임워크와의 관계

HAL의 구조 및 Android 프레임워크와의 관계Android는 하드웨어 추상화 계층(Hardware Abstraction Layer, HAL)을 통해 하드웨어와 프레임워크 사이의 명확한 경계를 설정합니다. HAL은 하드웨어 구현을 추상화하여 상위 프레임워크에서 하드웨어 세부 사항을 몰라도 동작할 수 있도록 합니다. 이번 글에서는 HAL의 구조와 Android 프레임워크와의 관계를 살펴보겠습니다.1. HAL이란?HAL은 Android의 애플리케이션 프레임워크와 리눅스 커널 사이에 위치하는 계층으로, 특정 하드웨어 기능을 표준 인터페이스로 제공하는 역할을 합니다. 이를 통해 프레임워크는 하드웨어와 독립적으로 설계될 수 있으며, 하드웨어 제조사는 HAL을 구현하여 Android와 호환되는 드라이버를 개발할..

Android/Framework 2025.03.20
반응형