STM32 MCU์์ FreeRTOS๋ฅผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ์์ธํ ์ค๋ช ํด ๋๋ฆฝ๋๋ค.
STM32CubeIDE๋ฅผ ์ด์ฉํ fw
STM32 FreeRTOS ๊ตฌํ
๋น์ ์ด ์ฐพ์ ํค๋งจ RTOS ๊ฐ์,
์ฌ๊ธฐ ์์ด์! ๐
์ ๋ MCU์์ ์ค๋ซ๋์ Non-OS Based Program์ ์ฌ์ฉํ์ต๋๋ค. ๊ทธ๋ฌ๋ MCU์ ์ฑ๋ฅ์ด ์ ๋ฐ์ดํธ๋๊ณ , OS์์ ์ ๊ณตํ๋ ๋ง์ Library๋ค์ ์ฌ์ฉํ๊ธฐ ์ํด OS Based Program์ด ํ์ํจ์ ๋๋ผ๊ฒ ๋์์ต๋๋ค.
๋ํ, RTOS๋ ๋ฐฐ์ฐ๊ณ ์ถ์ด๋ ๋ง๋ ํ ์๋ฃ๊ฐ ๋ง์ง ์์ต๋๋ค. RTOS ๊ด๋ จ ์๋ฃ๋ค์ ๋๋ถ๋ถ OS์ ๋ํ ๋ด์ฉ์ด ๋ง๊ณ ์. ๊ทธ๋ฌ๋ ์ค๋ฌด์์ ์ ์ฌ์ฉํ๋ ค๋ฉด, OS์ ๋ํ ๊น์ ์ง์๋ณด๋ค๋ ์ด๋ป๊ฒ RTOS๋ฅผ ์ฌ์ฉํด์ผ ํ๋์ง๊ฐ ๋ ์ค์ํฉ๋๋ค.
โ ์ ๊น! RTOS๋?
RTOS๋ Real-Time Operating System ์ฆ, ์ค์๊ฐ ์ด์ ์ฒด์ ๋ฅผ ๋งํด์. ์์ฉ ํ๋ก๊ทธ๋จ์ ์ฒ๋ฆฌ ์์ฒญ์ ์ ํด์ง ์๊ฐ ๋ด์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ๊ฒฐ๊ด๊ฐ์ ์์ธกํ ์ ์๊ณ , ์ผ์ ํ ์ฒ๋ฆฌ ์๊ฐ์ ์๊ตฌํ๋ ๊ณณ์ ์ฌ์ฉ๋ผ์.
๋ณธ ๊ฐ์๋ ์ ์ ๊ฐ์ด Non-OS์์ ํ๋ก๊ทธ๋จ์ ํด์๋ ๊ฐ๋ฐ์๋ค์ด OS Based์์ ํ๋ก๊ทธ๋จ์ ํ ์ ์๋๋ก ์น์ ํ๊ฒ ์ค๋ช ํด ์ฃผ๋ ์ ๋ฌธ์์ ๋๋ค. ST์ STM32์์ FreeRTOS๋ฅผ ๊ตฌํํ๋ ๋ด์ฉ์ ์์ธํ๊ฒ ์ค๋ช ํฉ๋๋ค. ๊ฐ์๋ฅผ ๋ฐ๋ผ๊ฐ๋ค ๋ณด๋ฉด ์์ฐ์ค๋ฝ๊ฒ OS Based Program์ ํ ์ ์์ ๊ฒ์ ๋๋ค.
ST์์ ๋ฌด๋ฃ๋ก ์ ๊ณตํ๋ ํด์ ์ฌ์ฉํ๋ฉด ๋๊ตฌ๋ FreeRTOS๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก๊ทธ๋จ์ ํ ์ ์์ต๋๋ค. ST์ MCU๋ฅผ ์ฒ์ ์ ํ๋ ๋ถ๋ค๋ ๊ฐ์ ๋ด์ฉ์ ์ต๋ํ๋ฉด ST์ MCU๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. FreeRTOS๋ฅผ ๊ฒฝํํด ๋ณด๊ณ ์ถ์ ๋ถ๋ค์๊ฒ ๋ง์ ๋์์ด ๋ ์ ์๊ธธ ๊ธฐ๋ํฉ๋๋ค. ๊ฐ์์์ ์ดํด๊ฐ ์ ๋๋ ๋ถ๋ถ์ ์ธํ๋ฐ ์ปค๋ฎค๋ํฐ ๋๋ ์ ๊ฐ ์ด์ํ๋ ์นดํ๋ฅผ ํตํ์ฌ ์ง๋ฌธ์ ์ฌ๋ ค์ฃผ์๋ฉด ๋ต๋ณํด ๋๋ฆฌ๋๋ก ํ๊ฒ ์ต๋๋ค.
๐ข ์๊ฐ ์ ๋ฐ๋์ ํ์ธํด์ฃผ์ธ์!
ST์ MCU์ ๊ด์ฌ ์๋ ๋ถ
RTOS๋ฅผ ๋ฐฐ์ฐ๊ณ ์ถ์ ๋ถ
C ์ธ์ด์ ๋ํ ์ดํด๊ฐ ์๋ ๋ถ
Q. ๊ฐ์๋ฅผ ๋ฃ๊ธฐ ์ํด ์ค๋นํด์ผ ํ ์ฌํญ์ด ์๋์?
๋ณธ ๊ฐ์๋ ์ค์ต๋ณด๋ NUCLEO-F411RE์์ ์งํ๋ฉ๋๋ค. ๋ง์ฝ ๋ณด๋๊ฐ ์ค๋น๋์ง ์์๋ค๋ฉด ๋จผ์ ๋ด์ฉ์ ๋ณด์๊ณ ๋์ค์ ๋ณด๋๋ฅผ ๊ตฌ์ ํด์ ๋ณด๋ ์์์ ํ์ธํด ๋ณด์๊ธธ ๋ฐ๋๋๋ค.
Q. ํ๋ก๊ทธ๋จ ํด์ ๋ฌด์์ ์ฌ์ฉํ๋์?
ST ์ฌ์์ ๋ฌด๋ฃ๋ก ์ ๊ณตํ๋ STMCubeIDE v1.9.0์ ์ฌ์ฉํฉ๋๋ค. ์๊ฐ ์ ์ ์ค์นํด ์ฃผ์๊ธธ ๋ฐ๋๋๋ค.
์ ๋ 20์ฌ ๋ ๋์ ๋๊ธฐ์ , ์ค์๊ธฐ์ ์์ ๊ฐ๋ฐ์๋ก ์ผํด์๊ณ ํ์ฌ๋ ์์ ๊ธฐ์ ์ ์ด์ํ๊ณ ์์ต๋๋ค. CCTV์ฉ ISP(Image Signal Processing) ASIC์ ๊ฐ๋ฐํ์๊ณ OLED ๊ฒ์ฌ ์ฅ๋น, DAQ (Data Acquisition System) ๋ฑ FPGA๋ฅผ ์ด์ฉํ ๋ง์ ์ ํ์ ๊ฐ๋ฐํ์์ต๋๋ค. FPGA๋ฟ๋ง ์๋๋ผ FW ๊ฐ๋ฐ (STM32, PIC32, AVR, ATMEGA ๋ฑ), ํ๋ก ์ค๊ณ, Windows Program ๋ฑ ๋ง์ ๊ฒฝํ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
ํ์ต ๋์์
๋๊ตฌ์ผ๊น์?
STM32๋ฅผ ๋ฐฐ์ฐ๊ณ ์ถ์ ๋ถ
RTOS๋ฅผ ๋ฐฐ์ฐ๊ณ ์ถ์ผ์ ๋ถ
์ ์ ์ง์,
ํ์ํ ๊น์?
C ์ธ์ด
1,518
๋ช
์๊ฐ์
55
๊ฐ
์๊ฐํ
119
๊ฐ
๋ต๋ณ
4.8
์
๊ฐ์ ํ์
17
๊ฐ
๊ฐ์
์ ๋ ์ง๋ 20์ฌ๋ ๋์ ๋๊ธฐ์ , ์ค์๊ธฐ์ ์์ ๊ฐ๋ฐ์๋ก ์ผํด์๊ณ
ํ์ฌ๋ ์์ ๊ธฐ์ ์ ๋ํ๋ก ์์ต๋๋ค.
์ฃผ์ ๊ฒฝ๋ ฅ์ฌํญ์
Verilog HDL์ ์ด์ฉํ FPGA ์ค๊ณ
CCTV์ฉ ISP ASIC ๊ฐ๋ฐ (์ฝ 10๋ )
OLED Display ๊ฒ์ฌ์ฅ๋น ๊ฐ๋ฐ (์ฝ 3๋ )
FPGA๋ฅผ ์ด์ฉํ ์ฅ๋น ๊ฐ๋ฐ
MCU FW
STM32
PIC32
AVR, ATMEGA
DSP (TI)
Windows Application Program
Visual Studio MFC, C++
์ ๋๋ค.
์ ์ฒด
53๊ฐ
ํด๋น ๊ฐ์์์ ์ ๊ณต: