반응형

전체 글 1164

ESP-IDF 프로젝트 구조 완벽 이해: CMake 기반 ESP32 개발 시작하기

지난 글에서 VS Code와 ESP-IDF 개발 환경을 무사히 마쳤다면, 이제 본격적으로 나만의 임베디드 애플리케이션을 만들어볼 차례입니다. 아두이노 환경에서는 단 하나의 .ino 파일만으로 코딩이 가능했지만, 복잡한 대형 시스템 개발에 특화된 ESP-IDF는 빌드 시스템으로 CMake를 채택하고 있어 프로젝트 폴더 구조가 다소 낯설게 느껴질 수 있습니다. 프로젝트 구조를 정확히 이해하지 못하면 외부 라이브러리를 추가하거나 빌드 설정을 바꿀 때 핑거프린트 오류나 컴파일 에러로 고생하기 쉽습니다. 이번 글에서는 VS Code와 터미널을 이용해 새 프로젝트를 생성하는 방법부터 각 폴더와 핵심 파일들이 빌드 시스템 내에서 어떤 역할을 담당하는지 명확하게 정리해 보겠습니다.핵심 요약 3줄ESP-IDF 프로젝트는..

ESP32 ESP-IDF 개발 환경 설정 가이드: VS Code 연동부터 디버깅까지

ESP32 마이크로컨트롤러의 가성비와 성능을 온전히 활용하려면 제조사인 Espressif가 제공하는 공식 프레임워크인 ESP-IDF(Espressif IoT Development Framework)를 사용하는 것이 가장 좋습니다. 아두이노 IDE보다 칩의 하드웨어 자원을 제어하기 훨씬 유리하고 FreeRTOS 기반의 멀티태스킹을 안정적으로 구현할 수 있기 때문입니다. 하지만 툴체인과 환경 변수 설정이 까다로워 초기 진입 장벽이 높은 편입니다. 이번 글에서는 가장 대중적인 에디터인 VS Code(Visual Studio Code)를 활용하여 오류 없이 한 번에 ESP-IDF 개발 환경을 구축하고 첫 빌드와 디버깅까지 마치는 과정을 정리해 보겠습니다.핵심 요약 3줄ESP32 공식 프레임워크인 ESP-IDF는..

ESP32 칩 핵심 특징 분석: IoT 임베디드 개발자를 위한 가이드

IoT 기기를 직접 설계하거나 임베디드 프로젝트를 진행할 때 통신 기능과 연산 성능은 항상 고민거리입니다. 과거에는 마이크로컨트롤러에 Wi-Fi나 블루투스 모듈을 별도로 부착해야 해서 회로가 복잡해지고 단가도 높아졌습니다. 이러한 번거로움을 한 번에 해결하며 가성비와 성능을 모두 잡은 칩이 바로 ESP32입니다. 이번 글에서는 현업과 취미 분야를 막론하고 가장 널리 쓰이는 ESP32의 핵심 기능과 실무 적용을 위한 포인트들을 짚어보겠습니다.핵심 요약 3줄ESP32는 Wi-Fi와 BLE(Bluetooth Low Energy) 통신 모듈을 기본으로 내장한 고성능 저전력 마이크로컨트롤러입니다.Xtensa 듀얼 코어 프로세서를 탑재하여 통신 처리와 사용자 애플리케이션 연산을 독립적으로 분산 처리할 수 있습니다...

안드로이드 RelativeLayout 완벽 가이드 | Kotlin 예제 포함 UI 배치 방법

안녕하세요, 소프트웨어 공장입니다. 오늘은 Android UI 레이아웃 중 하나인 RelativeLayout에 대해 알아보겠습니다. 이 레이아웃은 자식 뷰들을 상호 간의 위치 관계에 따라 배치할 수 있는 강력한 기능을 제공합니다. 예제와 함께 쉽게 따라 해보실 수 있도록 kotlin 코드를 이용해 설명드리겠습니다.RelativeLayout이란?RelativeLayout은 자식 뷰들 간의 상대적인 위치를 설정하여 화면을 구성하는 레이아웃입니다. 예를 들어, 한 뷰를 다른 뷰의 오른쪽에 위치시키거나 위쪽에 위치시키는 등의 배치가 가능합니다. 이를 통해 복잡한 UI를 좀 더 유연하게 구성할 수 있습니다.RelativeLayout의 사용을 위해 각 뷰의 배치 속성을 이용해 다른 뷰에 대한 위치를 지정할 수 있으..

Android LinearLayout 완벽 가이드 (orientation, weight, gravity 사용법 + 예제 코드)

안녕하세요! 오늘은 LinearLayout에 대해 알아보려고 합니다. LinearLayout은 Android에서 가장 기본적이고 자주 사용되는 레이아웃 중 하나로, 자식 뷰들을 일렬로 배치하는 데 사용됩니다. LinearLayout은 수평 또는 수직 방향으로 자식 뷰를 정렬할 수 있으며, 이를 통해 유연하게 사용자 인터페이스를 구성할 수 있습니다.이번 포스팅에서는 LinearLayout의 주요 속성과 함께, 예제 코드를 통해 그 사용 방법을 알아보겠습니다.LinearLayout이란?LinearLayout은 자식 뷰들을 수평 또는 수직으로 배치하는 레이아웃입니다. 방향에 따라 모든 자식 뷰를 나란히 배치하며, 레이아웃의 크기와 위치를 유연하게 조절할 수 있는 다양한 속성을 제공합니다.orientation:..

Android SharedPreferences 사용법 – 데이터 저장과 불러오기 완벽 가이드

안드로이드 애플리케이션 개발에서는 데이터 저장이 중요한 작업 중 하나입니다. 사용자 설정, 간단한 데이터 또는 로그인 상태를 저장하기 위해 흔히 사용되는 방법이 SharedPreferences입니다. 이번 포스팅에서는 SharedPreferences를 사용하여 데이터를 저장하고 불러오는 방법에 대해 알아보겠습니다. Kotlin을 사용한 코드 예제도 포함되어 있으니 실습해보세요!SharedPreferences란?SharedPreferences는 키-값(Key-Value) 쌍 형태로 간단한 데이터를 저장할 수 있는 안드로이드의 API입니다. 이를 이용하면 애플리케이션이 종료되더라도 데이터가 유지되므로 설정 정보, 사용자 이름과 같은 간단한 정보들을 저장하기에 적합합니다.SharedPreferences는 내부..

Android ViewPager2 완벽 가이드 (Fragment 화면 전환 + TabLayout Kotlin 예제)

안드로이드 애플리케이션에서 여러 화면을 자연스럽게 전환하기 위해 Fragment와 ViewPager2를 사용하는 것은 매우 유용한 방법입니다. 이번 포스팅에서는 Fragment와 ViewPager2를 활용하여 멀티스크린 앱을 만드는 방법을 예제 코드와 함께 설명하겠습니다. 이 튜토리얼을 통해 여러분은 쉽게 화면 전환 기능을 구현할 수 있게 될 것입니다.1. 프로젝트 준비하기먼저, Android Studio에서 새로운 프로젝트를 만듭니다. "Empty Activity" 템플릿을 사용하고, Kotlin을 선택하세요. 프로젝트가 준비되면, 필요한 라이브러리를 추가하겠습니다.build.gradle 파일에 다음과 같이 ViewPager2 라이브러리를 추가합니다.implementation "androidx.view..

Android BottomNavigationView 완벽 가이드 (Kotlin 예제 포함, Fragment 화면 전환)

안드로이드 앱 개발에서 사용자 경험(UX)을 향상시키기 위한 다양한 UI 컴포넌트가 있습니다. 그 중에서도 "BottomNavigationView"는 탭 기반 네비게이션을 쉽게 구현할 수 있는 유용한 컴포넌트입니다. 이번 포스팅에서는 BottomNavigationView를 활용하여 사용자에게 쉽게 탐색할 수 있는 UI를 제공하는 방법을 알아보겠습니다.BottomNavigationView란?BottomNavigationView는 화면 하단에 탭 형식으로 여러 메뉴 항목을 제공하여 사용자가 원하는 화면으로 쉽게 이동할 수 있게 해주는 컴포넌트입니다. 보통 3~5개의 주요 화면을 네비게이션할 때 사용됩니다. 각 메뉴 항목은 아이콘과 라벨로 구성되어 사용자에게 직관적인 네비게이션 경험을 제공합니다.프로젝트 설정..

Android Toolbar 사용법: ActionBar 대체부터 메뉴 추가, 커스터마이징까지 완벽 정리

오늘은 안드로이드 애플리케이션 개발에서 자주 사용하는 UI 컴포넌트 중 하나인 ToolBar에 대해 알아보겠습니다. ToolBar는 액션바를 대체하거나 사용자 정의 액션바를 만들 때 사용할 수 있는 중요한 컴포넌트입니다. 이번 포스팅에서는 ToolBar의 기본 사용법과 이를 활용하여 더 나은 사용자 경험을 제공하는 방법을 Kotlin 예제를 통해 알아보겠습니다.1. ToolBar란?ToolBar는 기존의 ActionBar보다 유연하고 다양한 UI 구성을 가능하게 해주는 UI 컴포넌트입니다. 개발자는 ToolBar를 활용해 액션 버튼, 제목, 메뉴 등을 자유롭게 구성할 수 있으며, 이를 통해 사용자의 요구에 맞춘 화면 구성을 할 수 있습니다.1.1 ToolBar의 장점유연성: ToolBar는 기존 Acti..

Android CardView 사용법: RecyclerView와 함께 카드 UI 구현하기 (Kotlin 예제)

안녕하세요! 오늘은 안드로이드 애플리케이션 개발에서 자주 사용되는 UI 컴포넌트 중 하나인 CardView에 대해 알아보겠습니다. CardView는 정보를 카드 형태로 시각적으로 깔끔하게 표현할 수 있어, 리스트나 중요한 정보를 보여줄 때 유용하게 사용할 수 있습니다. 이번 포스팅에서는 CardView의 사용법과 활용 예제를 Kotlin 코드와 함께 살펴보도록 하겠습니다.CardView란?CardView는 안드로이드에서 카드 스타일의 레이아웃을 만들어주는 뷰 그룹입니다. 그림자와 모서리 곡률을 쉽게 설정할 수 있어서, 깔끔한 사용자 인터페이스를 만드는데 매우 유용합니다. 또한, Material Design의 스타일을 따르는 카드 레이아웃을 구성할 수 있어 앱의 시각적 매력을 높일 수 있습니다.CardVi..

반응형