Task 1:Arduino is an open-source hardware and software company, project and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices and interactive objects that can sense and control both physically and digitally.
In this task, you are required to write a brief report about Arduino microcontroller.
The report contains following things:
- Major Features of the Arduino Controller .
- Overview of Ardunio Microcontroller with Working Principle and Design.
- Different Pins Available on Arduino Board( Digital Pins, Analog Pins, TX, RX and so on ).
- What Is Arduino & What Can You Do With It ?.
An interesting Project you can think can be made with the Help of Arduino.
Answer :- Major Features of the Arduino Controller
- Microcontroller ATmega1280 or 2560
- Operating Voltage 5V
- Input Voltage (recommended) 7-12V
- Input Voltage (limits) 6-20V
- Digital I/O Pins 54 (of which 14 provide PWM output)
- Analog Input Pins 16
- DC Current per I/O Pin 40 mA
- DC Current for 3.3V Pin 50 mA
- Flash Memory 128 KB or 256KB
- SRAM 8 KB
- EEPROM 4 KB
- Clock Speed 16 MHz
Overview of Ardunio Microcontroller with Working Principle and Design
Based on simple microcontroller boards, it is an open source computing platform that is used for constructing and programming electronic devices. … Arduino uses a hardware known as the Arduino development board and software for developing the code known as the Arduino IDE (Integrated Development Environment).
Different Pins Available on Arduino Board( Digital Pins, Analog Pins, TX, RX and so on ).
Arduino Uno is based on the ATmega328 by Atmel. The Arduino Uno pinout consists of 14 digital pins, 6 analog inputs, a power jack, USB connection and ICSP header. The versatility of the pinout provides many different options such as driving motors, LEDs, reading sensors and more.
Arduino Uno has 14 digital input/output pins (out of which 6 can be used as PWM outputs), 6 analog input pins, a USB connection, A Power barrel jack, an ICSP header and a reset button.
- Input/Output Pins: Digital Pins 0 – 13
- Analog Pins: A0 – A5
- PWM: 3, 5, 6, 9, 11
The converter has 10 bit resolution, returning integers from 0 to 1023. While the main function of the analog pins for most Arduino users is to read analog sensors, the analog pins also have all the functionality of general purpose input/output (GPIO) pins (the same as digital pins 0 – 13)
What Is Arduino & What Can You Do With It ?.
Technically, the Arduino is a programmable logic controller. … Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It’s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.
Task 2: Difference Between Micro Controller and Microprocessor ?.
Answer :- There is many diffrence between micro controller and microprocessor.
We must always be confused when you are asked about difference between microprocessors and microcontrollers.
The term microprocessor and microcontroller have always been confused with each other. Both of them have been designed for real time application. They share many common features and at the same time they have significant differences. both have IC’s . the microprocessor and microcontroller cannot be distinguished by looking at them. They are available in different version starting from 6 pin to as high as 80 to 100 pins or even higher depending on the features.
It’s like a small computer on a single IC. It contains a processor core, ROM, RAM and I/O pins dedicated to perform various tasks. Microcontrollers are generally used in projects and applications that require direct control of user. As it has all the components needed in its single chip, it does not need any external circuits to do its task so microcontrollers are heavily used in embedded systems and major microcontroller manufacturing companies are making them to be used in embedded market. A microcontroller can be called the heart of embedded system. Some examples of popular microcontrollers are 8051, AVR, PIC series of microcontrollers.
The Microprocessor is one type of simple electronic or computer devices which stores and process the data, not a desktop or computer hardware include one or few Integrated Circuits. It is similar to microcontroller, but does not have any peripheral devices like RAM, ROM, etc. The task of microprocessors is dependent on exterior circuits of peripherals. But there are not work for the specific task, but they are needed where the task is tough and complicated like games, software development, other applications that require high memory and also where I/O are not mentioned. The Microprocessor is called the heart of a computer system. For example, of the best Microprocessor are I3, Pentium, and I5 etc.
So what is the difference between microprocessor and microcontroller?
As now you are basically aware of what is a microcontroller and microprocessor, it would be easy to identify the major differences between a microcontroller and microprocessor.
- Key difference in both of them is presence of external peripheral, where microcontrollers have RAM, ROM, EEPROM embedded in it while we have to use external circuits in case of microprocessors.
- As all the peripheral of microcontroller are on single chip it is compact while microprocessor is bulky.
- Microcontrollers are made by using complementary metal oxide semiconductor technology so they are far cheaper than microprocessors. In addition the applications made with microcontrollers are cheaper because they need lesser external components, while the overall cost of systems made with microprocessors are high because of the high number of external components required for such systems.
- Processing speed of microcontrollers is about 8 MHz to 50 MHz, but in contrary processing speed of general microprocessors is above 1 GHz so it works much faster than microcontrollers.
- Generally microcontrollers have power saving system, like idle mode or power saving mode so overall it uses less power and also since external components are low overall consumption of power is less. While in microprocessors generally there is no power saving system and also many external components are used with it, so its power consumption is high in comparison with microcontrollers.
- Microcontrollers are compact so it makes them favorable and efficient system for small products and applications while microprocessors are bulky so they are preferred for larger applications.
- Tasks performed by microcontrollers are limited and generally less complex. While task performed by microprocessors are software development, Game development, website, documents making etc. which are generally more complex so require more memory and speed so that’s why external ROM, RAM are used with it.
- Microcontrollers are based on Harvard architecture where program memory and data memory are separate while microprocessors are based on von Neumann model where program and data are stored in same memory module.
Task 3: What is meant by MIPS? MIPS is a micro controller or Microprocessor ?.
Answer :- MIPS stand for ( million instructions per second )
The number of MIPS (million instructions per second) is a general measure of computing performance and, by implication, the amount of work a larger computer can do. For large servers or mainframes, MIPS is a way to measure the cost of computing: the more MIPS delivered for the money, the better the value. Historically, the cost of computing measured in the number of MIPS has been reduced by half on an annual basis for a number of years.
MIPS is a micro controller or Microprocessor :-
MIPS is a microcontroller
MIPS (Microprocessor without Interlocked Pipelined Stages is a reduced instruction set computer (RISC) instruction set architecture (ISA) developed by MIPS Computer Systems (an American company that is now called MIPS Technologies).
There are multiple versions of MIPS: including MIPS I, II, III, IV, and V; as well as five releases of MIPS32/64 (for 32- and 64-bit implementations, respectively). The early MIPS architectures were 32-bit only; 64-bit versions were developed later. As of April 2017, the current version of MIPS is MIPS32/64 Release 6. MIPS32/64 primarily differs from MIPS I–V by defining the privileged kernel mode System Control Coprocessor in addition to the user mode architecture.
Task 4: Discuss what types of Registers are available in MIPS, Instructions capabilities(what types of instruction are Performed by MIPS ) and ISA of theses instructions ?
Answer :- Register are used to quickly accept, store, and transfer data and instructions that are being used immediately by the CPU, there are various types of Registers those are used for various purpose.
There are three types of Registers :-
- Index register
- Memory Data Register
- Memory Buffer Register
What types of instruction are Performed by MIPS :-
MIPS Instruction Types
When MIPS instructions are classified according to coding format, they fall into four categories: R-type, I-type, J-type, and coprocessor. The coprocessor instructions are not considered here.
The classification below refines the classification according to coding format, taking into account the way that the various instruction fields are used in the instruction. The details of the execution activities and the required control signal values depend almost entirely on the instruction type in this classification.
- Non-Jump R-Type
- Immediate Arithmetic and Logic
- Non-Register Jump
- Register Jump
In the remainder of this web page, the instruction fetch and instruction decode activities are omitted since they are the same for all instructions. The PC update activity only shows updates beyond the standard PC increment (PC ← PC + 4).
ISA of theses instructions :-
An instruction set architecture (ISA) is an abstract model of a computer. It is also referred to as architecture or computer architecture. A realization of an ISA is called an implementation. An ISA permits multiple implementations that may vary in performance, physical size, and monetary cost (among other things); because the ISA serves as the interface between software and hardware. Software that has been written for an ISA can run on different implementations of the same ISA.