
Selamat datang di Kursus Video "Pemrograman Sistem Tertanam Modern".
Dalam kursus ini, Anda akan belajar cara memprogram mikrokontroler tertanam dengan cara modern, dari dasar -dasar hingga praktik pemrograman tertanam modern kontemporer.
Pendekatan unik dari kursus ini adalah untuk sering turun ke tingkat mesin dan menunjukkan kepada Anda apa yang terjadi di dalam mikrokontroler tertanam Anda. Pemahaman yang lebih dalam ini akan memungkinkan Anda untuk menerapkan konsep lebih efisien dan dengan kepercayaan diri yang lebih besar.
Jika Anda mencari kursus yang praktis, langsung, terstruktur dengan baik, dan mendalam menjelaskan konsep-konsep penting dalam pemrograman tertanam , kursus gratis ini tepat untuk Anda.
Kursus ini sudah dimulai pada tahun 2013, jadi pertanyaan yang sah adalah: "Apakah masih relevan?" Jawabannya adalah ya, mungkin lebih dari pada tahun 2013, karena dua alasan utama:
Kursus ini berfokus pada konsep -konsep penting dan mendasar dalam pemrograman tertanam, yang tidak pernah ketinggalan zaman. Semua konsep yang ditetapkan dicakup dalam, dan termasuk:
Kursus ini berfokus pada arsitektur lengan Cortex-M yang lazim, yang selama dekade terakhir menjadi dominan di pasar MCU yang tertanam. Keakraban dengan ARM Cortex-M adalah keterampilan yang paling dicari yang dicari oleh pengusaha.

Prosesor lengan, termasuk keluarga Cortex-M
Kursus ini dirancang dan diajarkan oleh Miro SameK - seorang ahli perangkat lunak tertanam dengan lebih dari 30 tahun pengalaman. Miro menikmati mengajar, dan kursus video ini, buku, artikel, dan pembicaraan konferensi ini membantu banyak pengembang meningkatkan keterampilan mereka, lulus wawancara kerja yang sulit, dan dipekerjakan untuk posisi pemrograman yang tertanam.

Miro SameK
Kursus ini dimulai dengan dasar -dasarnya, tetapi bagian ini pendek dan fokus pada aspek -aspek tertanam pemrograman dalam C. Oleh karena itu, Anda mungkin perlu melengkapi kursus ini dengan studi umum bahasa pemrograman C. Anda mungkin juga ingin belajar sedikit tentang cara kerja CPU.
Juga, kursus ini langsung, yang berarti bahwa untuk mendapatkan hasil maksimal dari kursus ini yang Anda bisa dan harus mengikuti dan menjalankan proyek yang dibahas di PC Anda. Untuk melakukan ini, Anda akan memerlukan beberapa perangkat keras (papan tertanam) dan perangkat lunak (toolset pengembangan tertanam).
CATATAN
Beberapa pelajaran awal menggunakan simulator dan karena itu Anda tidak membutuhkan papan tertanam segera. Pelajaran yang lebih maju, di mana Anda berinteraksi dengan periferal MCU (seperti GPIO, dll.) Membutuhkan papan tertanam.
Papan tertanam utama yang digunakan sepanjang kursus adalah papan launchpad TIVAC (alias, EK-TM4C123GXL) berdasarkan mikrokontroler ARM Cortex-M4F dari Texas Instruments. Papan ini tidak mahal dan masih tersedia untuk dibeli dari beberapa distributor elektronik. Ini mandiri dan menyediakan debugger/programmer perangkat keras bawaan (Stellaris ICDI) yang memungkinkan debugging satu langkah dan memeriksa keadaan internal.

Tivac Launchpad (EK-TM4C123GXL)
Unduhan kursus sekarang juga berisi versi proyek untuk STM32 Nucleo-C031C6, berdasarkan ARM Cortex-M0+ MCU. Papan ini juga murah, mandiri, dan termasuk debugger perangkat keras bawaan yang lebih fleksibel (ST-Link) yang memungkinkan debugging satu langkah dan memeriksa keadaan internal.

STM32 Nucleo-C031C6
CATATAN
Proyek kursus untuk papan tertanam murah lainnya akan ditambahkan di masa depan.
Untuk membangun dan menjalankan kode yang disajikan dalam kursus ini, Anda akan memerlukan salah satu dari peralatan tertanam berikut:
Kursus dimulai dengan Workbench Tertanam IAR untuk ARM (EWARM), yang digunakan dalam Pelajaran 1-19 . IAR Ewarm adalah toolset profesional dengan kompiler yang baik dan debugger yang stabil.

Iar eWarm dengan salah satu projec
CATATAN
IAR Ewarm dulu tersedia di bawah lisensi Kickstart gratis dan terbatas ukuran, tetapi baru-baru ini, IAR Systems berhenti menawarkan lisensi gratis. Satu-satunya opsi gratis yang tersisa adalah lisensi evaluasi 2 minggu. Proyek untuk IAR Ewarm telah diperbarui ke versi yang lebih baru dari toolset dan disediakan untuk pelajaran 1-19.
Keil MDK (Microcontroller Development Kit) adalah alat pengembangan profesional lain yang digunakan dalam kursus video ini. Berbeda dengan IAR Ewar, Keil MDK ditawarkan di bawah lisensi yang semakin permisif, termasuk Edisi Komunitas Keil MDK V6 gratis.

Keil Uvision IDE dengan salah satu projec
CATATAN
Proyek Keil MDK sekarang tersedia untuk semua pelajaran kursus ini. Ini termasuk pelajaran 1-21, yang awalnya disajikan untuk IAR Ewarm atau Ti CCS.
Karena permintaan populer, dua pelajaran kursus (19 dan 20) menunjukkan IDE CODE COMPOSER Studio (CCS) dari Texas Instruments. Satu-satunya aspek yang berharga di sini adalah penggunaan kompiler dan penghubung GNU-Arm open source.
CATATAN
Code Composer Studio (CCS) 11 menggunakan kompiler TI secara default dan tidak lagi dilengkapi dengan kompiler GNU-arm yang diinstal. Tetapi toolchain GNU-Arm dapat diinstal melalui menu: "Bantu | Instal GCC Arm Compiler Tools ..."

Eclipse Based Code Composer Studio IDE dengan salah satu projec
IDE CCS didasarkan pada gerhana dan untuk alasan itu sangat lambat untuk diluncurkan dan digunakan. Proyek gerhana sulit dibagikan karena terdiri dari banyak file dan direktori. Juga, proyek tidak dapat hanya dibuka di IDE tetapi sebaliknya harus "diimpor". Pesan kesalahan yang dihasilkan sering membingungkan. Akhirnya, debugging lambat dan tidak stabil.
Repositori ini menyediakan unduhan proyek yang dapat Anda buka di toolset tertanam tertentu dan berjalan di PC Anda di rumah. Proyek -proyek ini diselenggarakan seperti yang diilustrasikan dalam pohon direktori beranotasi berikut:
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
Semua proyek untuk ARM/Keil Uvision telah diperbarui dari kompiler usang-5 ke Compiler-6 yang lebih baru.
Jika Anda ingin membahas kursus ini atau subjek terkait, silakan posting pertanyaan atau komentar Anda di YouTube, di bagian Comend di bawah setiap pelajaran video terkait.
Banyak sumber daya untuk kursus video tersedia melalui halaman web pendamping di:
www.state-machine.com/video-course
Di antara yang lain, Anda dapat menemukan di sana:
Jika Anda menyukai proyek ini, silakan:

Sebarkan berita tentang video yang Anda sukai (misalnya, dengan memposting di situs web lain yang sering dikunjungi oleh orang -orang tertanam)
Beri Repositori GitHub ini bintang (di sudut kanan atas jendela browser Anda):
