본문 바로가기

stm3213

[Harman 세미콘 아카데미] 38일차 - ARM & RTOS 활용(ADC, Interrupt, Timer) [ADC 활용] ADC Parameter Setting 하나의 채널 사용 시에는 별도의 세팅이 필요없지만, 여러 개의 채널을 사용할 때는 Parameter setting에 신경을 좀 써줘야 한다. Clock Configuration Clock Prescaler 84MHz ÷ 4분주 = 21MHz Resolution 15 cycle = 약 0.8ms [Interrupt] ADC Interrupt 순차적으로 잘 작동되고 있는 Flow 중에 어떠한 돌발 상황이 발생하여 다른 작업이 실행될 때, 여기서 돌발 상황이 바로 Interrupt Interrupt가 발생하면, 이전까지의 작업은 저장되고 Holding(일시정지)되며 ISR을 수행한 뒤 다시 원래 작업으로 복귀한다. - ISR(Interrupt Servic.. 2023. 8. 18.
[Harman 세미콘 아카데미] 37일차 - ARM & RTOS 활용(UART & ADC 활용) [UART] UART : 비동기 직렬 통신 과거에는 속도가 1,200 bps(≒baudrate)정도였기에, k(10^3 ≒ 2^10), M(10^6 ≒ 2^20), G(10^9 ≒ 2^30), T(10^12 ≒ 2^40), P(10^15 ≒ 2^50) m(mili), u(micro), n(nano), p(pico) 와 같이 데이터 크기를 상세하게 구분하여 관리하였다. UART 관련 내용 참조 https://rangvest.tistory.com/entry/Harman-%EC%84%B8%EB%AF%B8%EC%BD%98-%EC%95%84%EC%B9%B4%EB%8D%B0%EB%AF%B8-28%EC%9D%BC%EC%B0%A8-ATmege128UART-%ED%86%B5%EC%8B%A0-Realtime-clock [.. 2023. 8. 17.
[Harman 세미콘 아카데미] 36일차 - ARM & RTOS 활용(STM32 Review, LED 실습) [Review] 통신 방식 Parallel(병렬) - 대용량, 속도 빠름 - 데이터의 크기에 맞춰서 여러 개의 wire가 필요하다. - 무선일 경우, 또 다른 문제가 발생한다. - Mainboard 상에 존재하는 bus(Address bus, Data bus, 가장 대표적인 상태) - STM32 : 시스템을 구성하는 데이터가 32bit Serial(직렬) - 하나의 wire를 통해 데이터를 전송(Tx : Transmit, Rx : Receive) - Sync, Async 의 두 가지 방식으로 나뉜다.(Sync : SPI) - Sync 방식은 동기 신호가 Define되어 있던지, 따로 준비가 되어 있어야 하므로 범용성이 떨어짐. - Async : clock이 따로 필요없음. 단, 서로 속도(Baud Rat.. 2023. 8. 16.
[Harman 세미콘 아카데미] 30일차 - STM32(LED_Extern, Switch_Extern, UART) [LED_Extern] LD1 : 통신에 관련된 LED LD3 : 전원이 연결되면 해당 LED On(Red) [Switch_Extern] while (1) { /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ int i = HAL_GPIO_ReadPin(B1_GPIO_Port, B1_Pin); int j = HAL_GPIO_ReadPin(Switch_Extern_GPIO_Port, Switch_Extern_Pin); if((i == 0) || (j == 1)) { // Extern LED Green HAL_GPIO_WritePin(LED_Extern_Green_GPIO_Port, LED_Extern_Green_Pin, 1); HAL_Delay(200); HAL_GP.. 2023. 7. 28.