GD32 단일 칩 기반 TFT-LCD 인터페이스 및 그래픽 처리 가속기
GD32F4 단일 칩에서 TLI(TFT-LCD Interface), IPA(Image Processing Accelerator) 그리고 TFT-LCD의 작동 원리를 다룹니다.
TFT-LCD 화면 구성 요소
TFT-LCD 디스플레이 시스템은 여러 계층으로 구성됩니다. 이 계층 구조는 배경부터 상위 층까지 다음과 같이 정리됩니다.
BG(배경): 가장 아래에 위치하며 단색만 설정 가능합니다.
Layer 0: 배치 주소, 창 위치, 크기, 픽 ...
9월 24일 19:01에 게시됨
Gerrit 연동 Git 워크플로우와 문제 해결 가이드
Gerrit의 역할
Gerrit은 단순한 Git 저장소가 아니라 코드 리뷰를 위한 중간 저장소입니다. 개발자가 만든 커밋은 먼저 Gerrit에 제출되어 리뷰를 거친 뒤, 승인되면 최종 원격 저장소(예: origin)에 반영됩니다.
코드 제출 름
로컬에서 밋을 작성합니다.
Gerrit에 제출해 리뷰를 요청합니다.
리뷰를 통과하면 실제 원격 브랜치로 병합됩니다.
리뷰 브랜치 려받기
git ...
9월 24일 17:57에 게시됨
UVa 문제 풀이: 단순해 보이는 완전탐색의 최적화 전략
완전탐색 문제들은 겉보기에 단순해 보이지만, 효율적인 탐색 범위 설정과 수학적 변형이 핵심입니다. 세 가지 대표적인 문제를 통해 최적화 기법을 살펴봅니다.
문제 1: Division (UVa 725)
0~9의 각 숫자를 정확히 한 번씩 사용하여 abcde / fghij = n 형태의 식을 찾는 문제입니다.
핵심 아이디어
분자와 분모를 각각 순회하면 1010에 달하는 경우의 수가 발생합니다. ...
9월 24일 17:33에 게시됨
로컬에서 이미지 압축 후 업로드하는 자바스크립트 플러그인 localResizeIMG 사용법
예제 코드
/**
* 로컬 이미지 압축 후 업로드 기능
*/
$("#imageInput").change(function(){
var currentElement = $(this);
lrz(this.files[0],{width: 1024,quality :0.7,fieldName:'imageFile'}).then(function(result) {
return uploadFile(currentElement.get(0) , result.formData);
}).then(function(response) {
// response =&g ...
9월 24일 12:22에 게시됨
PCA85232 를 활용한 세그먼트 LCD 구동 매커니즘 및 임베디드 설계
1. 서론 및 응용 배경
임베디드 시스템에서 사용자 인터페이스를 구성할 때 LCD 디스플레이는 핵심 요소입니다. 자동차 계기판이나 산업용 장비와 같은 환경에서는 안정적인 시각적 피드백이 필수적입니다. 그러나 마이크로컨트롤러(MCU) 의 GPIO 핀을 직접 사용하여 다수의 세그먼트를 구동하는 것은 제한된 포트 수와 복잡한 파형 생성 문제로 인해 비효율적입니다. 이 ...
9월 24일 11:23에 게시됨
GUI 자동화 테스트 실무: 컨트롤, 키보드/마우스, 메뉴 리스트 조작 가이드
1. 대기 메커니즘
대기 처리 없이 발생하는 오류 사례:
from pywinauto import Application
app = Application(backend='uia').connect(process_id=24600)
window = app.window(title_pattern='.*Sublime Text.*')
# 대기 코드 주석 처리 시 오류 발생
window.minimize()
print("최소화 상태:", window.is_minimized())
window.maximize()
print("최대화 상태:", window. ...
9월 24일 09:51에 게시됨
C# 멀티스레드 환경에서의 컬렉션 동시성 이슈 해결 전략
다중 스레드 요청 처리 시 발생하는 예외 상황
시스템 내에서 외부 호출을 수행하고 그 결과를 바탕으로 특정 이벤트가 실행되도록 설계되는 경우, 이러한 요청 정보를 일시적으로 저장할 수 있는 컨테이너가 필요합니다. 초기 버전에서는 단순한 리스트(List) 타입을 사용하여 요청을 적재하고 조건이 충족되면 발송하는 방식을 적용했습니다. 그러나 여러 스레드에서 동 ...
9월 24일 08:12에 게시됨
TypeScript를 활용한 Electron 데스크톱 애플리케이션 구축 방법
프로젝트 구조 설계
TypeScript와 Electron을 함께 사용한다면 컴파일 산출물과 원천 소스를 명확히 격리하는 디렉토리 레이아웃이 필수적입니다. 다음과 같은 계층적 구조를 기반으로 빈 파일을 생성합니다.
my-electron-app/
├── dist/ // tsc 컴파일된 번들 및 JS 파일 위치
├── src/ // TypeScript 원천 코드 루트
│ ├── main.ts ...
9월 24일 07:21에 게시됨
싱글톤 패턴의 구현과 활용
싱글톤 패턴은 클래스가 단일 인스턴스만 생성되도록 제한하는 설계 패턴이다. 이 패턴은 다음과 같은 특성을 가진다:
유일한 인스턴스만 존재하도록 보장
해당 인스턴스에 접근할 수 있는 메서드 제공
인스턴스 생성 과정을 제어(예: 생성자 비공개화)
실제 사례로는 사무실 내 모든 장치가 공유하는 와이파이 네트워크를 들 수 있다. 각 장치마다 별도의 네트워크를 ...
9월 24일 07:02에 게시됨
CentOS 서버 기본 보안 및 성능 최적화 가이드
최소 설치 및 필수 패키지 구성
시스템은 필요한 기능만 선택적으로 설치합니다. 개발 도구, 네트워크 기본 유틸리티, 핵심 애플리케이션 패키지만 포함하여 불필요한 요소는 제거합니다.
SSH 접속 보안 강화
/etc/ssh/sshd_config 파일을 수정하여 SSH 보안을 강화합니다:
기본 포트(22)를 고위 포트(예: 22221)로 변경하여 스캐닝 공격 회피
DNS 역방향 조회 비활 ...
9월 24일 06:50에 게시됨