본문 바로가기

프로젝트 기록/23SEMA_Control_STM3247

[STM32 CUBE IDE] 프로젝트에 라이브러리 파일 추가하기 방법은 2가지가 있다. 1) Src폴더에 .c파일을 추가하고, Inc폴더에 .h파일을 넣고 refresh해주는 방법, 2) 그리고 Library폴더에 따로 해당 라이브러리 폴더를 만들어 인식하도록 해주는 방법 이 2가지를 모두 해보겠다. 1) Src폴더에 .c파일을 추가하고, Inc폴더에 .h파일을 넣고 refresh해주는 방법 1. 라이브러리 파일을 다운 받는다. 보통 .c파일, .h파일로 이루어져 있다. 2. .c는 CUBE IDE프로그램에서 프로젝트명>Core>Src .h는 프로젝트명> Core > Inc 에 넣어준다. 그럼 위 창이 뜨게 되는데, Copy files를 해주면 된다. 그리고 프로젝트를 Refresh해준다. 그럼 추가 끝~ 2) 그리고 Library폴더에 따로 해당 라이브러리 폴더를 .. 2023. 1. 10.
[LoRa] 1편. 통신을 위한 준비 [1편. 통신을 위한 준비] 0단계. 실습 배경 완성된 코드는 있지만, 한번에 돌리면 안 될 확률이 높다. 작년 선배들이 실전에 썼던 코드는 동작을 하는지 확인도 못 했다. 따라서 line by line으로 내가 코드를 이해하며 따라해 보는 과정이 필요하다. - LoRa_Init()으로 로라를 세팅하고, - 보낼 배열 Tx_information[20] = {0,} 을 만든다 - 배열의 값을 변화시키며 값이 변화하는지 Teraterm, STM Studio로 확인하고 - Rx측의 코드에서 수신받는 배열의 값도 변화시키고 Teraterm으로 확인해본 다음 (변화시키는 방식은 teraterm 입력으로 UART 통신을 먼저 해볼 생각이다.) - 마지막으로 두 보드를 따로 연결할 생각이다. 클럭 설정은 아래와 같이.. 2023. 1. 10.
[STM32제어] ADC Interrupt+DMA로 받아오기 보호되어 있는 글 입니다. 2023. 1. 9.
[LoRa]1- 모듈, SPI인터페이스 이번 대회의 로라 목표 - LoRa 통신 이용 및 통신 지연 시간 줄이기 0) 로라를 사용할 장소의 특성 https://www.makethefuture.shell/en-gb 우리 대회는 7월 4~9일, 인도네시아 Lombok에서 열린다. 보통 7월 인도네시아의 날씨는 최저 24°C, 최고 33°C라고 한다. 습도는 1) 로라 모듈 특성 - 작동 온도는 -30~85°C인데, 밀폐된 차에 오래 있지만 않는다면, 즉 공기 순환이 어느정도 있다면 동작 가능할 것이다. - 주파수 범위는 410~525MHz인데, 433MHz를 사용할 것이다. 주파수가 높아지면 통신 속도는 높아지지만, 회절이 덜 일어나 통신 가능 거리가 줄어든다. - SPI Interface를 이용한다. - 안테나 방식은 IPEX이다. 우리가 구매.. 2023. 1. 9.
[STM32] STM Studio 사용법 STM Studio란, 실시간으로 NUCLEO 보드에 업로드 되어 있는 변수의 변화를 볼 수 있는 프로그램이다. 원래 나는 CLCD로 값을 일일히 프린트 해서 보거나, UART통신으로 Transmit해서 테라텀 프로그램으로 변수를 일일히 확인했었는데, 이 프로그램을 이용해보고자 한다. 0. 프로그램 다운로드 https://www.st.com/en/development-tools/stm-studio-stm32.html 위 사이트에 들어가서 좀 내리면 이런 화면이 있는데, Get latest를 눌러서 최신 버전을 다운받고 설치하자. 1. 파일 열기 위 경로로 들어가서 원하는 프로젝트 elf파일 선택 2. 값 확인하고자 하는 변수 선택 필요 변수 선택 후 Import 누르기 그리고 close로 창 닫기 여러 .. 2023. 1. 9.
[Timer] 스톱워치 만들기 0) 요약 1. 최종 목표: TIM3을 이용해서 스톱워치를 만들기. 2. 기능: - 버튼 짧게 누르면 스톱워치 시작 - 버튼 짧게 누르면 일시정지 - 버튼 길게 누르면 초기화 +구간기록 등 필요한가? 1) 1초 주기로 LED(LD2, PA5) toggle시키기 클럭 설정은 아래와 같이 하였음. 보드에 붙어있는 crystal oscillator 로 LSE, HSE를 모두 사용. PLLM은 /8, 180, /2로 많이 사용한다고 해서 그렇게 세팅하였고 APB1를 사용하는 타이머는 45MHz, (2~7, 12~14) APB2를 사용하는 타이머는 90MHz로 동작하게 될 것임 auto-reload = 반복적인 인터럽트 발생하도록. 타이머 타운터가 Counter Period값과 일치하면 인터럽트 발생하도록 처리 .. 2023. 1. 8.