The morning lecture taken up by Professor Gadre involved a discussion regarding the important features of modern microcontrollers like reset and clock. Multiple clock and reset sources were discussed. Students were also briefed about the idea of clock scalability. Professor explained the different operating modes of a microcontroller (active, sleep, power off) by drawing an analogy with the human system. The concept of pull up and pull down resistors was also introduced in this session.
Post tea break, he moved on to the “controller” part of the six box approach model. The Roti, Kapda, Makaan and Internet of microcontrollers which comprises of clock, reset, power supply and program download ability were elaborated.
Track A - MSP430
On Day-8 track specific lectures began post lunch. MSP430 people under the able mentorship of Abhishek Kapoor were introduced to its salient features-CPU and memory architecture, organisation of RAM and ROM, CPU registers, addressing modes and instruction format.
Track B - BeagleBone
Mrityunjai Kumar, an alumnus from ECE division, NSIT took the first lecture of the BeagleBone track. First of all, the basics and important features of BeagleBone were discussed. Its RAM, processor clock and USB support were talked about. Then, its hardware was discussed in detail. BeagleBone and Raspberry Pi were compared, with the strong points of both being highlighted.
All participants were made to connect their BBB’s to their laptops using USB lead, and install drivers. The class ended with everyone’s BeagleBone powered up via USB to the computer and logged in either through Linux Terminal or through Putty.
Day-9 started with a problem statement, to identify if the source of system reset was a user button or power on reset and hence display it on 2 different coloured LEDs. Since data memory is stored in RAM, on user reset the contents of RAM are not lost, while on POR it gets cleared. The solution was identified and presented in the form of a flowchart. Next, structural block diagrams of RAM, ROM and microcomputers were studied. Sources of power, level conversion mechanisms, optimization techniques were the key points. The lecture concluded with an introduction to power supply design considerations in embedded systems.
Participants attending common lectures
In the MSP430 track lecture, the emphasis was on the key features of MSP430 including supply voltage range, power consumption, quiescent current, clock module configuration taking reference from the datasheet and userguide of MSP430.
The lecture provided the participants the first hands-on experience of communicating with the BeagleBone. They were taught how to login when connected to the BBB for the first time and various useful Linux Commands required to interact with it Also, participants learnt how to share the internet using Network-over-USB in BBB by typing the required commands in the Terminal. Thereafter, x11vnc was installed in everyone’s BeagleBone.
The tenth day of the internship programme marked the advent of one of the most important blocks of the six block model-The Power Supply Unit. Prof. Gadre provided an insight into the basic functioning, types and components that made up this unit.
Special emphasis was laid upon the designing of such supplies using simpler components like zener diodes to more complex ones. It began with the discussion of the design paradigms for linear supplies using analog building blocks. A brief introduction of operational amplifier was also provided.
The subsequent discussions were focussed upon the second major class of power supplies-the Switched Mode Power Supply. It overcomes one of the major drawbacks of linear supplies-low efficiency. It was followed by a discussion on the fundamental topological differences between buck, boost and buck-boost supplies which concluded the morning session.
Track A - MSP430
In the afternoon session, the MSP430 track participants began the process of sharpening their coding skills. The participants got the first opportunity code their MSP430G2553 launch pads. The integrated development environment used for the same was Code Composer Studio developed by Texas Instruments (TI). The first code to be practiced was the Hello LED code under the guidance of Arun Kumar. The on-board LED was toggled using software delay.
Arun Kumar guiding the students in their MSP code
Track B - BeagleBone
All participants were involved in the fabrication of the BBB cape zero (an elementary board being used for hardware-interfacing). The fabrication process of the entire PCB containing a potentiometer, LED, push button, resistors, 7-segment display and LDR. was finished in a day under the supervision of the mentors.
BeagleBone Cape Zero
The day began with a discussion over the input devices required for interfacing with the physical world. This was followed by an introduction to Multiplexing wherein a trade-off existed between the number of microcontroller pins used and time. It was put to use to control several seven segment displays. Next in line were the concepts of high side and low side switching. Its common application in multi-storeyed building staircase system was highlighted.
Sir introduced a modulation technique, known as Pulse Width Modulation (PWM) which involves successive train of pulses of varying duty cycles in contrast to continuously varying analog signals. Its analog and digital implementations along with its significance in LED intensity control and motor speed control were explored.
Track A - MSP430
In the afternoon session, the participants worked on input-output interfacing. The user input was recorded through a push button switch and the on-board LED toggled accordingly.
Track B - BeagleBone
Cape zero was mounted on the BBB and script file for blinking an led using bash was discussed as well as implemented.
Then, after snacks, the Python Adafruit library was installed in everyone’s BBB and a Python code was written to control the 7- segment display on cape zero. Finally, the class concluded with instructions on how to boot an operating system using SD card.
The last day of the second week of the internship, unlike the other days, had a special schedule. The morning lecture was taken by Professor Gadre. He began by reviewing the digital building blocks like counters, multiplexers, comparators. A PWM Generator was implemented using a basic counter and a comparator. The characteristics of a PWM signal, its frequency in relation to the clock frequency, its resolution were laid emphasis on. An activity that involved producing average voltage (after passing through a low pass filter of an appropriate frequency) was also undertaken. Next technique to be introduced was charlieplexing, a unique way of connecting more LEDs using a lesser number of GPIO pins. An amazing adaptation of this concept, a charlieplexed 2-1/2 digit display project was also shown. Numerous ADCs like SAR ADC, Flash Type ADC were discussed. Thereafter, sir moved on to programming insights
Passing the PWM signal through a low pass filter to produce correspoding analog voltage
Ham Radio Session
Post Lunch, a HAM RADIO sensitization lecture was hosted by Gaurav Tyagi, a licensed HAM, currently pursuing B.E. at NSIT. A HAM communicates and broadcasts information using Morse code to other amateurs for the purpose of entertainment and public service as in a case of natural calamity. Highlighting how amateur radio operation evolved as a hobby over the time and how it got licensed, some bandwidth of frequencies being owned by licensed HAMs, encouraged the participants to delve deeper into the world of radios and wireless communication technology. The examination procedure to obtain the license was also discussed
HAM radio session hosted by Gaurav Tyagi
Prof. J. Jena, Dean UG, addressing the gathering
Later, in the evening, the half-way point of the internship was celebrated in the form of an enthralling Golgappa and ice-cream party. It also promoted interaction within the participants. Prof. J. Jena, Dean Undergraduate Programme, NSIT, also joined in to interact with the participants