FREE Intro to microcontroller programming courseFollow article
As the world of programming becomes more and more popular, so too does the challenge to support the thousands of people each day who embark on their first MCU programming projects. This completely free of charge course, from Matrix Technology Solutions is designed to introduce you to the concepts of developing electronic systems using microcontrollers. Completing the course will allow you to learn:
- What a microcontroller is
- How to construct circuits and systems based on microcontrollers
- How to program microcontrollers
An Introduction to microcontroller programming allows users of Flowcode and the popular E-blocks development suite to study up to 50 hours of detailed worksheets and examples to enhance your learning. Popular with educators, beginners and advanced MCU engineers alike, the course is available to access via the Matrix TSL website.
About PICmicro Chips
The course focuses, more specifically on PICmicro MCU’s. The name PIC, (Peripheral Interface Controller), refers to a group of microcontrollers, produced by Arizona Microchip.
In this section, you learn more about digital versus analogue data; putting data into the MCU and outputting data; memory on the MCU; programming and also this architecture of a specific microcontroller.
Clocking your PICmicro devices
Every microcontroller needs a clock signal to operate. Internally to the device the clock signal controls the speed of operation of the device and each passing clock cycle synchronises the operation of the various internal hardware blocks.
There are several decisions to be made concerning clocking your chip and before downloading a program to a PICmicro device you need to understand the choices and make some decisions. In this section the course addresses the issue of clocking and the choices you can make including clock settings and confusion.
This section introduces E-blocks, which are the suite of rapid prototyping hardware, popular in education from Matrix TSL. E-blocks consists of a range of ‘upstream’ programmer boards with PIC, dsPIC, AVR, ARM and FPGA devices and also many ‘downstream’ peripheral boards including input/output boards, communications boards, sensors and many more. This section of the course covers:
- What the function of each E-blocks is
- What each E-block looks like
- About the inputs to each E-block
- About the outputs from Each E-block
- What the circuit function of Each E-block is
- How E-blocks are used to make complete systems
You can find out more about E-blocks here.
Flowcode is a popular development environment for developing electronic and electromechanical systems, also from Matrix TSL.
This section is designed to allow those who are new to Flowcode to understand how Flowcode can be used to develop programs. This section has been designed to allow the user to enter programs step-by-step to learn about how Flowcode works.
You can find out more about Flowcode here.
The E-blocks system and Flowcode allow you to quickly develop a microcontroller based system. However, at some stage you will want to take this a stage further and develop a fully functional system of your own. This section provides you with the background information to help you to do this.
Within this section, the course looks at construction methods; choosing a power source; adding inputs input conditioning; adding outputs and also adding drivers.
The final, and most content rich part of the introduction to MCU programming course is the labs section. Here, the course takes the user through thirteen specific labs designed to teach you more about developing microcontroller based projects. It’s made mostly for beginners – those starting out on their microcontroller journey – whether that be at home, in the workplace or in education. The labs covered are listed below.
- Connection point
- Analgoue & EEPROM
- Software macro
- External interrupt
- Timer interrupt
As explained, the course is available to access free of charge from the Matrix TSL website, so why not start today and see what you can learn?