¸Ó¸®¸»
ÇÊÀÚ´Â (ÁÖ)LGÁ¤º¸Åë½Å Áß¾Ó¿¬±¸¼Ò¿¡¼ Åë½ÅÀåºñ¸¦ °³¹ßÇÏ¿´°í, ÇöÀç´Â ´ëÇп¡¼ Çлýµé¿¡°Ô ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼ °ü·Ã ±³°ú¸ñÀ» °ÀÇÇÏ°í ÀÖ½À´Ï´Ù. ±×·¯´ø Áß ÇлýµéÀÌ »ê¾÷ü¿¡¼ »ç¿ëÇÏ´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼¸¦ Çб³¿¡¼ ¹è¿ì°í Á¹¾÷ ÈÄ¿¡µµ °ü·Ã ¾÷¹«¿¡ Àû¿ëÇÏ´Â µ¥ µµ¿òÀÌ µÇ¾úÀ¸¸é ÇÏ¿´°í, ÀÌ¿¡ µû¶ó Cortex-M4 ÇÁ·Î¼¼¼¸¦ ±âÃʺÎÅÍ ÀÀ¿ë±îÁö Àû¿ëÇÒ ¼ö ÀÖ´Â º» ±³À縦 ÁýÇÊÇÏ°Ô µÇ¾ú½À´Ï´Ù.
º» ±³Àç Áß ±âÃÊ ºÎºÐ¿¡¼´Â STM32F411À» »ç¿ëÇÏ¿© Á¦ÀÛÇÑ NUCLEO-F411 º¸µå¿Í °ü·ÃµÈ Á¤º¸, µå¶óÀ̹ö(GPIO, USART, ADC, I2C µî)À» ÀÌ¿ëÇÑ ±âº» ½Ç½ÀÀ» ¼³¸íÇÏ¿´½À´Ï´Ù. ÀÀ¿ë ºÎºÐ¿¡¼´Â ÀÚÀÌ·Î&°¡¼Óµµ ¼¾¼¸¦ ÀÌ¿ëÇÑ À§Ä¡ÃøÁ¤°ú FreeRTOS ±×¸®°í ÃÖ±Ù ÇÖÀ̽´ÀÎ X-Cube-AI¸¦ ÀÌ¿ëÇÑ Àΰø½Å°æ¸Á±îÁö ½Ç½ÀÇÒ ¼ö ÀÖµµ·Ï ÇÏ¿´½À´Ï´Ù.
½ÃÁß¿¡ ÀÖ´Â ´Ù¸¥ Cortex MCU °ü·Ã ±³ÀçµéÀº ±³Àç ½Ç½ÀÀ» À§ÇØ ºñ½Ñ Àü¿ë º¸µå¸¦ ±¸¸ÅÇØ¾ß ÇÏÁö¸¸, º» ±³Àç¿¡¼´Â NUCLEO-F411 º¸µå¿Í ±âŸ ÀüÀÚºÎÇ°¸¸ »ç¿ëÇÏ¿© Á÷Á¢ Çϵå¿þ¾î¸¦ ±¸¼ºÇÏ°í µ¿ÀÛ½ÃÄÑ º¼ ¼ö ÀÖµµ·Ï ÇÏ¿´½À´Ï´Ù. ¶ÇÇÑ ±³ÀçÀÇ Àüü ³»¿ëÀ» ÇнÀ ¶Ç´Â º¹½ÀÇÒ ¼ö ÀÖµµ·Ï YouTube(https://www.youtube.com/@Cortex-M4-mspark)¸¦ ÅëÇØ °ü·Ã ÀڷḦ Á¦°øÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù.
º» ±³Àç°¡ ÇнÀÇÏ´Â ¸ðµç µ¶ÀÚ ºÐµé²² ¸¹Àº µµ¿òÀÌ µÇ±â¸¦ ¼Ò¸ÁÇÕ´Ï´Ù.
2023³â 7¿ù
ÀúÀÚ ¾¸
¸ñÂ÷
Á¦1Àå STM32 ½Ç½Àº¸µå ÀÌÇØÇϱâ
1.1 STM32F411RET6 ÀÌÇØÇϱâ
1.2 NUCLEO-F411RE º¸µå ¼³¸í
Á¦2Àå °³¹ßȯ°æ ±¸Ãà
2.1 STM32CubeIDE ¼³Ä¡Çϱâ
2.2 STM32CubeIDE ½ÇÇàÇϱâ
2.3 STM32CubeIDE ¾÷µ¥ÀÌÆ®Çϱâ
Á¦3Àå GPIO ½Ç½À
3.1 NUCLEO-F411RE º¸µå¸¦ »ç¿ëÇÑ GPIO Ãâ·Â ½Ç½À
3.2 NUCLEO-F411RE º¸µå¸¦ »ç¿ëÇÑ GPIO ÀÔ·Â ½Ç½À
3.3 GPIO ÀÀ¿ë ½Ç½À
Á¦4Àå ¿ÜºÎÀÎÅÍ·´Æ® ½Ç½À
4.1 STM32F411 NVIC ÀÌÇØ
4.2 ¿ÜºÎÀÎÅÍ·´Æ® ½Ç½À
Á¦5Àå USART ½Ç½À
5.1 NUCLEO-F411RE º¸µå¸¦ ÀÌ¿ëÇÑ USART ½Ç½À
5.2 ÀÎÅÍ·´Æ®¸¦ ÀÌ¿ëÇÑ USART ½Ç½À
5.3 USART RX ÀÎÅÍ·´Æ®¸¦ ÀÌ¿ëÇÑ ÀÚµ¿Â÷Á¦¾î
5.4 DMA¸¦ ÀÌ¿ëÇÑ USART ½Ç½À
5.5 printf() »ç¿ë ½Ç½À
Á¦6Àå ADC ½Ç½À
6.1 Æú¸µ ¹æ½Ä
6.2 ÀÎÅÍ·´Æ® ¹æ½Ä
6.3 DMA¸¦ ÀÌ¿ëÇÑ ADC ½Ç½À
Á¦7Àå Timer/Counter ½Ç½À
7.1 System tick timer ½Ç½À
7.2 Timer Update Interrupt ½Ç½À
7.3 Timer¸¦ ÀÌ¿ëÇÑ ±¸ÇüÆÄ ¹ß»ý ½Ç½À
7.4 Timer¸¦ ÀÌ¿ëÇÑ PWM ½Ç½À
7.5 Timer¸¦ ÀÌ¿ëÇÑ ÁÖÆļö ¹× µàƼºñ ÃøÁ¤ ½Ç½À
7.6 Timer¸¦ ÀÌ¿ëÇÑ ÃÊÀ½Æļ¾¼ °Å¸®ÃøÁ¤ ½Ç½À
Á¦8Àå °¡¼Óµµ¼¾¼¿Í ÀÚÀ̷μ¾¼ ½Ç½À
8.1 °¡¼Óµµ¼¾¼ ½Ç½À
8.2 ÀÚÀ̷μ¾¼ ½Ç½À
8.3 »óº¸ÇÊÅ͸¦ ÀÌ¿ëÇÑ º¸»ó ¹× °á°ú
Á¦9Àå FreeRTOS ½Ç½À
9.1 FreeRTOS¸¦ ÀÌ¿ëÇÑ Multi Task ½Ç½À
9.2 FreeRTOS¸¦ ÀÌ¿ëÇÑ Priority ½Ç½À
9.3 FreeRTOS¿¡¼ Software Timer ½Ç½À
9.4 FreeRTOS¿¡¼ Timer Interrupt ½Ç½À
9.5 FreeRTOS¿¡¼ Semaphore ½Ç½À
9.6 FreeRTOS¿¡¼ Mutex ½Ç½À
9.7 FreeRTOS¿¡¼ Queue ½Ç½À
Á¦10Àå AI ½Ç½À
10.1 Àΰø½Å°æ¸Á
10.2 ÇÁ·Î±×·¥ ¼³Ä¡
10.3 XOR Àΰø½Å°æ¸Á ¼³°è
10.4 X-CUBE-AI¸¦ ÀÌ¿ëÇÑ Àΰø½Å°æ¸Á Àû¿ë
10.5 SIN(X) Àΰø½Å°æ¸Á ¼³°è ¹× Àû¿ë