목록전체 글 (324)
공부중
1. 이론 ESP32에서 I2C 통신을 위해 LCD 모듈의 SDA (Serial Data Line)와 SCL (Serial Clock Line)을 연결하려면 기본적으로 다음의 GPIO 핀을 사용합니다:SDA: GPIO 21SCL: GPIO 22이는 ESP32의 기본 I2C 핀 설정입니다. 다음과 같이 연결하시면 됩니다:LCD SDA -> ESP32 GPIO 21LCD SCL -> ESP32 GPIO 22 글자 흐린 경우 드라이버 돌려서 저항 값 변경 https://bplab.kr/coding_FAQ/?bmode=view&idx=5342668 LCD 화면에 글자가 보이지 않아요. : 코딩교육키트 자주묻는질문I2C LCD 모듈LCD 앞면LCD 뒷면① LCD 화면에 불빛(전력)이 안들어와요.아두이노 보드와 ..
1. 이론 1.1 1 digit 7 segment 1 자리인 경우 애노드 1.2 4 digit 7 segment4자리인 경우 캐소드 4-digit FND(Seven Segment Display)에서 표시되는 숫자들이 동시에 디스플레이되는 것처럼 보이게 하는 주요 기술인 "멀티플렉싱"과 "잔상효과"멀티플렉싱(Multiplexing)멀티플렉싱은 하나의 디스플레이에서 여러 숫자나 문자를 차례로 빠르게 표시하여 모든 세그먼트가 동시에 켜져 있는 것처럼 보이게 하는 기법입니다. 4-digit FND의 경우, 각 자릿수의 세그먼트가 공통된 데이터 라인을 공유하기 때문에, 모든 숫자를 동시에 디스플레이하는 것은 원칙적으로 불가능합니다. 대신, 각 자릿수를 매우 빠른 속도로 차례대로 켜고 끄는 방식으로 구..
1. ESP32 Dual Tasking with Analog Read and LED Blinkvoid setup() { Serial.begin(9600); // GPIO 2번 핀을 출력으로 설정합니다. pinMode(2, OUTPUT); // 시스템을 1000ms 동안 대기시킵니다. vTaskDelay(1000 / portTICK_PERIOD_MS); // delay (1000) // 각 루프에 할당되는 메모리양: 2024, 우선순위 :1 // task1이라는 이름의 작업을 생성합니다. xTaskCreate(task1, "task1", 2048, NULL, 1, NULL); xTaskCreate(task2, "task2", 2048, ..
1. D1 R32 2. 드라이버 설치 https://docs.wemos.cc/en/latest/ch340_driver.html 압축 풀고 serup.exe install 3. 아두이노 앱 환경 설정 파일 -> 환경설정 https://dl.espressif.com/dl/package_esp32_index.json추가 툴 -> 보드 -> 보드매니저 -> “ESP32” 검색 -> 설치 4. 연결 툴 -> 보드 -> ESP32 Arduino -> ESP32 Dev Module 만약 포트가 2개 이상 잡힌다면 뒤의 포트 선택. 하지만 1개만 잡히고 있으므로 COM11 선택포트가 업데이트 되지 않는다면 1. 앱 껐다 켜기2. 보드정보 얻기 선택 후, 포트 다시 선택
1. 이론 1. DC 모터 (직류 모터)설명: DC 모터는 직류 전원을 사용하여 작동합니다. 전압을 모터에 적용하면 모터 샤프트가 회전하기 시작합니다. 회전 속도는 공급되는 전압과 모터의 사양에 의존합니다.제어 방법: DC 모터는 간단한 온/오프 제어부터 PWM(Pulse Width Modulation) 신호를 이용한 속도 제어까지 다양하게 제어할 수 있습니다. 또한, 모터 드라이버나 H-브리지 회로를 사용하여 회전 방향을 변경할 수 있습니다. 2. 서보 모터설명: 서보 모터는 정확한 위치 제어가 가능하여 주로 원하는 각도로 정밀하게 회전해야 하는 어플리케이션에 사용됩니다. 서보는 내부적으로 위치 피드백 메커니즘을 가지고 있어 명령된 위치로 정확하게 이동할 수 있습니다.제어 방법: 서보 모터는 PWM 신..
경기도 기준으로 알아보자 https://www.data.go.kr/iim/api/selectAPIAcountView.do 공공데이터포털 통합 로그인공공데이터포털 로그인 국민과 함께 하는 공공데이터포털에 오신 것을 환영합니다auth.data.go.kr 아래 다른 버스 정보 관련공공데이터가 나오지만 그냥 4개 있는 정보를 사용하자 외 4건 이면 총 5건이어야 되는거 아닌가. .. 들어가서 정보 신청을하면 다음과 같은 4개의 정보를 사용할 수 있다. 노선정보항목조회경유정류소목록조회노선번호목록조회 노선형상정보목록조회 그런데 노선ID정류소아이디가 무엇일까... 우선 3에 있는 정보를 눌러보자. 다행히 여기는 우리가 아는 번호를 입력하면 된다. 적당히 값이 작게 나오는 660번 버스를 찾아보자..
1. 이론 RGB LED 2. RGB LED 실습 #define LED_R 11#define LED_G 10#define LED_B 9void setup() { // Serial.begin(9600); pinMode(LED_R, OUTPUT); pinMode(LED_G, OUTPUT); pinMode(LED_B, OUTPUT);}void loop() { digitalWrite(LED_R, 255); digitalWrite(LED_G, 145); digitalWrite(LED_B, 98); } 3. LGB LED 랜덤 출력 // 변수 선언long randNumber1;long randNumber2;long randNumber3;#define LED_R 11#define ..
1. 이론 2. 코드 int echo = 9;int trig = 8;void setup() { Serial.begin(9600); // 시리얼 통신 시작, 통신 속도 9600bps pinMode(trig, OUTPUT); // Trig 핀을 출력으로 설정 pinMode(echo, INPUT); // Echo 핀을 입력으로 설정}void loop() { // 초음파를 보낸다. 다 보내면 echo가 HIGH 상태로 대기하게 된다. digitalWrite(trig, LOW); // Trig 핀을 LOW로 설정 digitalWrite(echo, LOW); delayMicroseconds(2); // 진동 digitalWrite(trig, HI..