Published 7/2024
Created by Wassim Dhokar
MP4 | Video: h264, 1280×720 | Audio: AAC, 44.1 KHz, 2 Ch
Genre: eLearning | Language: English | Duration: 51 Lectures ( 3h 6m ) | Size: 1.6 GB
Toolchain Compiler (armgcc compiler) for Embedded C Programming
What you’ll learn:
Get to Know the Procedure and Stages to Compile Embedded C Code
Understand Each Compilation Stage and the expected outcome
Identify the Set of Build Tools to be needed out of any Toolchain Package Required to Build Embedded C Project
Get to Know armgcc toolchain compiler, and How to use it to Compile your ARM Based C Projects
How to modify your Project Makefile to invoke Compiler tools
Different Toolchain helper tools like Objdump and Objcopy which can be used to modify the content of your binary file and how to invoke those tools
Understand the Different supported features and Options by each compilation Stage
Requirements:
Basic Knowledge of Embedded C
Windows Machine
Description:
What are you going to learn in this course?Within this course you will get to know different compilation stages that result in generation of the final executable binary, which get loaded later into your embedded device (microcontroller or any kind of embedded device).When it comes to embedded Systems and to be more precise embedded C programming, a lot of problems and issues are hidden within the flow that translate your high level C code into low level executable file containing the machine code (binary code) to be executed by the processor. In Most of the cases when you create your embedded C project using some some abstracted IDEs like VSCode, IDE like eclipse , Keil-mdk, …, you don’t know what is going in background to go from C level sources to final Executable binary file (.elf, .bin, .hex to be loaded into the device, the whole flow is kind of transparent in such way it become quiet hard to question if the issue/problem you are facing is coming from that flow or from you C level based code.This is not always about figuring out issues, you may need to do some extra preprocessing or postprocessing on the intermediate generated files out of those build stages, so knowing what is going on really and what are those intermediate files will helps you to identify the steps to be done for those pre/post processing extra steps.In this Course , you will see in pretty close and low level way those different compilation stages, what are the different intermediate files that can be generation out of those stages, how the final binary get linked , what pre/post processing additional stages that can be inserted, all of this using some basic low level written makefile to get control over all those steps without the need to have abstracted fancy IDE for such build procedure.Which make you motivated to get involved in this Course?The way it is written and who wrote this course is one of the key motivation to engage yourself in this Course. Wassim Dhokar was working in embedded systems field for more than decade now , and he was at some point exactly like you as a beginner confused and not knowing what is going within the background of the build procedure triggered by one of the front-end IDEs like eclipse, he knows exactly the frustration you may feel when this whole flow is hidden from you or when a colleague/instructor start asking question about this process or to check some of generated intermediate files out of compilation, therefore he will try to guide you in easy way through :The different Compilation Stages concepts The need of compilerThe functionality and what is expected from each compilation stagesThe key features of each stageGive you an example about existing Toolchain compiler to be used (armgcc toolchain for ARM cortex-M Micro-processors)Provide a makefile template project to be used to invoke the different toolchain tools needed for compilation stagesWill guide you through different makefile rules and show you how to update the make file to add or remove one of those stagesProvide multiple Examples as prove of concepts for the theoretical partsShow you how to manipulate the final binary using the different toolchain helper tools like: objdump, objcopy …The makefile you get here can be used as template and starting point for your Embedded C project, which will sav e you plenty of time to setups everything from scratch.So welcome to this Course and let’s start our Trip here!
Who this course is for:
Embedded Systems Students or Embedded Developers who are interested to grow their knowledge on the tooling perspective of embedded systems
Homepage