전체 글 34

STM32CubeIDE에서 RTC 설정하고 UART와 printrf로 출력하기

STM32CubeIDE에서 RTC를 설정하고 UART protocol로 printrf로 10초마다 출력해 봤습니다.개발 환경 구성부터, ioc(input/output configuration)에서 GPIO 설정, GPIO부터 나오는 파형을 Logic Analyzer로 찍는 것을 다룹니다.제가 참고한 자료들의 링크를 첨부하니 참고하시길 바랍니다. 목차하드웨어 및 개발 환경RTC settingbuild and run 하드웨어 및 개발 환경2025.02.18 - [Electrical Study] - STM Project 사용된 하드웨어 및 개발 환경 STM Project 사용된 하드웨어 및 개발 환경개발 보드 : NUCLEO-F103RB (내돈내산)https://smartstore.naver.com/muwon..

Electrical Study 2025.02.21

STM32CubeIDE UART사용해 printf 출력 세팅 파헤치기

STM32CubeIDE UART 사용해 printf 출력하기에서 설정 및 코드에 대해 분석해 보겠습니다. 목차'PC13'을 'GPIO_EXTI13'으로 설정C printf 분석C Callback 함수 분석 'PC13'을 'GPIO_EXTI13'으로 설정2. 핀 설정 및 소스코드 생성하기에서  'PC13' 핀을 'GPIO_EXTI13'으로 설정합니다.그 이유는 Schematic 상 PC13과 Blue button이 연결되어 있기 때문입니다. C printf 분석UART를 통해 printf를 사용하기 위해서는 아래 코드가 "필수"입니다.// main.cint __io_putchar(int ch){ (void) HAL_UART_Transmit(&huart2, (uint8_t*) &ch, 1, 100);..

Electrical Study 2025.02.20

STM32CubeIDE UART 사용해 printf 출력하기

STM32CubeIDE에서 NUCLEO-F103RB 보드를 컨트롤해 printf를 출력해 봤습니다.개발 환경 구성부터, ioc(input/output configuration)에서 설정, Serial Port 출력 결과물을 다룹니다.제가 참고한 자료들의 링크를 첨부하니 참고하시길 바랍니다. 목차하드웨어 및 개발 환경UART ioc 설정Serial Port 출력 결과하드웨어 및 개발 환경STM Project 사용된 하드웨어 및 개발 환경 STM Project 사용된 하드웨어 및 개발 환경개발 보드 : NUCLEO-F103RB (내돈내산)https://smartstore.naver.com/muwonkorea/products/10807059000?nl-query=stm32+nucleo-64&nl-ts-pid=..

Electrical Study 2025.02.18

STM32CubeIDE에 NUCLEO-F103RB GPIO 출력 파형 찍어보기

STM32CubeIDE에서 NUCLEO-F103RB 보드를 컨트롤해 파형을 출력하고 해당 파형을 찍어봤습니다.STM32CubeIDE을 이용한 개발 환경 구성부터, ioc(input/output configuration)에서 GPIO 설정, GPIO부터 나오는 파형을 Logic Analyzer로 찍는 것을 다룹니다.제가 참고한 자료들의 링크를 첨부하니 참고하시길 바랍니다. 목차하드웨어 및 개발 환경LED ControlGPIO Control로 파형 찍기하드웨어 및 개발 환경STM Project 사용된 하드웨어 및 개발 환경LED Control환경을 구성하면 맨 처음 [project 이름].ico에서 아래와 같은 화면이 나옵니다.PA5에 LD2 [Green Led]가 있습니다. schematic을 보면 PA5..

Electrical Study 2025.02.18

STM Project 사용된 하드웨어 및 개발 환경

개발 보드 : NUCLEO-F103RB(18820원) (내돈내산)https://smartstore.naver.com/muwonkorea/products/10807059000?nl-query=stm32+nucleo-64&nl-ts-pid=iI2r6wqVN8oss6q76kGssssstUw-516721&NaPm=ct%3Dm732kqqo%7Cci%3Dd457cba2010db1ab1f95e32278f0c7d6b24d79ad%7Ctr%3Dsls%7Csn%3D6501526%7Chk%3Da44192bd56bf3780ce46dc56eca5f826f390ba3f [정품] ST NUCLEO-F103RB STM32 Nucleo-64 개발 보드 : 무원전자[무원전자] 모든 전자부품을 취급하는 전자부품 쇼핑몰 무원전자입니다.sm..

Electrical Study 2025.02.18

SystemVerilog 훑어보기

안녕하세요,UVM Testbench 작성 - WikiDocs 내용을 바탕으로 SystemVerilog에 대해 간단하게 정리해보았습니다. Verilog는 많이 접해볼 수 있는데 SystemVerilog는 자료 찾기가 상대적으로 좀 힘들었던 것 같습니다.이제 가볍게 훑어보면서 위키독스를 격파하도록 하겠습니다.반도체 칩 구조가 점차 복잡해지면서 검증의 중요성과 비중 또한 높아지고 있습니다.아래 그림은 SoC의 블록 다이어그램인데 이렇게 하나의 칩 내부는 여러 블록으로 구성되어 있습니다.이 블록을 모듈 또는 IP(Intellectual Property, 이하 IP)라고 합니다.과거에는 반도체 회사들이 IP를 직접 설계했지만, 이제는 IP 설계 업체로부터 검증된 IP를 구매해 칩을 설계합니다.IP를 직접 설계하는..

RS Latch과 Level Trigger(레벨 트리거)를 포함해 한 번에 제대로 설명한 Edge Trigger(에지 트리거)의 동작 원리

안녕하세요, 이 글을 보러 오시는 분들은 대부분 Edge Trigger와 Level Triger의 차이를 알고 싶으실 것입니다.먼저 Edge Trigger와 Level Trigger 차이를 보고, Edge Trigger의 동작 원리를 보겠습니다.  Edge Trigger는 Clock Pulse가 Rising or Falling Edge에서'만' Data를 캡처하고,Level Trigger는 Clock Pulse가 High or Low에서만 Data를 캡처합니다.Clock Pulse가 Rising or Falling Edge인 시간이 High or Low 되는 시간보다 짧기에 Datat를 잘 캡처할 수 있습니다.즉, High or Low인 시간은 상대적으로 길기에 중간에 상태가 변화할 수도 있어 Data ..

Electrical Study 2023.12.29

제일 쉽게 I2C를 알아보자

안녕하세요 이번 글에서는 I2C에 대해서 아주 쉽게 알아보겠습니다.현재 이 부분의 칩설계를 담당하고 있는데 인터넷 검색해 보니 버스, 프로세서, 프로토콜 등등 단어로 쉽게 와닿지 않았습니다. 처음 I2C를 보시는 분들이 쉽게 이해할 수 있도록 용어를 쉽게 풀어서 쓰겠습니다.I2C는 Inter-Integrated Circuit입니다. 부르다 보니 줄여서 I2C라고 불립니다.원래의 Inter-Intergated에서 유추할 수 있듯 integrated Circuit(이하 IC) 사이의 통신 프로토콜입니다.여기서 통신 프로토콜이란 약속이란 뜻입니다. 즉,  통신하기 위해서는 IC 사이에 데이터를 주고받는데 이 데이터를 읽고 쓰기 위해서 정한 약속입니다. 실제 I2C가 데이터를 주고받을 때는 (standard m..

Electrical Study 2023.11.20

수동 소자 R, L, C에서 C와 L의 전압, 전류 특성 알아보기

안녕하세요, 이번 글에서는 C(Capacitor)와 L(Inductor)의 전압 전류 특성을 알아보겠습니다. 먼저 C에 대해 알아보겠습니다.아래와 같은 Pspice 회로에서 전압과 전류를 측정해 보겠습니다.V1 양 단의 전압 그래프와 C1 양 단의 전압 그래프입니다.입력 전압이 급격히 변할 때, 출력 전압은 그 변화를 느리게 합니다. 현재 C1은 1u(F)인데 이 값이 클수록 전압의 변화를 더 느리게 합니다. 2uF 변경한 시뮬레이션 결과입니다.출력 전압이 입력 전압의 반응을 따라가지 못해 5V에 도달하지 못합니다. 이제 전류 특성을 알아보겠습니다.전압의 변화량에 의해 전류의 세기가 결정됩니다. 아래의 식에 의한 결과입니다.그러므로 C1이 2uF인 회로는 전압 변화가 느리므로 이로 인한 전류의 크기도 작..

Electrical Study 2023.10.03

Verilog HDL로 asynchronous control 구문 작성과 테스트 벤치(Test Bench)로 결과 확인하기

안녕하세요, 이번 글에서는 Verilog HDL로 asynchronous control 구현 및 그 결과를 테스트 벤치(Test Bench)로 확인하겠습니다. 환경 HDL : Verilog’ 2001 spec RTL Synthesis : Intel(Altera), Quartus prime 18.1 Functional Simulation : Intel(Altera), ModelSim 10.5b Quatus의 [File] → [New]에서 Verilog HDL File을 선택합니다. asynchronous control을 구현했습니다. module counter( inputclk, input aclr_n, output reg count_out ); always @ (posedge clk, negedge ac..