Embedded/STM32 5

[STM32] RCC 설정용 구조체 및 구동 함수

RCC 설정용 구조체 함수 명 설명 RCC_ClkInitTypeDef 클럭의 초기 설정용 구조체 [DataType] uint32_t ClockType : 설정할 클럭, 이 파라미터는RCC_System_Clock_Type 중의 값 이어야 함 uint32_t SYSCLKSource : 시스템 클럭으로 사용하는 소스, RCC_System_Clock_Source 중의 값 이어야 함 uint32_t AHBCLKVivider : AHB 클럭의 디바이더. RCC_AHB_Clock_Source 중의 값이어야 하고 AHB클럭은 시스템 클럭에 의해 동작됨 uint32_t APB1CLKDivider : APB1 클럭의 디바이더. RCC_APB1_APB2_Clock_Source 중의 값이어야 하고 APB1 클럭은 AHB 클럭..

Embedded/STM32 2022.11.12

[STM32] Timer

타이머(Timer)란 타이머란 임의의 주기를 갖는 신호를 측정하거나 생성할 때 사용되는 디지털 회로를 말한다. 특정 주기마다 이벤트를 발생시키거나, 외부에서 들어온 신호의 길이를 측정할 때 사용한다. 또 PWM과 같은 파형을 생성하여 출력으로 보낼 때도 사용된다. MCU에서 GPIO, 통신 모듈과 더불어 자주 사용되는 모듈 중 하나이다. 대표적인 타이머 타이머는 대표적으로 4가지가 있다. 범용(General-Purpose) 타이머 출력 비교, 원펄스 입력캡쳐, 센서 인터페이스(엔코더, 홀 센서 등) 등의 용도로 사용할 수 있는 범용 기능을 가지는 타이머 ​ 고급(Advanced) 타이머 범용 타이머보다 더 많은 기능을 가지는 타이머, 주로 모터 제어와 디지털 파워 변환(Power Conversion) 용..

Embedded/STM32 2022.11.12

[STM32] ADC(Analog Digital Converter)

ADC(Analog Digital Converter)란 ADC란 뜻 그대로 아날로그를 디지털 컨버터로 변환하는 과정이다. 외부에서의 센서 값, 엔코더 등 아날로그 적인 신호를 받아 MCU 내부에서 디지털로 변환 후 처리하는 작업이다. ADC의 모드 1. 단일(Single) 변환 모드 단일 변환 모드에서 AD 변환기는 변환을 1번만 수행한다. ADC_CR2 레지스터의 CONT 비트를 0으로 두면 단일 변환 모드로 설정된다. ADC_CR2 레지스터의 ADON 비트가 설정되거나 또는 외부 트리거 입력이 인가되면 변환이 시작된다. 2. 연속(Continuous) 모드 연속 변환 모드에서 AD 변환기는 하나의 변환이 완료되면 바로 다음의 변환을 시작한다. 레지스터의 CONT 비트를 1로 두면 연속 변환 모드로 설..

Embedded/STM32 2022.11.12

[STM32] DAC(Digital Analog Convertor)

DAC(Digital Analog Convertor)란 이름 그대로 디지털을 아날로그로 변환하는 과정이다. 쉽게 생각해서 ADC에 반대로 생각할 수 있다. DAC 변환 과정 APB1_CLK에 맞게 DHRx(DAC Holding Register) 와 DORx(DAC Output Register)가 로딩된다. DAC_DORx에 직접 데이터를 로딩 하는 것은 허용되지 않으며, DAC_DHRx 레지스터(DHR8x, DHR12Lx, DHR8D, DHR12LD 또는 DAC_DHR12LD)를 통해 로딩해야 한다. DAC_DHRx 레지스터에 로드된 데이터는 1개의 ABP1 클럭 사이클 후 DAC_DORx 레지스터로 전송되고 데이터가 DAC_DORx 레지스터에 로드되면 DA변환이 시작되고, t(SETTING) 시간 후 ..

Embedded/STM32 2022.11.12

[STM32] UART, USART

UART(Universal Asychronous Receiver/Transmitter)란 데이터를 직렬, 또는 병렬로 변환시켜주는 범용 비동기 수신기로 두 장치 사이에 데이터가 전송될 때 수신부의 클럭에 동기되지 않는 방식 USART(Universal Synchronous and Asychonous Receiver/Transmitter) 비동기 뿐만 아니라 동기 통신도 가능한 범용 동기/비동기 수신기로 두 장치 사이에 데이터가 전송될 때 수신부의 클럭이 송신부의 클럭에 동기되는 방식임. 동기를 위해서 별도의 클럭 단자를 이용해서 송신부의 클럭을 수신부에 공급하는 방법을 많이 사용함 ​ 통신 방식 통신에 사용되는 라인의 수를 기준으로 구분하면 직렬 통신과 병렬 통신으로 나눌 수 있다. 렬 통신은 1개의 라..

Embedded/STM32 2022.11.12