반응형

전체 글 801

Java에서 조건문(if, switch) 다루기

Java에서 조건문(if, switch) 다루기조건문은 프로그래밍에서 특정 조건에 따라 다른 동작을 수행할 수 있게 해주는 필수적인 요소입니다. Java에서는 주로 if, else if, else, 그리고 switch 문을 사용하여 조건문을 작성합니다. 조건문을 잘 활용하면 프로그램의 복잡도를 줄이고, 코드의 가독성과 유지 보수성을 높일 수 있습니다.1. if, else if, else 문1.1 기본 사용법if: 가장 기본적인 형태의 조건문으로, 주어진 조건이 참일 경우 아래 코드 블록을 실행합니다.else if: 여러 조건을 고려해야 하는 경우, else if를 사용하여 첫 번째 조건이 거짓일 때 다른 조건을 평가할 수 있습니다.else: 모든 조건이 거짓인 경우 실행할 코드 블록을 정의합니다.int ..

JAVA/JAVA 기초 2024.09.26

Java 연산자 기초와 사용법

Java 연산자 기초와 사용법Java에서 연산자는 변수나 상수 등을 조작하거나 두 개 이상의 값을 비교하는 데 사용되는 중요한 도구입니다. 이 문서에서는 연산자의 기본 개념을 이해하고, 예제를 통해 연산자 사용법을 익히는 데 초점을 맞추겠습니다. 초보자들이 쉽게 이해하고 실습할 수 있도록 실습 예제를 중심으로 설명합니다.1. Java main() 메서드Java 프로그램의 시작점은 main() 메서드입니다. main() 메서드는 Java Virtual Machine(JVM)이 프로그램을 실행할 때 가장 먼저 호출하는 메서드로, 모든 Java 프로그램은 이 메서드를 포함해야 실행 가능합니다.public class ExampleClass { public static void main(String[] ar..

JAVA/JAVA 기초 2024.09.25

Java에서 배열(Array) 사용하기

Java에서 배열(Array) 사용하기1. 배열이란 무엇인가?배열(Array)은 같은 데이터 타입의 여러 값을 하나의 변수에 저장할 수 있는 자료구조입니다. 배열은 크기가 고정되어 있으며, 생성된 배열의 각 요소는 인덱스를 통해 접근합니다. 배열은 프로그램에서 대량의 데이터를 효율적으로 처리하는 데 매우 유용합니다.// int형 변수의 선언int num1 = 1, num2 = 2, num3 = 3;// 배열의 선언int[] nums = {1, 2, 3};위 코드는 nums라는 이름의 정수형 배열을 선언하고 값을 할당한 예입니다.2. 1차원 배열1차원 배열은 배열의 가장 기본적인 형태입니다. 자바에서 배열을 선언할 때 데이터 타입 뒤에 대괄호([])를 붙여 배열임을 나타내고, 배열을 생성할 때는 new 키..

JAVA/JAVA 기초 2024.09.24

JAVA 자료형 및 변수

JAVA 자료형 및 변수1. 자료형자료형이란 변수가 어떤 종류의 데이터를 저장할 수 있는지를 나타내는 역할을 합니다. 변수는 특정 데이터 유형을 사용해야 하며, Java에서는 크게 두 가지 자료형이 존재합니다: 기본 데이터 유형(Primitive Data Types)과 참조 데이터 유형(Reference Data Types).2. 변수변수는 값이 저장되는 메모리 공간의 이름이라고 이해하면 됩니다. 변수는 선언할 때 자료형을 명시해야 하며, 이는 변수가 저장할 수 있는 값의 종류를 결정합니다.예시: int i = 0;여기에서 'int'는 자료형에 해당하고, 'i'는 변수(변수 이름), '0'은 할당된 값입니다.변수 선언 시 주의사항변수 이름은 영문자, 숫자, 밑줄(_), 달러 기호($)를 사용할 수 있으며..

JAVA/JAVA 기초 2024.09.23

JAVA 개발 환경 설치하기

JAVA 개발 환경 설치하기개발 환경이란, 소프트웨어 개발을 위해 사용하는 도구와 설정을 의미합니다. 다양한 개발 환경이 존재하는데, 특히 Java 애플리케이션을 개발할 때는 Eclipse, IntelliJ IDEA, NetBeans, Visual Studio Code 같은 도구들이 많이 사용됩니다.저는 개인적으로 Eclipse를 선호하여, 이번 가이드에서는 JDK와 Eclipse를 설치하고 환경 변수를 설정하는 과정까지 자세히 설명하겠습니다. 최근의 Eclipse 버전은 JDK 설치와 환경 변수 설정 등을 자동으로 처리해 주기 때문에, 상대적으로 쉽게 Java 개발 환경을 구축할 수 있습니다.1. JAVA Eclipse 개발환경 설치먼저 Eclipse 공식 사이트에 접속하여, Windows용 Eclip..

JAVA/JAVA 기초 2024.09.22

Java 언어

Java 언어자바(Java)는 1995년 Sun Microsystems에서 발표한 객체지향 프로그래밍 언어입니다. 발표 이후 다양한 분야에서 널리 사용되며, 현재는 Oracle이 관리하고 있습니다. 자바는 플랫폼 독립성을 제공하는 언어로, 한 번 작성된 코드를 여러 운영체제에서 동일하게 실행할 수 있습니다. 자바는 그 성능과 안정성 덕분에 웹 애플리케이션, 모바일 애플리케이션, 데스크탑 애플리케이션, 서버 애플리케이션 등 다양한 응용 프로그램 개발에 사용됩니다.1. 자바의 특징1.1 객체지향 프로그래밍 (Object-Oriented Programming, OOP)자바는 객체지향 프로그래밍 언어로, 코드의 재사용성, 유지보수성, 확장성을 크게 향상시킵니다. 객체지향 프로그래밍에서는 모든 데이터를 객체(ob..

JAVA/JAVA 기초 2024.09.21

nRF ESB(무선 통신 구현)

nRF ESB(무선 통신 구현)ESB (Enhanced ShockBurst)는 Nordic Semiconductor의 nRF 시리즈 무선 칩에서 주로 사용되는 경량 프로토콜입니다. 이 프로토콜은 짧은 거리에서 저전력, 신뢰성 있는 무선 통신을 가능하게 하며, 리소스가 제한된 IoT (Internet of Things) 장치, 웨어러블 기기, 센서 네트워크 등에서 많이 활용됩니다. 이 글에서는 ESB의 주요 특징, 제한사항, 그리고 nRF52840와 같은 nRF 시리즈 칩을 활용한 무선 통신 구현 방법을 설명합니다.1. ESB 소개Enhanced ShockBurst (ESB)는 무선 데이터 전송에서 효율성과 신뢰성을 동시에 추구하는 프로토콜입니다. 주로 간단한 무선 네트워크에서 저전력으로 신속하게 데이터를..

nRF52 2024.09.20

nRF52 RAM, Flash 크기 조정

nRF52 RAM, Flash 크기 조정nRF52 시리즈 MCU를 사용할 때, RAM과 Flash 메모리의 시작 주소는 MCU가 정상적으로 동작하는 데 매우 중요한 역할을 합니다. 특히 애플리케이션에서 SoftDevice(블루투스 스택)나 부트로더를 사용하는 경우, 이 설정은 더욱 복잡해지며 상황에 따라 RAM과 Flash의 시작 주소를 적절히 조정해야 합니다.이 글에서는 다음과 같은 경우에 맞춰 RAM 및 Flash 메모리의 크기를 조정하는 방법을 설명하겠습니다.SoftDevice와 MBR(Master Boot Record)을 사용하지 않는 애플리케이션MBR만 사용하는 애플리케이션SoftDevice를 사용하는 애플리케이션1. 개요nRF52 시리즈 MCU를 사용하는 애플리케이션에서 RAM과 Flash 메..

nRF52 2024.09.19

nRF52 Watchdog Timer: 시스템 안정성을 보장하는 방법

nRF52 Watchdog Timer: 시스템 안정성을 보장하는 방법임베디드 시스템 개발에서 시스템의 신뢰성을 보장하는 일은 매우 중요합니다. 특히 IoT 장치나 무선 통신 장치와 같은 시스템은 외부 환경에 의해 예기치 않게 오류가 발생할 수 있습니다. 이때 Watchdog Timer(감시 타이머)를 사용하면, 시스템이 예기치 않은 상황에 빠지더라도 자동으로 복구될 수 있습니다. 본 글에서는 nRF 시리즈에서 Watchdog Timer를 설정하고 사용하는 방법을 중점적으로 다루며, 예시 코드와 함께 그 과정을 단계별로 설명합니다.1. Watchdog Timer란?1.1 개념Watchdog Timer는 시스템이 주어진 시간 내에 특정 동작을 수행하지 않을 경우, 이를 감지하고 시스템을 리셋하는 보호 장치입..

nRF52 2024.09.18

nRF52 fstorage 사용 가이드

nRF52 fstorage 사용 가이드nRF fstorage는 Nordic Semiconductor에서 개발한 경량 데이터 저장 라이브러리입니다. 이 라이브러리는 nRF52 시리즈와 같은 임베디드 시스템에서 효율적으로 데이터를 관리하고 저장하는 데 특화되어 있습니다. 이 글에서는 nRF fstorage의 특징, 설정, 초기화 방법, 그리고 실제 데이터를 읽고 쓰는 방법을 설명합니다. 또한, SoftDevice 사용 여부에 따른 API 변경점과 주요 사용 방법을 상세히 다룹니다.1. nRF fstorage 개요nRF fstorage는 플래시 메모리 관리와 같은 중요한 기능을 수행하는 경량 라이브러리입니다. 이는 주로 작은 크기의 데이터를 빠르고 안정적으로 저장할 수 있도록 설계되었으며, 제한된 리소스를 가..

nRF52 2024.09.17
반응형