분류 전체보기

    [백준] C++ 2577번 숫자의 개수

    #include using namespace std; int main() { int a, b, c; int data[10] = {0}; cin >> a >> b >> c; int result = a * b * c; for (int i = 0; i < 10; i++) { data[result % 10] += 1; result /= 10; if (result == 0) break; } for (int i = 0; i < 10; i++) { cout

    [백준] C++ 1110번 더하기 싸이클

    #include using namespace std; int main() { int n; int a = 0, b = 0, sum = 0; int new_n = 0, count = 0; cin >> n; if (n = 0 && n

    [백준] C++ 2480번 주사위 세개

    #include using namespace std; int main() { int f = 0, s = 0, t = 0; int max = 0; int result; cin >> f >> s >> t; if (f == s && s == t) cout

    [백준] C++ 2525번 오븐 시계

    #include using namespace std; int main() { int h = 0; int m = 0; int time = 0; int end_h = 0, end_m = 0; cin >> h >> m; cin >> time; end_h = h; end_m = m + time; if (end_m > 59) { end_h += end_m / 60; end_m %= 60; } end_h %= 24; cout

    Arduino to STM32

    https://rorsi.tistory.com/38 STM32 to Arduino이번에는 STM32 MCU에서 Arduino로 Uart 통신하는 방법에 대해서 알아보고자 한다. 사용하는 STM32 MCU는 Nucleo-411RE이고 Arduino는 Nano를 사용한다. Nucleo-411RE에 대한 자세한 설명은 블로그에 정리해두었으..rorsi.tistory.com에 이어서 이번에는 반대로 Arduino에서 STM32로 데이터를 전송해 본다. IDE 설정은 전과 똑같이 해주고 코드를 수정해준다.  /* USER CODE BEGIN WHILE */ uint8_t a; uint8_t b = 'B'; while (1) { if(HAL_UART_Receive(&huart1, &a, sizeof(a)..

    STM32 to Arduino

    이번에는 STM32 MCU에서 Arduino로 Uart 통신하는 방법에 대해서 알아보고자 한다.사용하는 STM32 MCU는 Nucleo-411RE이고 Arduino는 Nano를 사용한다. Nucleo-411RE에 대한 자세한 설명은 블로그에 정리해두었으니 확인하면 된다.https://rorsi.tistory.com/29 Nucleo-f411reSTM32 Nucleo MCU 의 최소 기능만으로 구성된 개발 보드로 ST사에서 제작한 개발 보드이다. 개발 측면에서는 대부분의 Port에 1:1로 매칭되도록 많은 확장핀을 할당하여 개발편의성을 확실히 제공해rorsi.tistory.com 우선 보드와 보드끼리 점퍼선을 이용하여 연결해준다.   Nucelo-F411RE 보드의 PA10(RX)와 Nano 보드의 D1(..

    SPI

    SPI SPI는 Serail Peripheral Interface Bus의 약어로 마이크로컨트롤러와 시프트 레지스터, 센서, SD 카드와 같은 소형 주변 장치 간에 데이터를 전송하는 데 일반적으로 사용되는 인터페이스 버스입니다. SPI 통신은 4개의 신호단자로 구성되어 있습니다. 신호단자 이름 다른 이름 설명 SCLK SCK, CLK Serial Clock MOSI SDI, DI, SI Master Output Slave Input MISO SDO, DO, SO Slave Output Master Input SS nCS, CS, nSS, STE, CE Slave Select, Chip Enable SCLK: 직렬 클럭 (마스터로부터의 출력) MOSI; SIMO: 마스터 출력, 슬레이브 입력 (마스터로부터..

    LoRa

    LoRa LoRa는 Long Range의 약어로서 Semtech에서 개발되었고 Semtech는 LoRa Alliance를 구성하여 글로벌 표준을 개발하였습니다. LoRa는 장거리에 걸쳐 소량의 데이터를 보낼 수 있는 장거리 저전력 무선 통신 시스템입니다. 이 두 가지 기능으로 인해 IoT 및 IIoT 산업 분야의 많이 사용되고 있습니다. LoRa는 FSK(Frequency Shifting Keying) 변조와 유사하지만 통신 범위를 크게 증가시키는 Chirp Spread Spectrum(CSS) 변조를 기반으로 합니다. Chirp Spread Spectrum Chirp은 'Compressed High Intensity Radar Pulse'의 줄임으로 기존에는 레이더 등 군사용으로 사용되었으나 LoRa가..

    B-L475E-IOT01A

    Discovery kit NUCLEO보다는 마이너하지만 그래도 많많찮은 저렴한 가격과 종류를 가지고 있다. 주로 녹색 PCB로 생산되며 NUCLEO와는 다르게 디버거 파트를 따로 잘라내기 힘들다. 다만 ST-LINK/DISCOVERY 변환 점퍼와 핀헤더는 NUCLEO와 동일하게 유지되고 있어서 ST-LINK로도 활용할 수 있다. NUCLEO는 보드 내장 주변장치가 상대적으로 빈약하여 사용자의 디바이스 추가 연결에 의존하는 비율이 높은데 비해 DISCOVERY 계열은 주변장치가 좀 더 많이 포함되고 별도 인터페이스 규격의 도터보드 형태로 확장할 수 있는 경우가 많다. 대신에 가격대도 NUCLEO보드들 보다 높은 편에 속한다. 마이크로컨트롤러 기능 STM32L475VGT6 in LQFP100 package ..

    Arduino nano 33 BLE - 개발환경 설정

    NANO 33 BLE는 AVR 기반인 기존 아두이노와 다르게 ARM 기반의 제어칩을 사용한다. 그렇기 때문에 컴파일 방법이 달라, 보드를 새로 설치하여야 한다. "툴" -> "보드" -> "보드 매니저..." 을 클릭하여 "nano 33"이라고 검색한 후 "Arduino Mbed OS Nano Boards"를 설치. 설치가 끝나면 "Arduino NANO 33 BLE" 가 보드 선택 창에 나타난다. 보드를 선택한 후 포트 역시 선택해 준다. 간단한 예제를 아두이노 나노 33 BLE에 업로드 해보자. IDE에서 파일 - 예제 - 01.Basics - Blink 예제를 사용합니다. 예제를 불러오고 아두이노에 업로드하여 동작을 확인합니다. 아두이노 나노 33 BLE에 'LED_BUILTIN'핀은 D13번 핀입..