You are on page 1of 35

SHORT-TERM

INTERNSHIP
(Virtual)

ANDHRA PRADESH
STATE COUNCIL OF HIGHER EDUCATION
(A STATUTORY BODY OF GOVERNMENT OF ANDHRA PRADESH)
PROGRAM BOOK FOR

SHORT-TERMINTERNSHIP
(Virtual)

Name of the Student: AYESHA AKTHAR SHAIK

Name of the College: SVR ENGINEERING COLLEGE

Registration Number: 20AM1A0408

Period of Internship: From: 10/05/2023 To: 18/07/2023

Name & Address of the Intern Organization: AICTE EDUSKILLS FOUNDATION (Microchip
University)
Student’s Declaration

I AYESHA AKTHAR SHAIK, a student of B.Tech Program, Reg. No. 20AM1A0408 of the
Department of ELECTRONICS & COMMUNICATION ENGINEERING, SVR
ENGINEERING COLLEGE do hereby declare that I have completed the mandatory internship
from MAY 2023 to JULY 2023 in AICTE-EDUSKILLS FOUNDATION under the Faculty
Guideship of Mr. N. Mohammad Mohasinul Huq MTech,(Ph.D.) Department of
ELECTRONICS & COMMUNICATION ENGINEERING, SVR ENGINEERING
COLLEGE.

(Signature and Date)

Endorsements

Faculty Guide

Head of the Department


INTERNSHIP REPORT
A report submitted in partial fulfilment of requirements for the Award of Degree of

BACHELOR OF TECHNOLOGY

in

ELECTRONICS & COMMUNICATION ENGINEERING

by

AYESHA AKTHAR SHAIK

Regd. No.: 2OAM1A0408

Under Supervision of

Mr. N. Mohammad Mohasinul Huq MTech,(Ph.D.)


Associate Professor, Dept. Of ECE

(Duration: 10th May, 2023 to 18th July, 2023)

Department of Electronics and Communication Engineering


SVR Engineering College
Approved by AICTE, permanently affiliated to JNTUA, Anantapur
NANDYAL, ANDHRA PRADESH
DEPARTMENT OF ELECTRONICS & COMMUNICATION ENGINEERING

SVR ENGINEERING COLLEGE


NANDYAL

CERTIFICATE

This is to certify that the “Internship report” submitted by AYESHA AKTHAR SHAIK (Regd. No.:
20AM1A0408) is work done by her and submitted during 2022–2023 academic year, in partial fulfilment
of the requirements for the award of the degree of BACHELOR OF TECHNOLOGY in
ELECTRONICS & COMMUNICATION ENGINEERING.

Department Internship Guide Head of The Department

Mr. N. Mohammad Mohasinul Huq MTech,(Ph.D.) Dr. G. Lakshmi Narayana, MTech, Ph.D.

Assoc. Professor Professor & HOD


Department of ECE Department of ECE
SVR Engineering College SVR Engineering College
Nandyal. Nandyal.
ACKNOWLEDGEMENT
First, I would like to thank AICTE-EDUSKILLS for giving me the opportunity to do a virtual
internship. It is indeed with a great sense of pleasure and immense sense of gratitude that I
acknowledge the help of these individuals.
I express deep gratitude to my guide Mr. N. Mohammad Mohasinul Huq MTech,(Ph.D.),
Associate Professor, Department of ECE, S.V.R Engineering College, for the guidance and for his
incessant help and encouragement throughout the course of internship.
His friendly and informal talks helped me to work under excellent working conditions. I would like
to express my gratitude to my internship coordinator K.LAKSHMINARASIMHA MTech (Ph.D.)
Assistant Professor in the Department of ECE, S.V.R Engineering College for the encouragement
throughout the course.
I am extremely thankful to the Head of the Department of ECE,
Dr. G. LAKSHMINARAYANA MTech, Ph.D., Electronics and Communication Engineering, S.V.R
Engineering College, for the encouragement and assistance provided to me, which contributed to the
successful completion of this internship.
I am thankful to our Principal Dr .P. MALLIKARJUNA REDDY Garu, who has encouraged and
motivated me to complete the internship by providing all necessary facilities to carry out the internship
work.
I am thankful to our Honourable chairman Sri S.VENKATA RAMI REDDY Garu, honourable
Managing Director Sri S.DINESH REDDY Garu for providing me with good faculty and for their
moral support throughout the course.
I thank all the staff of Electronics and Communication Engineering department who have directly or
indirectly helped me in many regards.
Finally, a word of gratitude to my family members and friends who have been a constant source of
encouragement and love.

AYESHA AKTHAR SHAIK


Regd. No.:20AM1A0408
Vision and Mission of the institute
Vision
To produce Competent Engineering Graduates & Managers with a strong base of Technical
& Managerial Knowledge and the Complementary Skills needed to be Successful
Professional Engineers & Managers

Mission
To fulfil the vision by imparting Quality Technical & Management Education to the
Aspiring Students by creating Effective Teaching/Learning Environment and providing the
State-of-the-Art infrastructure and Resources.

Vision and Mission of the Department


Vision
To produce highly skilled, creative and competitive Electronics and Communication
Engineers to meet the emerging needs of the society.

Mission
1. Impart core knowledge and necessary skills in Electronics and Communication
Engineering through innovative teaching and learning.
2. Inculcate critical thinking, ethics, lifelong learning and creativity needed for industry
and society.
3. Cultivate the students with all-round competencies, for career, higher education and
self- employability.
Program Educational Objectives (PEOs)
PEO1: Graduates apply their knowledge of mathematics and science to identify, analyse
and solve problems in the field of Electronics and develop sophisticated communication
systems.
PEO2: Graduates embody a commitment to professional ethics, diversity and social
awareness in their professional career.
PEO3: Graduates exhibit a desire for life-long learning through technical training and
professional activities.

Program Specific Outcomes (PSOs)


PSO1: Apply the fundamental concepts of electronics and communication engineering to
design a variety of components and systems for applications including signal processing,
image processing, communication, networking, embedded systems, VLSI and control
system.

PSO2: Select and apply cutting-edge engineering hardware and software tools to solve
complex Electronics and Communication Engineering problems.
SVR ENGINEERING COLLEGE
DEPARTMENT ELECTRONICSANDCOMMUNICATIONENGINEERING

PROGRAMOUTCOMEATTAINMENT
PO1 Apply the knowledge of mathematics, science, engineering fundamentals, and an engineering specialization to the solution of
.
complex Engineering problems

Identify, formulate, review research literature, and analyse Complex engineering problems reaching substantiated conclusions
PO2 using first principles of mathematics, natural sciences, and engineering sciences.

PO3 Design solutions for complex engineering problems and design system components or processes that meet the
specified needs with appropriate consideration for the public health and safety , and the cultural, societal , and
environmental considerations.

Ability to review research literature, use research methods to execute project and synthesize the problem to provide valid
PO4 conclusions.

PO5 Create, select, and apply appropriate techniques, resources, and modern engineering and IT tools including prediction and
modelling to complex engineering activities with an understanding of the limitations.

Apply reasoning informed by the contextual Knowledge to assess societal, health, safety, legal and cultural issues and the
PO6 consequent responsibilities relevant to the professional engineering practice.

Understand the impact of the professional engineering solutions in societal and environmental contexts, and demonstrate the
PO7 knowledge of, and need for sustainable development.

PO8 Apply ethical principles and commit to professional ethics and responsibilities and norms of the engineering practice.
PO9 Function effectively as an individual, and as a member or leader in diverse teams, and in multidisciplinary settings.

PO10 Communicate effectively on complex engineering activities with the engineering community and with society at large,
such as, being able to comprehend and write effective reports and design documentation, make effective presentations,
and give and receive clear instructions.

Demonstrate knowledge and understanding of the engineering and management principles and apply these to one’s own work,
PO11
as a member and leader in a team, to manage projects and in multidisciplinary environments.

Recognize the need for, and have the preparation and ability to engage in independent and life-long learning in the broadest
PO12 context of technological change.

PSO1 Analyse and implement applications in the field of communications, Embedded systems and VLSI design

Identify indigenous processes and components for producing high quality, compact, energy efficient and eco-friendly solutions
PSO2 at affordable prices.

TITLE PO PO PO PO PO PO PO PO PO PO PO PO PSO1 PSO 2


1 2 3 4 5 6 7 8 9 11
10 12
Embedded Virtual 2 3 3 3 3 1 2 1 2 3 3 2 3 3
Developer Virtual
Internship

iv
ABSTRACT

This virtual internship in embedded development encapsulates a comprehensive exploration


into the realm of embedded systems. Undertaken in a remote capacity, the internship aimed to bridge
theoretical knowledge with practical application in the field. The scope encompassed various facets
of embedded systems, including firmware development, hardware integration, and real-time
programming.

Throughout the internship, a structured approach was employed to delve into the design,
development, and testing of embedded systems. Tasks revolved around coding in low-level
languages, interfacing with hardware components, and implementing algorithms for efficient system
functionality. Emphasis was placed on understanding hardware constraints and optimizing software
for embedded devices.

Key findings reveal a hands-on understanding of microcontroller architectures, protocols, and


debugging techniques essential in embedded systems development. The internship facilitated the
honing of programming skills while tackling challenges associated with resource-constrained
environments.

In this Internship I undergo on a training with the following 12 courses from the Microchip
University platform. Those 12 Courses includes :
8Bit Microcontrollers: Architecture of the PIC16, Introduction to MPLAB X IDE
(includes blink LED), Getting Started with PIC16 MCUs using MICC and State Machines,
Syntax and Structures of C, Advanced C Programming, C Programming: Linked List Data
Structures, C Programming Callbacks, Advanced Embedded C Tips, Tricks, and Cautions,
Design Considerations for Your First IoT Project, Exploring Bluetooth Low Energy from First
Steps to Final App, Creating a Sensor Node for Azure IoT Central, Motor Control Workshop
using dsPIC® Digital Signal Controllers (DSC) Dual Core Devices.

This experience not only expanded technical proficiency but also fostered adaptability in
navigating remote collaborative environments. The conclusion underscores the invaluable insights
gained in the practical application of theoretical concepts within the realm of embedded systems,
paving the way for continued growth and innovation in this dynamic field.

v
INDEX
LEARING/INTERNSHIP OBJECTIVES……………………………………………………….1
WEEKLYOVERVIEWOFINTERNSHIPACTIVITIES……………………………………. …. 2

1. EXECUTIVE SUMMARY ............................................................................................................ 7

2. INTRODUCTION.......................................................................................................................... 8

2.1 Introduction to Embedded Systems: .............................................................................................. 8

2.2 Examples of Embedded Systems: .................................................................................................. 8

2.3 How does an Embedded System Work?: ....................................................................................... 9

2.4 Characteristics of Embedded Systems: ........................................................................................ 10

2.5 Structure of Embedded Systems: ................................................................................................. 10

2.6 Types of Embedded Systems: ...................................................................................................... 11

2.7 C-Programming for Embedded Systems: .................................................................................... 13

3. OVERVIEW OF THE ORGANIZATION ................................................................................ 14

3.1 Development Tools & Softwares: ................................................................................................ 15

4. INTERNSHIP PART ................................................................................................................... 17

5. CONCLUSION ............................................................................................................................ 20

6. PHOTOS OF INTERNSHIP ....................................................................................................... 21

6.1 Profile: ......................................................................................................................................... 21

6.2 Courses: ....................................................................................................................................... 21

6.3 Certificates: …………………………………………………………………………………….23

vi
LEARNING/INTERNSHIP OBJECTIVES

➢ Internships are generally thought of to be reserved for college students looking to gain
experience in a particular field. However, a wide array of people can benefit from Training
Internships in order to receive real world experience and develop their skills.
➢ An objective for this position should emphasize the skills you already possess in the area
and your interest in learning more.
➢ Internships are utilized in a number of different career fields, including architecture,
engineering, healthcare, economics, advertising and many more.
➢ Some internships are used to allow individuals to perform scientific research while others
are specifically designed to allow people to gain first-hand experience working.
➢ Utilizing internships is a great way to build your resume and develop skills that can be
emphasized in your resume for future jobs. When you are applying for a Training Internship,
make sure to highlight any special skills or talents that can make you stand apart from the
rest of the applicants so that you have an improved chance of landing the position.

1
WEEKLY OVERVIEW OF INTERNSHIP ACTIVITIES
1st WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

10/05/23 Wednesday Introduction to PIC16 Family Microcontrollers


Brief History of PIC16 Family
Block Diagram of PIC16F1x

11/05/23 Thursday Architecture :-


Program Memory
Data Memory
12/05/23 Friday Instruction Set :-
Single Cycle Operation
Byte and Bit Instructions

13/05/23 Saturday Literal and control Instructions


Inherent and C-Compiler Optimized Instructions
15/05/23 Monday Interrupt and Hardware Stack
16/05/23 Tuesday Special Features of PIC16

2nd WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

17/05/23 Wednesday
Introduction To MPLAB® X IDE

18/05/23 Thursday Projects :-


How to create and edit projects in MPLAB
Other ways to do things in MPLAB® X

19/05/23 Friday Code Development :-


Write your first program

20/05/23 Saturday The “_XTAL_FREQ” pre-processor macro

22/05/23 Monday Basic Debugging tools and methods

23/05/23 Tuesday Watchdog Timer

2
3rd WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

Getting Started with PIC16F1xxx

24/05/23 Wednesday MCUs using MCC and State


Machines

25/05/23 Thursday State Machines

26/05/23 Friday Implementation of State Machines Benefits


of State Machines

27/05/23 Saturday Initializing MPLABX Project using MCC


Blink an LED

29/05/23 Monday Use MCC to Initialize Timer


Interface Key Input
30/05/23 Tuesday Add a UART Interface
Interface an ADC and PWM

4th WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

31/05/23 Wednesday Introduction to Syntax and Structure of C

01/06/23 Thursday Variables


Literals & Constants

02/06/23 Friday Operators


Decisions
03/06/23 Saturday Loops
Functions

05/06/23 Monday Variables II


Arrays

06/06/23 Tuesday Pointers

3
5th WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

07/06/23 Wednesday Data Structures: Structures Unions


08/06/23 Thursday Data structures Pointers:-
Pointer Reviews
Pointers to Unions & Structures
Lab1
09/06/23 Friday Arrays of Pointers Lab2

10/06/23 Saturday Advanced Data structures Pointers:- Arrays of


Unions & Structures Lab 3
Function Pointers
Arrays of Function Pointers Lab 5
12/06/23 Monday State Machines: Enumerations
State Machines
Lab5
13/06/23 Tuesday Code Probability Lab6 Double
Pointers Lab7

6th WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

14/06/23 Wednesday Class Agenda and Types of Linked Lists


Linked Lists with Dynamic Memory Allocation
Lab1
15/06/23 Thursday Linked Lists without Dynamic Memory Allocation
Lab2
16/06/23 Friday Callback Basics: Callback
Components Lab1
17/06/23 Saturday Callbacks with Interrupts: Callbacks
with Interrupt Assist Lab 2
Callbacks Executed from Interrupts Lab 3

19/06/23 Monday Callbacks with Multiple Project Files: Callbacks


with Libraries and Object Files Lab 4
Callbacks with Hardware Drivers Lab 5

20/06/23 Tuesday Flexible Callbacks Setup:-


Callbacks with Setups like Harmony/MCC
Lab 6

4
10th WEEK DATE DAY NAME OF THE TOPIC/MODULE COMPLETED

12/07/23 Wednesday Motor Control Workshop using dsPIC®


Architecture of DSC X2C
Scope
13/07/23 Thursday Communication between the Cores
Hardware Configurations for The Labs
14/07/23 Friday Primary Program-Blinking LED

15/07/23 Saturday Forced Commutation:-


Overwie og BLDC Motor
Lab 2 Overview
17/07/23 Monday Working with 2 Cores
Make, Program and Get it Running
18/07/23 Tuesday Six Step Sensor less Algorithm: Sensor
Based Commutation Sensor less

6
1. EXECUTIVE SUMMARY
The Embedded Virtual Internship program is designed to offer participants an immersive and hands-
on experience in the field of embedded systems. The internship aims to equip individuals with
practical skills and knowledge essential for working in this dynamic and evolving technology domain.

Learning Objectives:
1. Understanding Embedded Systems Fundamentals: Participants will delve into the
foundational concepts of embedded systems, including microcontrollers, sensors, actuators, and
interfacing techniques.
2. Programming Embedded Systems: Through hands-on projects, interns will learn programming
languages commonly used in embedded systems, such as C/C++ and Assembly language, gaining
proficiency in writing efficient and optimized code.
3. Hardware and Software Integration: Exploring the integration of hardware and software
components, interns will learn to develop embedded systems solutions by combining both aspects
seamlessly.
4. Real-world Applications: Participants will work on practical projects simulating real-world
applications, including IoT devices, automotive systems, and consumer electronics.

Outcome Achieved:
1. Comprehensive Understanding of Embedded Systems: Interns gain a strong foundational
understanding of embedded systems, encompassing both theoretical knowledge and practical
application.
2. Proficiency in Embedded Programming: Participants acquire proficiency in programming embedded
systems, enabling them to write efficient code for various microcontroller architectures.
3. Hands-on Project Experience: Through engaging projects, interns develop a portfolio showcasing
their ability to design, develop, and implement embedded systems solutions.
4. Problem-solving and Troubleshooting Skills: Interns cultivate the ability to identify and troubleshoot
issues in embedded systems, honing their problem-solving capabilities.
5. Collaborative Work Skills: The internship fosters teamwork and collaboration, allowing participants
to work in virtual teams, simulating real-world industry scenarios.

7
2.INTRODUCTION
2.1 Introduction to Embedded Systems:
An embedded system is a combination of computer hardware and software designed for a
specific function. Embedded systems may also function within a larger system. The systems can be
programmable or have a fixed functionality. Industrial machines, consumer electronics, agricultural
and processing industry devices, automobiles, medical equipment, cameras, digital watches,
household appliances, airplanes, vending machines and toys, as well as mobile devices, are possible
locations for an embedded system.
While embedded systems are computing systems, they can range from having no user
interface (UI) - for example, on devices designed to perform a single task -- to complex graphical
user interfaces (GUIs), such as in mobile devices. User interfaces can include buttons, LEDs (light-
emitting diodes) and touchscreen sensing. Some systems use remote user interfaces as well.
Markets and markets, a business-to-business (B2B) research firm, predicted that the
embedded market will be worth $116.2 billion by 2025. Chip manufacturers for embedded systems
include many well-known technology companies, such as Apple, IBM, Intel and Texas Instruments.
The expected growth is partially due to the continued investment in artificial intelligence (AI),
mobile computing and the need for chips designed for high-level processing.

2.2 Examples of embedded systems :


Embedded systems are used in a wide range of technologies across an array of industries.
Some examples include:
• Automobiles. Modern cars commonly consist of many computers (sometimes as many as 100), or
embedded systems, designed to perform different tasks within the vehicle. Some of these systems
perform basic utility functions and others provide entertainment or user-facing functions. Some
embedded systems in consumer vehicles include cruise control, backup sensors, suspension control,
navigation systems and airbag systems.
• Mobile phones. These consist of many embedded systems, including GUI software and hardware,
operating systems (OSes), cameras, microphones, and USB (Universal Serial Bus) I/O (input/output)
modules.

8
• Industrial machines. They can contain embedded systems, like sensors, and can be embedded
systems themselves. Industrial machines often have embedded automation systems that perform
specific monitoring and control functions.
• Medical equipment. These may contain embedded systems like sensors and control mechanisms.
Medical equipment, such as industrial machines, also must be very user-friendly so that human health
isn't jeopardized by preventable machine mistakes. This means they'll often include a more complex
OS and GUI designed for an appropriate UI.

2.3 How does an embedded system work?


Embedded systems always function as part of a complete device -- that's what's meant by the term
embedded. They are low-cost, low-power-consuming, small computers that are embedded in other
mechanical or electrical systems. Generally, they comprise a processor, power supply, and memory
and communication ports. Embedded systems use the communication ports to transmit data between
the processor and peripheral devices -- often, other embedded systems -- using a communication
protocol. The processor interprets this data with the help of minimal software stored on the memory.
The software is usually highly specific to the function that the embedded system serves.

Fig. A photo of an embedded system motherboard with attached cables.


The processor may be a microprocessor or microcontroller. Microcontrollers are simply
microprocessors with peripheral interfaces and integrated memory included. Microprocessors use
separate integrated circuits for memory and peripherals instead of including them on the chip. Both
can be used, but microprocessors typically require more support circuitry than microcontrollers
because there is less integrated into the microprocessor. The term system on a chip (SoC) is often
used. SoCs include multiple processors and interfaces on a single chip.

9
They are often used for high-volume embedded systems. Some example SoC types are the
application-specific integrated circuit (ASIC) and the field-programmable gate array (FPGA).
Often, embedded systems are used in real-time operating environments and use a real-time operating
system (RTOS) to communicate with the hardware. In these instances, stripped-down versions of the
Linux operating system are commonly deployed, although other OSes have been pared down to run
on embedded systems, including Embedded Java and Windows IoT (formerly Windows Embedded).

2.4 Characteristics of embedded systems


The main characteristic of embedded systems is that they are task-specific.

Additionally, embedded systems can include the following characteristics:

⚫ typically, consist of hardware, software and firmware;

⚫ can be embedded in a larger system to perform a specific function, as they are built for specialized tasks
within the system, not various tasks;

⚫ can be either microprocessor-based or microcontroller-based -- both are integrated circuits that give the
system compute power;

⚫ are often used for sensing and real-time computing in internet of things (IoT) devices, which are
devices that are internet-connected and do not require a user to operate;

⚫ can vary in complexity and in function, which affects the type of software, firmware and hardware they
use; and are often required to perform their function under a time constraint to keep the larger system
functioning properly.

2.5 Structure of embedded systems


Embedded systems vary in complexity but, generally, consist of three main elements:

⚫ Hardware. The hardware of embedded systems is based around microprocessors and


microcontrollers. Microprocessors are very similar to microcontrollers and, typically, refer to a
CPU (central processing unit) that is integrated with other basic computing components such as
memory chips and digital signal processors (DSPs). Microcontrollers have those components built
into one chip.

⚫ Software and firmware. Software for embedded systems can vary in complexity. However, industrial-
grade microcontrollers and embedded IoT systems usually run very simple software that requires little
memory.
10
⚫ Real-time operating system. These are not always included in embedded systems, especially smaller-
scale systems. RTOSes define how the system works by supervising the software and setting rules during
program execution.

In terms of hardware, a basic embedded system would consist of the following elements:

⚫ Sensors convert physical sense data into an electrical signal.

⚫ Analog-to-digital (A-D) converters change an analog electrical signal into a digital one.

⚫ Processors process digital signals and store them in memory.

⚫ Digital-to-analog (D-A) converters change the digital data from the processor into analog data.

⚫ Actuators compare actual output to memory-stored output and choose the correct one.
The sensor reads external inputs, the converters make that input readable to the processor, and the processor
turns that information into useful output for the embedded system.

Fig. A diagram of the basic structure and flow of information in embedded systems.

2.6 Types of embedded systems


There are a few basic embedded system types, which differ in their functional requirements. They are:

⚫ Mobile embedded systems are small-sized systems that are designed to be portable. Digital cameras
are an example of this.
⚫ Networked embedded systems are connected to a network to provide output to other systems.

Examples include home security systems and point of sale (POS) systems.

11
⚫ Standalone embedded systems are not reliant on a host system. Like any embedded system, they
perform a specialized task. However, they do not necessarily belong to a host system, unlike other
embedded systems. A calculator or MP3 player is an example of this.

⚫ Real-time embedded systems give the required output in a defined time interval. They are often used
in medical, industrial and military sectors because they are responsible for time critical tasks.
A traffic control system is an example of this. Embedded systems can also be categorized by their
performance requirements:

⚫ Small-scale embedded systems often use no more than an 8-bit microcontroller.

⚫ Medium-scale embedded systems use a larger microcontroller (16-32 bit) and often link
microcontrollers together.
⚫ Sophisticated-scale embedded systems often use several algorithms that result in software and
hardware complexities and may require more complex software, a configurable processor and/or a
programmable logic array.
There are several common embedded system software architectures, which become necessary as embedded
systems grow and become more complex in scale. These include:
⚫ Simple control loops call subroutines, which manage a specific part of the hardware or embedded
programming.
⚫ Interrupt controlled systems have two loops: a main one and a secondary one. Interruptions in the
loops trigger tasks.
⚫ Cooperative multitasking is essentially a simple control loop located in an application programming
interface (API).
⚫ Pre-emptive multitasking or multithreading is often used with an RTOS and features synchronization
and task switching strategies.
Very large-scale integration, or VLSI, is a term that describes the complexity of an integrated circuit
(IC). VLSI is the process of embedding hundreds of thousands of transistors into a chip, whereas LSI
(large-scale integration) microchips contain thousands of transistors, MSI (medium scale integration)
contains hundreds of transistors, and SSI (small-scale integration) contains tens of transistors. ULSI,
or ultra-large-scale integration, refers to placing millions of transistors on a chip.
VLSI circuits are common features of embedded systems. Many ICs in embedded systems are VLSIs, and
the use of the VLSI acronym has largely fallen out of Favor.

12
2.7 C-Programming for Embedded Systems

The C Programming Language, developed by Dennis Ritchie in the late 60’s and early 70’s, is the
most popular and widely used programming language. The C Programming Language provided low
level memory access using an uncomplicated compiler (a software that converts programs to machine
code) and achieved efficient mapping to machine instructions.
The C Programming Language became so popular that it is used in a wide range of applications ranging
from Embedded Systems to Super Computers.
Embedded C Programming Language, which is widely used in the development of Embedded
Systems, is an extension of C Program Language. The Embedded C Programming Language uses the
same syntax and semantics of the C Programming Language like main function, declaration of
datatypes, defining variables, loops, functions, statements, etc.
The extension in Embedded C from standard C Programming Language include I/O Hardware Addressing,
fixed point arithmetic operations, accessing address spaces, etc.

13
3.OVERVIEW OF THE ORGANIZATION

Microchip Technology Incorporated is a multinational corporation


that designs and manufactures microcontroller, mixed signal, analog,
and Flash-IP integrated circuits. Founded in 1987 by Steve Sanghai,
Microchip has grown to become a prominent player in the
semiconductor industry, particularly known for its microcontroller and
embedded systems solutions.
Microchip offers a wide range of products catering to various
industries, including automotive, industrial, consumer, computing, and
communications. Their product portfolio includes microcontrollers,
analog and mixed-signal devices, memory products, wireless solutions, and more. Microchip is
renowned for its microcontroller products, encompassing a vast array of architectures and families.
These microcontrollers are used in a multitude of applications, from simple embedded systems to
complex IoT (Internet of Things) devices.

The company provides comprehensive embedded solutions, including development tools,


software, and development boards that aid engineers and developers in designing and prototyping
embedded systems. Over the years, Microchip has expanded its offerings through strategic
acquisitions. Notable acquisitions include Atmel Corporation in 2016, enhancing Microchip's
presence in microcontroller solutions, particularly in the AVR and ARM-based microcontroller space.
It serves a broad customer base, including small-scale developers, hobbyists, and large corporations.
Their focus on providing a diverse range of solutions enables them to cater to different market
segments.

Microchip has been dedicated to technological advancements and innovations. They invest in
research and development to introduce new products, improve existing ones, and stay competitive in
the ever-evolving semiconductor industry. With its headquarters in Chandler, Arizona, Microchip
operates globally with offices, design centres, and manufacturing facilities across different
continents, serving customers worldwide.

14
It offers extensive support to its customers through documentation, technical support, forums, and
communities that assist developers in using their products effectively. Their commitment to providing a
broad range of reliable and innovative solutions has solidified Microchip's position as a leading
semiconductor company in the embedded systems and microcontroller market.

Fig. Microchip Corporate Responsibility

3.1 Development Tools and Software

⚫ Microchip University :Get free training on our products 24 hours a


day, every day. We offer on-demand courses and live sessions on
general embedded control topics as well as Microchip, Atmel and
Microsemi products. Learn how to improve your business by using
our products to their full advantage.

⚫ MPLAB Cloud Tools Ecosystem : The MPLAB cloud tools


ecosystem is a complete online solution for users of all skill levels to
discover, configure, develop and debug embedded applications based
on PIC® and AVR® microcontrollers (MCUs).

15
⚫ MPLAB Analysis Tool Suite :MPLAB Analysis Tool Suite is a
collection of analysis tools integrated into the MPLAB X IDE. It supports all of our MCU,
MPU and CEC devices and offers a code coverage feature and a Motor Industry Software

Reliability Association (MISRA®) check in the IDE.

⚫ MPLAB® ICE 4 In-Circuit Emulator, Programmer and


Debugger :The MPLAB ICE 4 in-circuit emulator system boosts
productivity with feature-rich programming and debugging for
PIC®, AVR® and SAM devices and dsPIC® Digital Signal
Controllers (DSCs). It offers a flexible development environment
combined with the capabilities to develop power-efficient code while reducing the debug time.

⚫ MPLAB® PICkit™ 5 In-Circuit Debugger :The MPLAB® PICkit™ 5 in circuit


debugger/programmer enables quick prototyping and portable, production ready
programming for all Microchip devices, including PIC® microcontrollers (MCUs)
and dsPIC® Digital Signal Controllers (DSCs), AVR® and SAM devices and
Arm® Cortex®-based microprocessors (MPUs).

⚫ MPLAB® ICD 5 In-Circuit Debugger/Programmer :The


MPLAB® ICD 5 In-Circuit Debugger/Programmer offers advanced
connectivity and power options for developers of designs based on
PIC®, AVR® and SAM devices and dsPIC® Digital Signal Controllers
(DSCs). It debugs and programs with the powerful and easy-to-use graphical user interface of
MPLAB X Integrated Development Environment (IDE).

Fig. Awards Received by the Organization

16
4.INTERNSHIP PART
Process Document Link : https://tinyurl.com/Microchip-Internship

This link gives the detailed documentation of the internship.

The Embedded Developer Virtual Internship consists of the Following Courses:

1. 8 Bit Microcontroller: Architecture of the PIC16

a. Introduction

b. Architecture

c. Instruction Set

d. Interrupts

e. Special Features

2. Introduction To MPLAB® X IDE

a. Introduction

b. Projects

c. Code Development

d. Debugging

3. Getting Started with PIC16F1xxx MCUs using MCC and State Machines

a. State Machines

b. MCC Lab Session

4. Syntax and Structures of C

a. Introduction

b. Comments

c. Variables

d. Literals & Constants

e. Operators
17
f. Decisions

g. Loops

h. Functions

i. Variables II

j. Arrays

k. Pointers
5. Advanced C Programming

a. Introduction

b. Data Structures

c. Data Structure Pointers

d. Advanced Data Structure Pointers

e. State Machines

f. Code Probability and Double Pointers


6. C Programming: Linked List Data Structures

a. Linked List Overview

b. Dynamically Allocating Memory for Linked Lists

c. Allocating Linked List Memory Before Runtime

7. C Programming Callbacks

a. Callback Basics

b. Callbacks with Interrupts

c. Callbacks with Multiple Project Files

d. Flexible Callbacks Setup

8. Advanced Embedded C Tips, Tricks, and Cautions

a. Introduction

b. Tips and Tricks


18
c. Programming Cautions

9. Design Considerations for Your First IoT Project

a. Network Model

b. IoT Ecosystem

c. IoT Security Primer

d. Impact On the Project

10. Exploring Bluetooth® Low Energy (BLE) From First Steps to Final Application
a. Introduction
b. Out Of the Box Demo

c. Hardware

d. Demo Code

e. Project 1- Cable Replacement

f. Project 2- Remote Temp Sensor

g. Project 3- Data Logger

h. Project 4

11. Creating a Sensor Node for Azure IoT Central

a. Sensor Node

b. Connecting To Azure

12. Motor Control Workshop using dsPIC® Digital Signal Controllers (DSC) Dual Core Devices.
a. Introduction
b. Architecture
c. X2C Scope
d. Communication Between the Cores
e. Hardware Configurations for The LABs
f. Primary Program - Blinking LED
g. Forced Commutation
h. Six Step Sensor less Algorithms - Sensor Based Commutation
i. Six Step Sensor less Algorithms - Sensor less

19
5.CONCLUSION

As an Intern, I did course on the Internship that has introduced me to Embedded System
Design. In the introduction to this course, we defined an "embedded system" as a computer that is
part of a larger system, in which the capability to compute is not the larger system's primary
function. These computers are said to be "embedded" in the larger system. That, in itself, sets this
kind of programming apart from the more typical host-oriented programming. But the context also
implies fewer resources are available, especially memory and electrical power, as well as processor
power. Add to those limitations a frequent reliability requirement and you have a demanding context
for development.
An embedded system is typically a design that uses the power of a small microcontroller, like
the Microchip PIC, microcontroller (MCU). These microcontrollers combine a microprocessor unit
with some additional circuits called peripherals, plus some additional circuits, on the same chip to
make a small control module requiring few other external devices. This single device can then be
embedded into other electronic and mechanical devices for low-cost digital control. The purpose of
embedded systems is to control a specific function within a device. They are usually designed to only
perform this function repeatedly, but more developed embedded systems can control entire operating
systems.

Finally, we had learnt about the architecture of PIC16 and advanced level of C programming
that has been used for the coding in the Embedded system. We had learnt how to write and debug a
simple program and then how to test your code on an actual development board and also modifying
a baseline IoT sensor project to incorporate our own telemetry and how to use Microsoft Azure’s
IoT Central builder to create a dashboard to visualize the sensor values. The workshop also provided
two hands-on labs using a dsPIC33CH128MP508, which had covered censored BLDC (six step)
control, sensor less BLDC (six step) control and sensor less PMSM (Field Oriented) control. The
MPLAB X IDE to perform actual debugging on a microcontroller and execute some basic
debugging techniques.

20
6.PHOTOS OF INTERNSHIP
6.1 Profile

6.2 Courses

21
6.3 Certificates

22

You might also like