# STM32

90개의 포스트
post-thumbnail

STM32 serial communication on ubuntu

stm32 serial communication on Ubuntu( 우분투에서 USB 인식하게 만들기 ) w STM32F103C8T6

2023년 10월 27일
·
0개의 댓글
·
post-thumbnail

[stm32] ADC multi channel 값 읽기 (DMA 방식 이용)

ioc 파일에서 설정 해야된다.각 보드의 데이터 시트를 살펴보면 ADC을 연결할 핀이 나올 것이다. 나의 경우, PA4-5에 ADC을 연결해야 했다.이런 식으로, PA4-5의 우클릭을 해보면, ADC에 설정이 있는 것을 볼 수 있다.이렇게, 핀에 ADC IN4-IN5로

2023년 5월 18일
·
0개의 댓글
·
post-thumbnail

UART 통신

범용 비동기화 송수신기이며 Serial(직렬) 통신의 일종임. 일반적으로 RS-232, RS-422, RS-485 통신 프로토콜과 함께 사용함.비동기 통신이므로 동기 신호가 전달되지 않아 수신 쪽에서 동기신호를 찾아내 데이터의 시작과 끝을 시간적으로 알아 처리할 수 있

2023년 4월 19일
·
0개의 댓글
·
post-thumbnail

STM32 main함수 실행하기전 까지의 동작정리 (개인 보관 공부용)

MCU에 전원이 인가되면 Flash Memory에서 Stack Pointer를 초기화한다. Stack Pointer는 특정 값들을 임시저장을 위한 용도로 사용되는데, C 언어에서 파라메터를 넘기거나 함수안에 정의된 로컬변수들을 사용할 때 이용하므로 Stack Point

2023년 4월 18일
·
0개의 댓글
·
post-thumbnail

STM32 개인 공부 정리용

Volatile 사용 이유 컴파일러가 최적화하는 것을 방지하기 위해 사용함. ex) 0x03번지가 GPIO 핀 중 하나고 LED를 제어한다고할 때 Volatile을 사용하지 않으면 컴파일러가 최적화를 해버려서 LED ON 신호는 무시해버린다. >- 내가 원하

2023년 4월 18일
·
0개의 댓글
·
post-thumbnail

STM32 GPIO

IO 포트 설명 GPIO 핀 설정 항목 Push-Pull BJT 회로에서 2개의 TR Base에 모두 0V를 인가하면 위의 PNP TR만 ON이되어 Output 쪽으로는 3.3V가 흐른다. 반대로 2개의 TR Base에 모두 3.3V를 인가하면 아래 TR만 ON이되

2023년 4월 17일
·
0개의 댓글
·
post-thumbnail

STM32 USB CDC

STM32 USB포트를 이용해서 UART 통신을 하기 위해서는 아래와 같이 OTG_FS 포트를 사용한다.필요한 포트는 OTG_FS_DP/DM으로써 USB 포트를 통해 데이터를 송수신하는데 사용된다.USB_PU는 GPIO 중 하나를 사용하면 된다. PC에서 해당 디바이스

2023년 4월 4일
·
0개의 댓글
·
post-thumbnail

STM32를 활용한 스마트 팜 만들기

STM32를 활용한 스마트 팜 간단하게 만들기 (1)

2023년 1월 9일
·
0개의 댓글
·
post-thumbnail

stm32F407x의 클럭 (stm32 공부)

stm32F407x의 클럭 소스3개의 다른 클럭 소스가 있음1.HSE 오실레이터 (크리스탈 오실레이터) - MCU 외장, 주로 사용됨, 8MHz \- HSE는 크리스탈이나 외부 소스를 통해서 MCU에 제공될 수 있다. \- 디스커버리 보드는 온보드 크리스탈에 의해 8M

2022년 12월 23일
·
0개의 댓글
·
post-thumbnail

stm32f4 디스커버리 보드 내장 LED 켜기

stm32f4 디스커버리 보드를 사용해서 내장 led를 켜보기 위해서는 설정해야 할 레지스터가 많다.AHB1 활성화 레지스터데이터시트에 따르면 GPIOA ~ GPIOI 포트까지는 AHB1로 연결되므로 메모리 맵의 RCC에 해당하는 주소인 0x40023800를 찾고AHB

2022년 12월 13일
·
0개의 댓글
·
post-thumbnail

[STM32] USART CLI (4)

asdf

2022년 11월 24일
·
0개의 댓글
·

STM32 내장부트로더 (GUI 설계)

출처 : 땜스 전자연구소이 프로젝트에서 가장 어려운 점은 데이터를 갈무리 하며 serial로 write 하는 것이라고 생각한다.그 외에 것들은 UART통신 프로토콜을 이해한 후에 명령어들의 송수신을 파악하면 되지만 데이터를 갈무리 하기 위해서는 문자열로 된 HEX파일을

2022년 11월 7일
·
0개의 댓글
·
post-thumbnail

STM32 내장부트로더 GUI 설계

출처: '땜스 전자연구소' 블로그아직 미완성이긴 하지만 땜스 전자연구소에서 설명한대로 GUI 설계를 해보았다.코드가 완전히 이해되진 않아서 어느정도 수정도 하긴 하였다.위 사진은 Visual studio 프로그램을 이용해 GUI 디자인을 설계한 것이다.아직 완성본은 아

2022년 10월 21일
·
0개의 댓글
·
post-thumbnail

[STM32] Ethernet 통신

참고영상이 실습은 위의 링크를 보고 실습을 진행한 내용을 정리해보았다.MCU 모델 : STM32F429ZIT6U보드 : NUCLEO-F429ZI최초에 프로젝트를 생성하게 되면 MCU Selector 화면이 나온다.이때, MCU selector로 진행할 경우 STM32

2022년 10월 17일
·
0개의 댓글
·

STM32 내장부트로더 개발계획

나는 STM32F429I-DISC1 보드를 통해 내장부트로더를 이용하여 펌웨어를 다운해 보려고 한다. 내장부트로더를 사용하는 목적은 외부 시리얼 통신으로 디버거 없이 펌웨어를 다운로드 하기 위해서이다. 개발하기 위해서 첫째로 부트로더를 활성화 시킬 경우 부트로더

2022년 9월 29일
·
0개의 댓글
·
post-thumbnail

STM32+CLion 사용

MacOS 에서 STM32+CLion 사용을 위한 작업ST 홈페이지에서 MacOS용 최신버전을 받아서 설치하면 된다.MacOS에서 CLion+STM32를 사용하기 위해서는 toolchain과 openocd 가 설치되어 있어야한다. Toolchain은 STM32 소스코드

2022년 9월 6일
·
0개의 댓글
·
post-thumbnail

STM32-PWM

배경지식 PWM에서는 Capture Compare Register가 추가된다. 줄여서 CC 레지스터라고 하는데, 이 레지스터는 0부터 Period사이의 값을 갖는다. > $0 <= CC register <= period <= 2^{16} - 1$ 라고 정리해볼 수 있을 것 같다. CC 레지스터의 역할은 Duty 비를 조절하는데 쓰인다. ![](http...

2022년 8월 30일
·
0개의 댓글
·
post-thumbnail

stm32 pwm 주기 이용하여 LED 제어

pwm 주기를 이용하여 LED를 제어해보겠다.PC6은 LED가 있는 PIN이고 data sheet를 보면 TIM3_CH1이 있는데 이것은 PWM을 사용할 수 있는 타이머 채널이므로 이것을 설정해주겠다.위와 같이 설정해주겠다. 주파수는 1khz로 설정해주었다. 이것에 관

2022년 8월 30일
·
0개의 댓글
·
post-thumbnail

STM32-TIM_Interrupt_2

구현(실습) > TIM7을 Activated를 check한다. > 값을 지정해줄 때, -1을 해준다. Code generation 을 진행하면 >main함수 내부에 위의 함수가 사용되고 있다. > 함수 내부를 보면 지정해주었던 Prescaler값과 Period

2022년 8월 30일
·
0개의 댓글
·
post-thumbnail

stm32 타이머 인터럽트

stm32를 이용하여 타이머인터럽트 실습을 통해 LED를 제어해보겠다.data sheet를 보면 타이머 6과 7이 basic 타이머이므로 둘 중 하나를 사용해줄 건데 나는 타이머7을 이용할 것이다.타이거7을 activated 해주고 global interrupt를 en

2022년 8월 29일
·
0개의 댓글
·