MCU Programming - Basics
Microcontrollers have a large presence in our day to day interactions. One of the largest interactions with a microcontroller happens every time you drive a vehicle. The microcontroller has one fundamental advantage leading to its success in the mass-production of vehicles. This is where the self-contained nature of this device made it efficient for production on a large scale and much simpler to utilize for small tasks that needed automation and reliable error control. Micro Controlled Units or MCU's are able to handle an immense amount of information that must have an active monitoring system that can poll the input on a regulated frequency. Based on this "frequency" to efficiently store and output all the required values within a closed system.
The report will be examining how a vehicle's composite input cluster is designed and implemented through the use of a microcontroller. Due to the space constraints concerning the report itself I will not be discussing any other, more complex controllers implemented beside the cluster microcontroller. Bannatyne. (2009) talks about how there is already a sizeable amount of controllers within vehicles. This makes a full comprehensive coverage impossible, considering even in 2002 the average mid-sized sedan contained upwards of 45 controllers and luxury sedans are already over a 100. The report will begin by discussing the design concepts commonly used by the automotive industry when designing a MCU and its related software. Next I will explore two methods used for structuring an efficient design utilizing a specific controller. The MCU I will be using does not have all the external functionality that a regular automotive grade microcontroller has and in turn I will not be covering the interface portion where the MCU communicates with other IO. I will, however, examine different solutions to monitor specific inputs where real time reaction is essential. Preferable development on most modern vehicle MCU's is done within simulation software so the hardware can be configured later when an operational embedded program is created so the hardware can be configured correctly for maximum reliability. I however, have to work within previous hardware constrains. The MC9S12E128 MCU, so I will be designing with these constrains in mind.
This report is separated into six major sections including the introduction: after a small history on the advancements of automotive MCU's the first content section will be the design concepts. After the design is understood the next section is structuring an efficient solution only after understanding the different methods that make for an efficient reliable design. The last major section before the conclusion is the implementation on the MCU, this, however, will not include a demo as time constrains on certain critical portions such as interrupts where not introduced in time.