
"Modern Embedded Systems 프로그래밍"비디오 과정에 오신 것을 환영합니다.
이 과정에서는 기본부터 현대 현대 임베디드 프로그래밍 연습에 이르기까지 임베디드 마이크로 컨트롤러를 현대적인 방법으로 프로그램하는 방법을 배웁니다.
이 과정의 독특한 접근 방식은 기계 레벨로 자주 내려 가서 임베디드 마이크로 컨트롤러 내에서 어떤 일이 발생하는지 정확하게 보여주는 것입니다. 이 더 깊은 이해를 통해 개념을보다 효율적이고 더 큰 자신감으로 적용 할 수 있습니다.
임베디드 프로그래밍의 필수 개념을 설명하는 실용적이고 실습, 잘 구조적이며 심도있는 코스를 찾고 있다면이 무료 코스가 적합합니다.
이 과정은 2013 년에 이미 시작되었으므로 합법적 인 질문은 다음과 같습니다. "여전히 관련이 있습니까?" 대답은 두 가지 주요 이유 때문에 2013 년보다 훨씬 더 그렇습니다.
이 과정은 스타일에서 벗어나지 않는 임베디드 프로그래밍의 필수적이고 기본적인 개념 에 중점을 둡니다. 사전 설정된 모든 개념은 심도있는 것으로 다루며 다음을 포함합니다.
이 과정은 지난 10 년 동안 임베디드 MCU 시장에서 의심 할 여지없이 지배적이 된 ARM Cortex-M Architecture에 중점을 둡니다. ARM Cortex-M에 대한 친숙 함은 고용주가 찾고있는 가장 많이 찾는 기술입니다.

Cortex-M 패밀리를 포함한 ARM 프로세서
이 과정은 30 년 이상의 경험을 가진 임베디드 소프트웨어 전문가 인 Miro Samek 가 설계하고 가르칩니다. Miro는 교육을 즐기고이 비디오 과정, 그의 책, 기사 및 컨퍼런스 토크는 많은 개발자들이 기술을 향상시키고, 힘든 면접을 통과하며, 임베디드 프로그래밍 직책을 고용하는 데 도움이되었습니다.

Miro Samek
이 과정은 기본으로 시작하지만이 부분은 짧고 C의 프로그래밍의 임베디드 측면에 중점을두고 있습니다. 따라서 C 프로그래밍 언어 에 대한 일반적인 연구를 통해이 과정을 보완해야 할 수도 있습니다. CPU의 작동 방식에 대해 조금 배우고 싶을 수도 있습니다.
또한이 과정은 실습입니다. 즉,이 과정을 최대한 활용하려면 PC에서 논의 된 프로젝트를 따라 가서 실행해야합니다. 이를 위해서는 일부 하드웨어 (임베디드 보드) 및 소프트웨어 (내장 개발 도구 세트)가 필요합니다.
메모
몇 가지 초기 수업에서 시뮬레이터를 사용하므로 바로 내장 보드가 필요하지 않습니다. MCU 주변 장치 (예 : GPIO 등)와 상호 작용하는 고급 레슨에는 임베디드 보드가 필요합니다.
코스 전반에 걸쳐 사용되는 주요 임베디드 보드는 Texas Instruments의 ARM Cortex-M4F 마이크로 컨트롤러를 기반으로 한 Tivac LaunchPad 보드 (일명 EK-TM4C123GXL)입니다. 이사회는 저렴하며 여러 전자 유통 업체에서 구매할 수 있습니다. 자체 포함되어 있으며 내부 상태 디버깅 및 내부 상태를 검사 할 수있는 내장 하드웨어 디버거/프로그래머 (Stellaris ICDI)를 제공합니다.

TIVAC 런치 패드 (EK-TM4C123GXL)
코스 다운로드에는 이제 ARM Cortex-M0+ MCU를 기반으로 STM32 Nucleo-C031C6의 프로젝트 버전도 포함되어 있습니다. 이 보드는 또한 저렴하고 독립적이며 내부 상태를 단일 단계 디버깅 및 검사 할 수있는 훨씬 더 다양한 내장 하드웨어 디버거 (ST-Link)가 포함되어 있습니다.

STM32 NUCLEO-C031C6
메모
다른 저렴한 임베디드 보드를위한 코스 프로젝트는 향후 추가 될 것입니다.
이 과정에서 제시된 코드를 빌드하고 실행하려면 다음과 같은 내장 도구 중 하나가 필요합니다.
이 과정은 Iar Embedded Workbench for Arm (Ewarm)으로 시작되었으며, 이는 1-19 수업 에 사용됩니다. Iar Ewarm은 우수한 컴파일러와 안정적인 디버거가있는 전문적인 도구 세트입니다.

Iar ewarm은 Projecs 중 하나입니다
메모
IAR Ewarm은 무료 크기 제한 킥 스타트 라이센스로 제공되었지만 최근에 IAR Systems는 무료 라이센스 제공을 중단했습니다. 남은 유일한 무료 옵션은 2 주 평가 라이센스입니다. IAR Ewarm의 프로젝트는 최신 버전의 도구 세트로 업데이트되었으며 1-19 수업을 위해 제공됩니다.
Keil MDK (마이크로 컨트롤러 개발 키트)는이 비디오 과정에서 사용되는 또 다른 전문 개발 도구 세트입니다. Iar Ewar와 달리 Keil MDK는 무료 Keil MDK V6 Community Edition을 포함하여 점점 더 허용되는 라이센스로 제공됩니다.

keil uvision ide는 projecs 중 하나입니다
메모
Keil MDK 프로젝트는 이제이 과정의 모든 수업을 위해 이용할 수 있습니다. 여기에는 원래 iar ewarm 또는 ti ccs를 위해 제시된 수업 1-21이 포함됩니다.
대중적인 수요로 인해 코스의 두 가지 수업 (19 및 20)은 Texas Instruments의 CCS (Code Composer Studio) IDE를 보여줍니다. 여기서 유일한 귀중한 측면은 오픈 소스 GNU-Arm 컴파일러 및 링커를 사용하는 것입니다.
메모
CCS (Code Composer Studio) 11은 기본적으로 TI 컴파일러를 사용하며 더 이상 GNU-Arm 컴파일러가 설치되지 않습니다. 그러나 GNU-Arm 도구 체인은 메뉴를 통해 설치할 수 있습니다. "도움말 | GCC ARM 컴파일러 도구 설치 ..."

Projec 중 하나를 가진 Eclipse 기반 코드 Composer Studio Ide
CCS IDE는 Eclipse를 기반으로하며, 그 이유 때문에 발사 및 사용이 고통 스럽습니다. Eclipse 프로젝트는 여러 파일과 디렉토리로 구성되어 있기 때문에 공유하기가 어렵습니다. 또한 IDE에서 프로젝트를 간단히 열 수는 없지만 대신 "수입"해야합니다. 생성 된 오류 메시지는 종종 혼란 스럽습니다. 마지막으로 디버깅은 느리고 불안정합니다.
이 저장소는 특정 임베디드 툴셋에서 열고 집에서 PC에서 실행할 수있는 프로젝트 다운로드를 제공합니다. 프로젝트는 다음 주석이 달린 디렉토리 트리에 설명 된대로 구성됩니다.
modern-embedded-programming-course/
+---lesson-01/ // lesson number
| +---simulator-iar/ // simulator with IAR EWARM
| | workspace.eww // IAR workspace
| |
| ---simulator-keil/ // simulator with KEIL MDK
| ---RTE/ // Run Time Environment for KEIL MDK
| lesson.uvprojx // uVision project
|
+---lesson-.../
|
+---lesson-04/
| +---stm32c031-keil/ // STM32C031 board with KEIL-MDK
| | ---RTE/ // Run Time Environment for KEIL MDK
| +---tm4c123-iar/ // TM4C123 board with IAR EWARM
| | workspace.eww // IAR workspace
| |
| ---tm4c123-keil/ // TM4C123 board with KEIL MDK
| ---RTE/ // Run Time Environment for KEIL MDK
| lesson.uvprojx // uVision project
|
+---lesson-...
|
+---lesson-19
| ---tm4c123-ccs // TM4C123 board with CCS
| +---ek-tm4c123gxl/ // board-specific code
| ---targetConfigs/ // CCS project directory
| .ccsproject // CCS project file
| .csproject // Eclispe project file
| .project // Eclipse project file
ARM/Keil Uvision의 모든 프로젝트는 쓸모없는 컴파일러 -5에서 최신 컴파일러 -6로 업데이트되었습니다.
이 과정이나 관련 주제에 대해 논의하려면 각 비디오 수업의 칭찬 섹션에 귀하의 질문이나 의견을 YouTube에 게시하십시오.
동반자 웹 페이지를 통해 비디오 과정을위한 수많은 리소스가 제공됩니다.
www.state-machine.com/video-course
무엇보다도 거기에서 찾을 수 있습니다.
이 프로젝트가 마음에 들면 :

좋아하는 비디오에 대한 단어를 전파합니다 (예 : 내장 된 사람들이 자주 방문하는 다른 웹 사이트에 게시하여)
이 github 리포지토리 (Browser Wind
