Day 16 of the workshop began with introduction to communication protocols. The protocols can be broadly classified into serial or parallel, wired or wireless, inter or intradevice, synchronous or asynchronous. The three important physical communication interfaces stressed upon were UART, I2C and SPI. UART is the oldest and most commonly used asynchronous serial communication protocol. Serial protocols RS232, RS422 and RS485, which are based on UART, were further discussed in detail followed by the introduction of PRNG (Pseudo Random Number Generator). It was seen that random number can be generated using LFSR (Linear Feedback Shift Register) or using the noise produced by electrical components like resistors and diodes by using them as ADC inputs.
Coding part of MSP430 continued and participants were given the all in one peripheral motherboard called “The Voyager”. A group of two people were given a board to work upon. The participants used the required input or output devices present in the board to directly make connections to their launch pads using connecting wires. The first activity involved using the ADC input from an LDR and displaying the intensity of light in the form of a bar graph on the 12 charlieplexed LEDs. The session concluded with the introduction of implementation of UART protocol.
VOYAGER-Peripheral interfacing experimenter board The VOYAGER is a starter kit for all the embedded enthusiasts who wish to interface a vast multitude of hardware components with their microcontroller, giving it the stature of a motherboard. It has been designed at CEDT, NSIT. All commonly used devices like LCD, 4 digit seven-segment display, shift registers, RTC, LDR etc. are provided on a single board which are simple to connect and use. The best thing about this board is that it can be used with any microcontroller that works on 5V or 3.3V.It is an easy-to-use handy product which requires to be uploaded with the desired code and you are good to go!
The session started with discussing the problems faced by the students in compiling and executing programmes on the BeagleBone. The reasons for the error messages were talked upon in detail, which gave a better insight into the working of the BBB and its operating system. This was followed by an introduction to the sys and signal libraries which are required to set the configuration of the BBIO pins to default. Device tree generator, which allows users to create files setting up the required pin configuration, was discussed briefly. Various other commands for further exploration and functionality control were discussed.