이번 시간에는 Microcontroller unit(줄여서 mcu)가 들어간 개발보드를 제작하는 방법에 대해서 소개하겠습니다.

 

보통 개발보드라고 하면 mcu가 포함이 되어 있어서, 어떤 입력 신호를 어떻게 처리하여 출력하는 firmware가 내장된 회로를 말합니다. 여기서 firmware는 제작자가 직접 개발환경을 이용해서 작성한 코드를 말하며, STM32와 같은 mcu를 사용할 경우, 전용 개발환경인 STMCubeIDE(https://www.st.com/en/development-tools/stm32cubeide.html)

같은 것을 설치하여 C언어로 작성합니다. firmware 작성이 다 되었으면 usb 선을 통해서 개발보드에 다운로드하여 보드를 동작합니다.

 

입력과 출력은 제작자가 원하는 대로 선택할 수 있습니다. 가장 간단하게는 디지털 입력(0또는 1)에서 부터 아날로그 입력(전압, 보통 0 ~ 5 V사이 혹은 0 ~ 3.3V사이)이거나 좀 더 복잡하게는 I2C, SPI와 같은 통신 규격을 이용하기도 합니다. I2C의 경우는 디지털로 출력하는 센서 등에서 사용하는 규격입니다.

 

유튜브에는 다양한 개발보드 제작 강의가 있는데 그 중 제가 선택하여 배운 것은 아래의 동영상입니다. 이 동영상은 Phil's Lab이라는 유튜브 채널에서 올린 것인데요, STM32라는 mcu를 포함하는 개발보드 제작에 관한 영상입니다.

 

KiCad STM32 + USB + Buck Converter PCB Design and JLCPCB Assembly (Update) - Phil's Lab #11

https://www.youtube.com/watch?v=C7-8nUU6e3E&list=PL-eoiE4G_DA7a8Fubnn4zBhd4_ik25HWU&index=187&t=7399s

 
 

동영상은 약 2시간반 정도로 상당히 길며, 초심자의 경우 동영상의 강의를 그대로 따라해서 배우면 됩니다. 사용한 pcb 개발을 위해서 사용한 소프트웨어는 KiCAD라는 무료 프로그램이며 동영상에서는 KiCAD7을 사용하였으나 현재 KiCAD의 버전은 9입니다.

 

동영상의 내용은 회로도(schematic)작성, pcb 배선(routing), 부품선정, 제작 등의 순서로 이어지며, 제작은 JLCPCB라는 pcb전문 제작업체에 맡깁니다. (JLCPCB 외주 제작방법에 대해서 다른 시간에 따로 설명하겠습니다.)

 

아래의 동영상은 역시 같은 채널의 동영상으로 STM32의 firmware 작성에 대해서 좀더 자세히 다루고 있습니다.

 

STM32 Programming Tutorial for Custom Hardware | SWD, PWM, USB, SPI - Phil's Lab #13

https://www.youtube.com/watch?v=x_5rYfAyqq0&list=PL-eoiE4G_DA7a8Fubnn4zBhd4_ik25HWU&index=183

 

이 외에도 다양한 주제에 대해서 많은 동영상이 있으니 아래의 채널에 한번 들려보시기 바랍니다.

https://www.youtube.com/@PhilsLab/videos

또한 저자인 Phil은 udemy와 fedevel에도 강의를 올려두었습니다.

https://www.udemy.com/course/learn-kicad-v6-and-stm32-hardware-design/learn/lecture/30606692?start=120#overview

 

 

+ Recent posts