CHAPTER I INTRODUCTION AND ITS BACKGROUND This section begins with a discussion of the role and importance of Microcontroller in everyday life. As we all know, Microcontrollers are considered as a major discovery in terms of science and technology. Just like the other major advances, it can control system and devices which can make people’s lives better and easier. Based on “The Microcontroller Idea Book” by Jan Axelson, Microcontroller is a computer-on-a-chip, or a single chip computer.
It is said to be a single-chip computer because it contains memory and Input or Output interfaces in addition to the Central Processing Unit (CPU). Micro, as its name implies, advised that the device is small and Controller, however, tells that the device might be used to control objects as well as processes. Moreover, MCU has been described as an embedded controller, because the Microcontroller and its support circuits are often built into, or embedded in, the devices that they control.
Basically, any product that interacts with its user has a microcontroller inside. The field of Microcontroller (MCU) beginning is due to the development of integrated circuits. It enabled the storing of hundreds of thousands of transistors into one chip which was later used in the manufacturing of Microcontrollers. Nowadays, we can find Microcontrollers in almost all kinds of things. Most of those things and devices are well-known to utilize for measuring, storing, calculating, controlling, and displaying of information.
One of the largest applications of Microcontroller is in automobiles as it includes at least one MCU for engine control. In test equipment, microcontrollers make it easy to add features such as the ability to store measurements, to create and store user routines, and to display messages. In a desktop computer, MCU is founded inside keyboards, modems, printers, and other peripherals. Furthermore, products that we are fond of using like cameras, video recorders, compact-disk players, and ovens also use Microcontrollers. Background of the Study
Microcontrollers have only been with us for a few decades but its impact on our lives is intense. Most of the microcontroller parts can be found in all electronic devices; it can be found on products which we use in our home like microwave ovens, alarm clock, washing machines, toys, and stereo equipment. Other common devices such as cash register, weighing scales, typewriters, photocopiers, elevators, industrial automation device, safety system, cars and traffic signals are some examples of microcontroller application.
Numerous types of microcontrollers were designed and they quickly became man’s invisible companion. It is also regarded as a powerful tool that allows a designer in creating his own design. Some of the crucial influence in the microcontroller development and success are powerful and carefully chosen electronics such as switches, push buttons, sensors, LCD displays, and relays, cheap automatic devices and its power was widely spread prior to the knowledge in programming.
With the necessity of making our MCU experience learning more enjoyable and helping us to do our jobs easier and safer, e- Gizmo decided to develop and launched the first Universal MCU Trainer. Unlike some of those mainstream MCU training kits, the e- Gizmo Training Kit is not attached to any particular type of microcontroller. It is known to be compatible with current MCU boards that include gizDuino, Zilog Encore, AVR ATMEGA8L, and Peripheral Interface Controller (PIC).
In this project, the researchers should have the knowledge in programming, training experiments, as well as they should have the manipulation for the kits’ on board peripherals such as Relay and Motor Expander, Analog Voltage Sources, LM34 Temperature Sensor, 3 adjustable Voltage Sources, Digital to Analog DAC circuit, Switch Devices, Rotary Encoder Switch, 2 push button switches, 4 x 3 Keypad Matrix, Input and Output Expander, LED monitor, 2 Digit 7 segment LED display, Buzzer Circuit, Real Time Clock RTC, Alphanumeric LCD Display Unit, RS232 Interface Circuit, Power Supply Entry, Microcontroller Board Docking Port, and Breadboard.
Project Objectives The main objective of this e- Gizmo Universal MCU kit is to test and learn the different kinds of application and peripherals on board. Moreover, the development of this microcontroller kit requires attaining the following: 1. ) To learn the programming languages use in microcontroller 2. ) To learn how to use the software through PC to the microcontroller 3. ) To learn the basic connection of the microcontroller to the MCU kit. 4. ) To study and familiarize the functions of the specific application use in the microcontroller 5. To learn how to connect or to know the relationship between the Input- Output or the application through the microcontroller Conceptual Framework The interrelation among the components of the microcontroller kit was shown as illustrated in Figure 1. It represents the process on how the application and peripherals used in the trainer board works. In this kit, the researchers have used a microcontroller in gathering input from various applications, processing the input into a set of actions, and using the output mechanisms on the microcontroller to do something useful.
The concept of the microcontroller kit was based on the need of creating convenient hardware designed for having knowledge and critical thinking for microcontroller widen. The diagram started with the input, followed by the process and the output. OUTPUT INPUT PROCESS RS 232 C INTERFACE 2 x 16 LCD DISPLAY BUZZER LED DRIVER OUTPUT EXPANDER RELAY STEPPER MOTOR DRIVER MICROCONTROLLER GIZDUINO AND PINGUINO 2 x 16 LCD DISPLAY REAL TIME CLOCK (RTC) INPUT EXPANDER 4 x 3 SWITCH EXPANDER PUSH BUTTON SWITCH ANALOG VOLTAGE OUTPUT TEMPERATURE SENSOR PROCESS GIZDUINO (USB CABLE) PINGUINO (UART MODE/USB CABLE)
PERSONAL COMPUTER Figure 1. Conceptual Framework of e- Gizmo Universal MCU Trainer The INPUT is comprises of 2 x 16 LCD Display, Real Time Clock (RTC), Input Expander, 4 x 3 Switch Matrix, Push Button Switch, Analog Voltage Output, and Temperature Sensor. LCD Display Module is tremendously popular low cost display device that can show user generated message in 2 lines x 16 alphanumeric format. Aside from 2 lines by 16 characters format, LCD modules are also available in 4 lines by 20 characters. A Real Time Clock (RTC) circuit serves as an electronic subsystem that keeps an accurate time and calendar.
In addition, the next input is the Input Expander which has data out, since the host controller will be reading from U3 input port JP22. Furthermore, 4 x 3 Keypad matrix is also recognized as one of the input. The keypad used in this trainer consists of 12 push switches. The keypad switches are wired in 4 rows x 3 column arrangement. The Push Button Switches in the kit, which are S1 and S2, are held to logic 1 state by R2 and R3 when not pressed. There is also a well known device which is LM34 Temperature sensor U5 which gives an ambient temperature reading in analog Fahrenheit scale.
After the Input, the figure shows the PROCESS which is comprises of Microcontroller Gizduino and Pinguino. Gizduino is ideal for beginner programmers and hobbyists because of its simplicity compared to other platforms. It is a multiplatform environment; it can run on Windows, Macintosh, and Linux. However, Pinguino is an Arduino for PIC user. Pinguino is also an Integrated Development Environment (IDE) which enables anyone to easily make an application on learning the program. Additionally, the program for both Gizduino and Pinguino is loaded to the Personal Computer which is also a major part of the process.
Gizduino is programmable via USB (Universal Serial Bus) cable which makes it more accessible and allows communication to the computer. Pinguino, however uses UART mode through serial communication to PC. In addition, the OUTPUT includes RS 232 C Interface, 2 x 16 LCD Display, Buzzer, LED Driver, Output Expander, Relay, and Stepper Motor Driver. The RS 232 Interface allows the MCU UART to interface with RS 232 enabled devices. The function of the 2 x 16 LCD Display here in the output is the same as the input. For the 3rd output, the buzzer is used to indicate a warning or an alarm, a key closure or a machine function.
The buzzer used in this trainer is essentially a small loudspeaker. With regards to the Output Expander, this trainer can have 8 outputs more using 5 or 6 MCU I/O. The Stepper Motor Drive subsection in the trainer can also be used to study and control stepper motor operations via user code. Significance of the Study The e- Gizmo Universal Microcontroller (MCU) Trainer was designed specifically for the benefits of the following: Electronic Designers. This trainer is intended for artists, designers, hobbyists, and anyone interested in prototyping and programming a microcontroller.
The Students. This kit aspires for the students to acquire basic knowledge on how microcontroller works and also aims for students to be familiar with prototyping platform based on easy to use hardware and software. The Academe. Professors on higher education can use this trainer to introduce the college students on how to program and manage microcontroller the fast and easy way. The Researchers. With the help of this MCU kit, the researchers were able to have background about the major component details of both Gizduino and Pinguino platform, its features, and manual application.
They were able to manipulate peripherals on board through programming familiarity. Future Researchers. This can serve as a guide to those who wants to delve into microcontroller relevance, and those who wanted to have comparisons among the MCU trainers that has been developed. The study also provides the data and guiding material about the universal trainer function. Scope and Limitation Scope The e- Gizmo Universal MCU trainer requires an external well regulated +5V to power the whole trainer board. Unlike any other microcontroller trainers, this is unique since it does not assign to any single microcontroller.
With this trainer, we can use available boards such as gizDuino itself (atmega 168 or atmega 328 versions), AVR atmega8L experimenter board, Zilog z8F042A MCU board, PIC18F2550, and STM32F100C8 ARM Cortex M3 MCU board. The gizDuino’s platform kit that has been executed in this trainer is a single board AVR microcontroller platform based on highly popular Arduino design. It is a multiplatform environment as it can run on Macintosh, Linux and Windows. It is also programmable via USB (Universal Serial Bus) cable as mentioned earlier.
Gizduino’s User Interface is USB Port, DC Jack, Reset Button, ICSP Port, and Shield Connection Port. The external Power Input ranges from 8V- 12 V while it needed 5 V for USB. The DC Power Output is at 3. 3 V with a frequency of 16 MHz and 12 MHz. It is being programmed using Integrated Development Environment (IDE). Additionally, PIC18F2550 platform which has also been programmed has an Arduino compatible layout. It works on Arduino like software development platform based on open source Pinguino project. The e- Gizmo’s Pinguino is also compatible with gizDuino line of shields and has an external power supply of 8V- 12V.
Its communication medium is UART mode, serial communication to PC. Different applications are also placed on this trainer such as Relay and Motor Expander, Analog Voltage Sources, LM34 Temperature Sensor, 3 adjustable Voltage Sources, Digital to Analog DAC circuit, Switch Devices, Rotary Encoder Switch, 2 push button switches, 4 x 3 Keypad Matrix, Input and Output Expander, LED monitor, 2 Digit 7 segment LED display, Buzzer Circuit, Real Time Clock RTC, Alphanumeric LCD Display Unit, RS232 Interface Circuit, Power Supply Entry, Microcontroller Board Docking Port, s well as Breadboard. Limitation Since +5V is employed to power the trainer board, using unqualified +5V power source may cause damage to the trainer. Most components on this kit, especially the microcontrollers are known to be sensitive to Electrostatic discharge (ESD). With this, ESD may damage the trainer if not handled properly. As discussed, Microcontroller Board Docking is where the MCU board is installed. This accepts gizDuino style MCU board. However, since Arduino boards do not have extended connectors, it disallows any shields from being installed on it.
Herewith, a suitable adapter is required for us to be able to use the Arduino with the Universal MCU Trainer. It should also be noted that each microcontroller family has its own software development kit (SDK) and some may require a separate programming cable. Definition of Terms Microcontroller (MCU). It is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Gizduino. It is an open source computing platform based on a simple input/output (I/O) board and use of standard programming language and is a tool for implementing specific design.
Pinguino. It is also an Arduino compatible platform which works on Arduino like software development platform. Arduino. A popular open-source single-board microcontroller, descendant of the open-source wiring platform, designed to make the process of using electronics in multidisciplinary projects more accessible. AtMega 328. This is the microcontroller that powers the gizDuino. Integrated Development Environment (IDE). This is a software application that provides comprehensive facilities to computer programmers for software development. Zilog Encore.
This system-on-a-chip includes an integrated memory controller, interfaces such as Universal Serial Bus (USB), Liquid Crystal Display (LCD) and Serial Peripheral Interface (SPI). RS232 Interface. It’s a RS232C Transistor Transistor Logic (TTL) level converter. LCD Display Module. A tremendously popular low cost display device that can show user generated messages in 2 lines x 16 alphanumeric characters format. Breadboard. It is used to easily build small circuits to work on in addition to the trainer module. Real Time Clock (RTC). Is an electronic subsystem that keeps an accurate time and calendar.
Buzzer. It is an annunciator which provides cost effective audible feedback between the machine and the user. Light Emitting Diode (LED). Is a semiconductor diode that emits light when conducting current and is used in electrical equipment. Liquid Crystal Display (LCD). It is a flat panel display, electronic visual display or video display that uses the light modulating properties of liquid crystals. Multiplexing. A method used to rapidly switch two or more digits in synchronization with their corresponding segment drives (a-b-c-d-e-f-g). Input/Output Expander.
This is used to serve 8 inputs and 8 outputs more using 5 or 6 microcontroller I/O. 4 x 3 Keypad Matrix. It is a small group of keys used to manually enter a data or a command while the microcontroller is running. Encoder Switch. Also known as rotary quadrature encoder switch, is a pure digital device that has the feel of an analog potentiometer. Push Button. An electrical switch operated by pressing a button, which closes or opens a circuit. Digital to Analog Converter (DAC). It is an interface device that will allow outputting an analog voltage based on a digital value.
Analog Voltage Source. It provides both simulated and real analog voltage source which is used in Digital to Analog Converter. Stepper Motor Drive. This section in the trainer is used to control stepper motor operations via user code. Relay. Is an electrically operated switch, use an electromagnet to operate a switching mechanism mechanically and they are used where it is necessary to control a circuit by a low power signal. Universal Asynchronous Receiver/Transmitter (UART). It is the microchip with programming that controls a computer’s interface to its attached serial devices.