0% found this document useful (0 votes)
15 views44 pages

Embedded Systems Notes

The Embedded Systems course (EEE 221) for Year 2 Semester 1 focuses on programming microcontrollers, specifically the ATmega328P, using C/C++ and Arduino IDE. Students will gain hands-on experience in interfacing external devices and applying embedded system principles through practical applications. The course includes blended learning with online modules and in-person sessions, and assessment is based on coursework and a final exam.

Uploaded by

ibrahimluyombo25
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views44 pages

Embedded Systems Notes

The Embedded Systems course (EEE 221) for Year 2 Semester 1 focuses on programming microcontrollers, specifically the ATmega328P, using C/C++ and Arduino IDE. Students will gain hands-on experience in interfacing external devices and applying embedded system principles through practical applications. The course includes blended learning with online modules and in-person sessions, and assessment is based on coursework and a final exam.

Uploaded by

ibrahimluyombo25
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Course Name: Embedded Systems

Course Code: EEE 221


Course Level: Year 2 Semester 1
Contact Hours: 60 Credit Units: 4

Brief Description of Course: Embedded Systems are programmed to control the functionality of various
machines and devices. They offer reliability, cost-effectiveness, and flexibility for control applications.
Embedded Systems are prevalent in machines, domestic appliances, automobiles, and more.

This Embedded Systems course will provide hands-on experience in programming microcontrollers using
C/C++, interfacing with external devices, and developing embedded applications

Course Objectives:
1. Introduce students to the concepts and principles of Embedded Systems.

2. Familiarize students with the architecture and instruction set of the ATmega328P
microcontroller.

3. Develop skills in C/C++ programming for embedded systems using the Arduino IDE.

4. Explore interfacing techniques for connecting external devices to microcontrollers.

5. Implement practical applications of embedded systems in the local community.

Learning Outcomes: By the end of this course, students should be able to:
1. Apply the concepts and principles of Embedded Systems.

2. Describe the architecture and instruction set of the ATmega328P microcontroller.

3. Develop embedded system applications using C/C++ and the Arduino development
environment.

4. Implement interfacing techniques to connect sensors, actuators, and other devices to


microcontrollers.

Detailed Course Description:


1. Introduction (8 Lectures + 4 Practicals):
o Embedded Systems Fundamentals: An overview of embedded systems, their
applications, and design considerations.

o Microcontroller vs. Microprocessor: Comparison of key features and functionalities.

o ATmega328P Architecture: Memory organization, registers, and I/O ports.


o Introduction to the Arduino development board and IDE.

o Practical applications of embedded systems in the local community.

2. C/C++ Programming for Embedded Systems (8 Lectures + 4 Practicals):


o Introduction to C/C++: Basic syntax, data types, variables, operators, control flow
statements, and functions.

o Pointers and Memory Management: Understanding pointers, memory allocation, and


management techniques.

o Interfacing with Hardware: C/C++ constructs for accessing microcontroller peripherals


like I/O ports and timers.

o Arduino-specific programming techniques.

3. ATmega328P Programming and Interfacing (8 Lectures + 4 Practicals):


o Basic I/O Programming: Blinking LEDs, reading button presses, and interfacing with
sensors.

o Timers and Delays: Generating time delays and implementing periodic tasks using
timers.

o Serial Communication: Implementing UART communication using the ATmega328P.

o Interrupts: Understanding interrupt handling and priority in embedded systems.

o Bit Math and Direct Register Manipulation.

4. Advanced Interfacing Techniques (8 Lectures + 4 Practicals):


o Digital Input/Output (GPIO): Programming I/O ports for digital input and output
operations.

o Analog-to-Digital Converters (ADCs): Interfacing with analog sensors and converting


analog signals to digital values.

o Liquid Crystal Displays (LCDs): Controlling LCD displays for text and graphics output.

o Communication Protocols: I2C, SPI, and their applications.

o (Optional) Additional Interfacing Topics: Keypads, stepper motors, DC motors, real-time


clocks (RTCs).

Study Materials:
• Relevant textbooks, online resources, lecture slides, and development tools (C/C++ compiler,
ATmega328P development board, Arduino IDE).

Mode of Delivery: Blended learning combining online and in-person components:


• Online modules: Pre-recorded lectures, tutorials, and quizzes.
• In-person sessions: Interactive lectures, class discussions, hands-on laboratory exercises, project
presentations.

Mode of Assessment:

• Coursework (Assignments = 20%, Midterm Exam = 20%) = 40%

• Final Exam (60%)

• Total = 100%

Reading List:

1. Starting with Microcontrollers using C++ by JeeLabs (available online)

2. AVR Programming by Elliot Williams (available online)


Embedded System Introduction

Dr. I. Arul Rayappan


Associate Professor of Physics,
St. Joseph’s College (Autonomous),
Tiruchirappalli-620 002.

1
What is an embedded system?

According to the Institution of


Electrical Engineers, "A general
purpose definition of embedded
systems is that they are devices used
to control, monitor or assist the
operation of equipment, machinery,
or plant. 'Embedded' reflects the fact
that they are an integral part of the
system..." An embedded system is a
special-purpose computer system,
which is completely encapsulated by
the device it controls. An embedded
system has specific requirements
and performs pre-defined tasks,
unlike a general-purpose personal
computer.

2
Microcontrollers and Embedded System

Embedded Systems are a combination of Hardware


(microcontrollers) and Software (developed in
assembler, c, c++…) designed to perform a specific
function
An embedded product uses microcontrollers to do one
task and one task only.

3
What is a Microcontroller?

A microcontroller (often abbreviated MCU) is a single computer


chip (integrated circuit) that executes a user program, normally for
the purpose of controlling some device, hence the name
microcontroller.

The program is normally contained either in a second chip, called an


EPROM, or within the same chip as the microcontroller itself.

A microcontroller is normally found in devices such as microwave


ovens, automobiles, keyboards, CD players, cell phones, VCRs,
security systems, time & attendance clocks, etc.

4
Microprocessor Vs Microcontroller

Microcontrollers are used in devices that require some amount of


computing power but donot require as much computing power as that
provided by a complex (and expensive) 486, Pentium, i3 .. system
which generally requires a large amount of supporting circuitry (large
motherboards, hundreds of megabytes of RAM, hard drives, hard drive
controllers, video cards, etc).

A microwave oven just does not need that much computing power.
Microcontroller-based systems are generally smaller, more reliable,
and cheaper. They are ideal for the types of applications described
above where cost and unit size are very important considerations. In
such applications it is almost always desirable to produce circuits that
require the smallest number of integrated circuits, that require the
smallest amount of physical space, require the least amount of energy
, and cost as little as possible.

5
Microcontrolle
Ext int
r

interrupt

Address Bus (Uni dirctional)

CPU
Data Bus (Bi directional)

Control Lines

OSC

6
Microcontrolle
Ext int
r

interrupt
Timer0
Timer1
ROM RAM

CPU

Bus 4 I/o
control Serial
ports port
OSC

7
Simple comparison: Pentium vs. 8051
FEATURE 8051 PENTIUM COMMENT
Clock Speed 12Mhz. typical 1,000 MHz. 8051 internally divides
but 60MHz. ICs (1GHz.) clock by 12 so for 12MHz.
clock effective clock rate
available
is just 1MHz.

Address bus 16 bits 32 bits 8051 can address 216, or


64Kbytes of memory.
Pentium can address 232,
or
4 GigaBytes of memory.
Data bus 8 bits 64 bits Pentium’s wide bus
allows very fast data
transfers.
ALU width 8 bits 32 bits But - Pentium has
multiple 32 bit ALUs –
along with floating-point
units.
Applications Domestic Personal
appliances, Computers
Peripherals, And other high
automotive etc. performance
areas.
8
Power Small fraction of Tens of watts Pentium runs hot as
power consumption
Microcontroller Manufacturing Companies

There are FOUR major companies manufacturing


8 bit controllers
1. Motorola (6811)
2. Intel (8051 MCS51)
3. Zilog (Z8)
4. PIC (16X____) Microchip

9
Port Organization of MCS51

Port 1
Port 0
P1.0 – P1.7
P0.0 – P0.7

P1 P0

Port 3
Port 2
P3.0 – P3.7
P2.0 – P2.7

P3 P2

10
Port Assignments

Port 0 : Input/Output Port & AD0-AD7 for ext memory


Port 1 : Input/Output Port
Port 2 : Input/Output Port & A8-A15 for ext Memory
Port 3 : Input/Output Port
P3.0 : RxD
P3.1 : TxD
P3.2 : INTO’
P3.3 : INT1’
P3.4 : T0
P3.5 : T1
P3.6 : WR’
P3.7 : RD’
11
Simple Experiment in
Embedded system

12
A Circuit using 89c51
40
+5V

Pin 40 +vcc

9 20 Gnd
89c51 31
9 Reset
18 OSC1
19 OSC2
31 Ext Access

18

19 GND
20
13
Burglar alarm system hardware

14
Input circuit Output circuit
+ 5 volts a

f
b
g

input x
e c

d
normally closed
Switches are

e.g. 200 Ohm

If any switch is opened


Internal circuit within 7-segment
Input x goes high to indicate an display device. (Common cathode

alarm condition i.e. +5v input causes LED to light)

15
ALARM_1 Program flow chart
I ni ti al i se I /O
ports P 1 and P 3

R ead port P3

Y ES
A re al l
P 3 i nputs at 0

NO

S ound al ar m
B el l

16
ALARM_1 Program source code

ORG 0000h ; define memory start address 000


; Initialise the I/O ports
MOV P3, #0ffh ; write all ones to P3 to use as an input port
MOV P1, #00 ; all zeros to put P1 in a known output state
POLL:
MOV A, P3 ; read P3 to accumulator
CJNE A, #00h, ALARM ; if not all zeros then jump to ALARM
LJMP POLL ; else loop back to POLL
ALARM:
SETB P1.7 ; enable the BELL by setting P1.7 high
END_LOOP:
LJMP END_LOOP ; program just loops around here
END ; end of program

17
Hardware circuit with timing diagram for sound

18
Interactive Vehicle Tracking System

It is a system which can track the vehicles for its movement


through out the trip with GPS And GPRS.
The data collected at different data points are stored at the vehicle
itself and in the computers of respective data points then to the
server.

The Data are


vehicle number, started time, stop time, Fuel at, Date, Fuel
type, Qty, Amount, Balance, Driver ID …..

The Data Points are


the places where the interactive RF transmitter and
receivers are fixed say BPCL fuel stations.

19
At the data points

GPS & GPRS based RF transmitter and receivers (RF System) are
connected to a computers

GPS system is capable of interacting over area of 1 square metre

The GPS will transmit the data in


a periodic interval continuously
from the data point

20
Server
Block diagram of data locker

Receiver Memory

D i s p l a y
GPS & GPRS
Micro
Controller
Transmitter

sensors
Start/stop alarm

Load

Fuel
21
Block diagram of data point

Server

Receiver

GPS & GPRS SMS


Micro
Controller Printer
Transmitter

Pump

Pump link
circuit 22
Advantages

• Compatible with any SMART cards


• Data is stored at data point (fuel station computer) and at the vehicle
•Vehicle owners can verify trip data from their office
• Data can be online with server
• Data can be on auto SMS from vehicle(GSM/CDMA/GPRS)
• Owners of the vehicles and dealers are not at the dark, but given with lot of
information about their vehicles for analysis
• 100% automated system

23
Thank you
24
Microcontroller vs. Microprocessor & ATmega328P Architecture

Microcontroller vs. Microprocessor Comparison

Definition and Core Differences

• Microprocessor: A CPU on a single integrated circuit that requires external components


(memory, I/O interfaces) to function as a complete computer system

• Microcontroller: A complete computer system on a single chip, containing CPU, memory,


and I/O peripherals

Key Feature Comparison

Feature Microprocessor Microcontroller

Integration CPU only CPU + Memory + I/O

System Complexity Requires external components Self-contained system

Processing Power Higher Lower to moderate

Power
Higher Lower
Consumption

Cost Higher Lower

General computing, complex Embedded systems, specific


Application
calculations tasks

Memory External, typically larger Internal, limited

Size Larger system footprint Compact

Examples Intel Core i7, AMD Ryzen ATmega328P, PIC16F877A

Functionalities

• Microprocessor:

o High-performance computing

o Multi-tasking capabilities

o Complex data processing

o Used in personal computers, servers


• Microcontroller:

o Real-time control systems

o Dedicated task execution

o Low power consumption

o Used in embedded systems, IoT devices

ATmega328P Architecture

Overview

• 8-bit AVR RISC-based microcontroller

• Popular in Arduino boards (Arduino Uno)

• Manufactured by Atmel (now Microchip Technology)

Memory Organization

• Flash Memory: 32KB programmable flash memory

o Program storage

o Self-programmable

• SRAM: 2KB Static Random-Access Memory

o Data variables

o Stack and heap

• EEPROM: 1KB Electrically Erasable Programmable Read-Only Memory

o Non-volatile data storage

o ~100,000 write/erase cycles

Memory Map

• 0x0000 - 0x7FFF: Flash Program Memory

• 0x0060 - 0x00FF: I/O Registers

• 0x0100 - 0x08FF: SRAM

• Separate address space for EEPROM

Register Structure
General Purpose Registers

• 32 8-bit general purpose working registers (R0-R31)

• Fast access (single clock cycle)

• Last 6 registers (R26-R31) can be used as three 16-bit address pointers (X, Y, Z)

Special Function Registers

• Status Register (SREG): Contains flags (Zero, Carry, etc.)

• Stack Pointer (SP): Points to the stack in SRAM

• Program Counter (PC): Points to next instruction

I/O Ports

• Port B: 8-bit bidirectional port with internal pull-up resistors (pins 8-13 on Arduino Uno)

• Port C: 7-bit bidirectional port with internal pull-up resistors (analog inputs on Arduino
Uno)

• Port D: 8-bit bidirectional port with internal pull-up resistors (pins 0-7 on Arduino Uno)

I/O Port Structure

• Each port has three associated registers:

o Data Direction Register (DDRx): Sets pin as input or output

o Port Register (PORTx): Sets output value or activates pull-up resistor

o Pin Register (PINx): Reads input value

Peripheral Features

• Two 8-bit timers/counters (Timer0, Timer2)

• One 16-bit timer/counter (Timer1)

• Six PWM channels

• 6-channel 10-bit ADC

• Programmable Serial USART

• SPI Serial Interface

• Two-wire Interface (I²C compatible)


• Watchdog Timer

• Analog Comparator

• Interrupt capability on I/O pins

Clock and Timing

• Multiple clock sources: internal 8MHz RC oscillator, external crystal/resonator

• Default factory setting: 1MHz internal clock

• Arduino Uno configuration: 16MHz external crystal

These lecture notes cover the fundamental differences between microprocessors and
microcontrollers, as well as the detailed architecture of the ATmega328P microcontroller,
focusing on its memory organization, registers, and I/O ports.
Lecture 1: Introduction to C/C++ for Embedded Systems (Arduino Uno - ATmega328P)

1. Introduction

Embedded systems are specialized computing systems designed for dedicated functions. The
Arduino Uno, powered by the ATmega328P microcontroller, is widely used for embedded
applications due to its simplicity and versatility. C and C++ are the primary programming
languages used for Arduino development.

Why Use C/C++ for Arduino?

• Direct hardware access via registers and pointers.

• Efficient memory and resource management.

• High performance with a small footprint.

• Extensive libraries and community support.

• Compatible with embedded toolchains and microcontrollers.

2. Basic Syntax and Structure of an Arduino Sketch

A simple Arduino program (sketch):

void setup() {

[Link](9600);

[Link]("Hello, Arduino!");

void loop() {

// Main program execution (repeats indefinitely)

Key Components:

• void setup() – Runs once at the start of the program.

• void loop() – Runs repeatedly after setup() completes.

• [Link](9600); – Initializes serial communication at 9600 baud rate.


• [Link]() – Prints text to the serial monitor.

3. Data Types and Variables in Arduino (ATmega328P)

Basic Data Types

Data Type Size (Bytes) Description

char 1 Stores a single character (ASCII)

int 2 Stores integer values (-32,768 to 32,767)

long 4 Stores larger integers (-2,147,483,648 to 2,147,483,647)

float 4 Stores decimal numbers (single precision)

double 4 Same as float in ATmega328P

bool 1 Stores true or false values

byte 1 Stores values from 0 to 255

Variable Declaration

int sensorValue = 100;

float voltage = 3.3;

char letter = 'A';

bool isOn = true;

Constants in Arduino

#define LED_PIN 13 // Preprocessor constant

const int MAX_SPEED = 255; // Constant variable

4. Operators in C/C++ (Arduino)

Arithmetic Operators

+, -, *, /, %

int sum = 5 + 3; // 8
int remainder = 10 % 3; // 1

Comparison Operators

==, !=, >, <, >=, <=

if (sensorValue > 500) {

[Link]("High value detected");

Logical Operators

&& (AND), || (OR), ! (NOT)

if (sensorValue > 100 && isOn) {

[Link]("Condition met");

Bitwise Operators

&, |, ^, ~, <<, >>

int x = 5; // 0101 in binary

int y = x << 1; // Left shift (1010 in binary, which is 10 in decimal)

5. Control Flow Statements in Arduino

Conditional Statements

if (sensorValue > 500) {

[Link]("Sensor triggered");

} else {

[Link]("Normal state");

Switch Case

int mode = 2;

switch (mode) {
case 1:

[Link]("Mode 1");

break;

case 2:

[Link]("Mode 2");

break;

default:

[Link]("Unknown mode");

Loops in Arduino

For Loop

for (int i = 0; i < 5; i++) {

[Link](i);

While Loop

int count = 0;

while (count < 5) {

[Link](count);

count++;

Do-While Loop

int counter = 0;

do {

[Link](counter);

counter++;

} while (counter < 5);


6. Functions in Arduino (C/C++)

Functions help modularize code, making it more readable and reusable.

Function Declaration and Definition

int add(int a, int b) {

return a + b;

void setup() {

[Link](9600);

int sum = add(5, 3);

[Link](sum);

void loop() {}

Function Prototypes (Declaration Before Main Code)

int multiply(int, int);

void setup() {

[Link](9600);

int result = multiply(4, 2);

[Link](result);

int multiply(int x, int y) {

return x * y;
}

void loop() {}

7. Summary

• Arduino programs (sketches) are written in C/C++.

• A program consists of setup(), loop(), variables, and functions.

• Operators and control flow statements manage logical execution.

• Functions help in code reuse and organization.

Next Lecture: Memory management, pointers, and arrays in embedded C/C++ for Arduino.

8. Practical Exercise

Task 1: Read an analog sensor and print its value to the serial monitor.

void setup() {

[Link](9600);

void loop() {

int sensorValue = analogRead(A0);

[Link](sensorValue);

delay(1000);

Task 2: Control an LED using a button.

#define BUTTON_PIN 2

#define LED_PIN 13
void setup() {

pinMode(BUTTON_PIN, INPUT_PULLUP);

pinMode(LED_PIN, OUTPUT);

void loop() {

if (digitalRead(BUTTON_PIN) == LOW) {

digitalWrite(LED_PIN, HIGH);

} else {

digitalWrite(LED_PIN, LOW);

}
³

Complete List of ASCii codes [Link]


Format: PDF file
symbol
ascii code 0 NULL (Null character)
ascii code 1 SOH (Start of Header)
ascii code 2 STX (Start of Text)
ascii code 3 ETX (End of Text)
ascii code 4 EOT (End of Transmission)
ascii code 5 ENQ (Enquiry)
ascii code 6 ACK (Acknowledgement)
ascii code 7 BEL (Bell)
ascii code 8 BS (Backspace)
ascii code 9 HT (Horizontal Tab)
ascii code 10 LF (Line feed)
ascii code 11 VT (Vertical Tab)
ascii code 12 FF (Form feed)
ascii code 13 CR (Carriage return)
ascii code 14 SO (Shift Out)
ascii code 15 SI (Shift In)
ascii code 16 DLE (Data link escape)
ascii code 17 DC1 (Device control 1)
ascii code 18 DC2 (Device control 2)
ascii code 19 DC3 (Device control 3)
ascii code 20 DC4 (Device control 4)
ascii code 21 NAK (Negative acknowledgement)
ascii code 22 SYN (Synchronous idle)
ascii code 23 ETB (End of transmission block)
ascii code 24 CAN (Cancel)
ascii code 25 EM (End of medium)
ascii code 26 SUB (Substitute)
ascii code 27 ESC (Escape)
ascii code 28 FS (File separator)
ascii code 29 GS (Group separator)
ascii code 30 RS (Record separator)
ascii code 31 US (Unit separator)

ascii code 32 (Space)


ascii code 33 ! (Exclamation mark)
ascii code 34 " (Quotation mark ; quotes)
ascii code 35 # (Number sign)
ascii code 36 $ (Dollar sign)
ascii code 37 % (Percent sign)
ascii code 38 & (Ampersand)
ascii code 39 ' (Apostrophe)
ascii code 40 ( (round brackets or parentheses)
ascii code 41 ) (round brackets or parentheses)
ascii code 42 * (Asterisk)
ascii code 43 + (Plus sign)
³

ascii code 44 , (Comma)


ascii code 45 - (Hyphen)
ascii code 46 . (Dot , full stop)
ascii code 47 / (Slash)
ascii code 48 0 (number zero)
ascii code 49 1 (number one)
ascii code 50 2 (number two)
ascii code 51 3 (number three)
ascii code 52 4 (number four)
ascii code 53 5 (number five)
ascii code 54 6 (number six)
ascii code 55 7 (number seven)
ascii code 56 8 (number eight)
ascii code 57 9 (number nine)
ascii code 58 : (Colon)
ascii code 59 ; (Semicolon)
ascii code 60 < (Less-than sign)
ascii code 61 = (Equals sign)
ascii code 62 > (Greater-than sign ; Inequality)
ascii code 63 ? (Question mark)
ascii code 64 @ (At sign)
ascii code 65 A (Capital A)
ascii code 66 B (Capital B)
ascii code 67 C (Capital C)
ascii code 68 D (Capital D)
ascii code 69 E (Capital E)
ascii code 70 F (Capital F)
ascii code 71 G (Capital G)
ascii code 72 H (Capital H)
ascii code 73 I (Capital I)
ascii code 74 J (Capital J)
ascii code 75 K (Capital K)
ascii code 76 L (Capital L)
ascii code 77 M (Capital M)
ascii code 78 N (Capital N)
ascii code 79 O (Capital O)
ascii code 80 P (Capital P)
ascii code 81 Q (Capital Q)
ascii code 82 R (Capital R)
ascii code 83 S (Capital S)
ascii code 84 T (Capital T)
ascii code 85 U (Capital U)
ascii code 86 V (Capital V)
ascii code 87 W (Capital W)
ascii code 88 X (Capital X)
ascii code 89 Y (Capital Y)
ascii code 90 Z (Capital Z)
ascii code 91 [ (square brackets or box brackets)
³

ascii code 92 \ (Backslash)


ascii code 93 ] (square brackets or box brackets)
ascii code 94 ^ (Caret or circumflex accent)
ascii code 95 _ (underscore , understrike , underbar or low line)
ascii code 96 ` (Grave accent)
ascii code 97 a (Lowercase a )
ascii code 98 b (Lowercase b )
ascii code 99 c (Lowercase c )
ascii code 100 d (Lowercase d )
ascii code 101 e (Lowercase e )
ascii code 102 f (Lowercase f )
ascii code 103 g (Lowercase g )
ascii code 104 h (Lowercase h )
ascii code 105 i (Lowercase i )
ascii code 106 j (Lowercase j )
ascii code 107 k (Lowercase k )
ascii code 108 l (Lowercase l )
ascii code 109 m (Lowercase m )
ascii code 110 n (Lowercase n )
ascii code 111 o (Lowercase o )
ascii code 112 p (Lowercase p )
ascii code 113 q (Lowercase q )
ascii code 114 r (Lowercase r )
ascii code 115 s (Lowercase s )
ascii code 116 t (Lowercase t )
ascii code 117 u (Lowercase u )
ascii code 118 v (Lowercase v )
ascii code 119 w (Lowercase w )
ascii code 120 x (Lowercase x )
ascii code 121 y (Lowercase y )
ascii code 122 z (Lowercase z )
ascii code 123 { (curly brackets or braces)
ascii code 124 | (vertical-bar, vbar, vertical line or vertical slash)
ascii code 125 } (curly brackets or braces)
ascii code 126 ~ (Tilde ; swung dash)
ascii code 127 DEL (Delete)

ascii code 128 Ç (Majuscule C-cedilla )


ascii code 129 ü (letter "u" with umlaut or diaeresis ; "u-umlaut")
ascii code 130 é (letter "e" with acute accent or "e-acute")
ascii code 131 â (letter "a" with circumflex accent or "a-circumflex")
ascii code 132 ä (letter "a" with umlaut or diaeresis ; "a-umlaut")
ascii code 133 à (letter "a" with grave accent)
ascii code 134 å (letter "a" with a ring)
ascii code 135 ç (Minuscule c-cedilla)
ascii code 136 ê (letter "e" with circumflex accent or "e-circumflex")
ascii code 137 ë (letter "e" with umlaut or diaeresis ; "e-umlaut")
ascii code 138 è (letter "e" with grave accent)
³

ascii code 139 ï (letter "i" with umlaut or diaeresis ; "i-umlaut")


ascii code 140 î (letter "i" with circumflex accent or "i-circumflex")
ascii code 141 ì (letter "i" with grave accent)
ascii code 142 Ä (letter "A" with umlaut or diaeresis ; "A-umlaut")
ascii code 143 Å (Capital letter "A" with a ring)
ascii code 144 É (Capital letter "E" with acute accent or "E-acute")
ascii code 145 æ (Latin diphthong "ae" in lowercase)
ascii code 146 Æ (Latin diphthong "AE" in uppercase)
ascii code 147 ô (letter "o" with circumflex accent or "o-circumflex")
ascii code 148 ö (letter "o" with umlaut or diaeresis ; "o-umlaut")
ascii code 149 ò (letter "o" with grave accent)
ascii code 150 û (letter "u" with circumflex accent or "u-circumflex")
ascii code 151 ù (letter "u" with grave accent)
ascii code 152 ÿ (Lowercase letter "y" with diaeresis)
ascii code 153 Ö (letter "O" with umlaut or diaeresis ; "O-umlaut")
ascii code 154 Ü (letter "U" with umlaut or diaeresis ; "U-umlaut")
ascii code 155 ø (slashed zero or empty set)
ascii code 156 £ (Pound sign ; symbol for the pound sterling)
ascii code 157 Ø (slashed zero or empty set)
ascii code 158 × (multiplication sign)
ascii code 159 ƒ (function sign ; f with hook sign ; florin sign )
ascii code 160 á (letter "a" with acute accent or "a-acute")
ascii code 161 í (letter "i" with acute accent or "i-acute")
ascii code 162 ó (letter "o" with acute accent or "o-acute")
ascii code 163 ú (letter "u" with acute accent or "u-acute")
ascii code 164 ñ (letter "n" with tilde ; enye)
ascii code 165 Ñ (letter "N" with tilde ; enye)
ascii code 166 ª (feminine ordinal indicator )
ascii code 167 º (masculine ordinal indicator)
ascii code 168 ¿ (Inverted question marks)
ascii code 169 ® (Registered trademark symbol)
ascii code 170 ¬ (Logical negation symbol)
ascii code 171 ½ (One half)
ascii code 172 ¼ (Quarter or one fourth)
ascii code 173 ¡ (Inverted exclamation marks)
ascii code 174 « (Angle quotes or guillemets)
ascii code 175 » (Guillemets or angle quotes)
ascii code 176 ░
ascii code 177 ▒
ascii code 178 ▓
ascii code 179 │ (Box drawing character)
ascii code 180 ┤ (Box drawing character)
ascii code 181 Á (Capital letter "A" with acute accent or "A-acute")
ascii code 182 Â (letter "A" with circumflex accent or "A-circumflex")
ascii code 183 À (letter "A" with grave accent)
ascii code 184 © (Copyright symbol)
ascii code 185 ╣ (Box drawing character)
ascii code 186 ║ (Box drawing character)
³

ascii code 187 ╗ (Box drawing character)


ascii code 188 ╝ (Box drawing character)
ascii code 189 ¢ (Cent symbol)
ascii code 190 ¥ (YEN and YUAN sign)
ascii code 191 ┐ (Box drawing character)
ascii code 192 └ (Box drawing character)
ascii code 193 ┴ (Box drawing character)
ascii code 194 ┬ (Box drawing character)
ascii code 195 ├ (Box drawing character)
ascii code 196 ─ (Box drawing character)
ascii code 197 ┼ (Box drawing character)
ascii code 198 ã (Lowercase letter "a" with tilde or "a-tilde")
ascii code 199 Ã (Capital letter "A" with tilde or "A-tilde")
ascii code 200 ╚ (Box drawing character)
ascii code 201 ╔ (Box drawing character)
ascii code 202 ╩ (Box drawing character)
ascii code 203 ╦ (Box drawing character)
ascii code 204 ╠ (Box drawing character)
ascii code 205 ═ (Box drawing character)
ascii code 206 ╬ (Box drawing character)
ascii code 207 ¤ (generic currency sign)
ascii code 208 ð (Lowercase letter "eth")
ascii code 209 Ð (Capital letter "Eth")
ascii code 210 Ê (letter "E" with circumflex accent or "E-circumflex")
ascii code 211 Ë (letter "E" with umlaut or diaeresis ; "E-umlaut")
ascii code 212 È (letter "E" with grave accent)
ascii code 213 ı (lowercase dot less i)
ascii code 214 Í (Capital letter "I" with acute accent or "I-acute")
ascii code 215 Î (letter "I" with circumflex accent or "I-circumflex")
ascii code 216 Ï (letter "I" with umlaut or diaeresis ; "I-umlaut")
ascii code 217 ┘ (Box drawing character)
ascii code 218 ┌ (Box drawing character)
ascii code 219 █ (Block)
ascii code 220 ▄
ascii code 221 ¦ (vertical broken bar )
ascii code 222 Ì (letter "I" with grave accent)
ascii code 223 ▀
ascii code 224 Ó (Capital letter "O" with acute accent or "O-acute")
ascii code 225 ß (letter "Eszett" ; "scharfes S" or "sharp S")
ascii code 226 Ô (letter "O" with circumflex accent or "O-circumflex")
ascii code 227 Ò (letter "O" with grave accent)
ascii code 228 õ (letter "o" with tilde or "o-tilde")
ascii code 229 Õ (letter "O" with tilde or "O-tilde")
ascii code 230 µ (Lowercase letter "Mu" ; micro sign or micron)
ascii code 231 þ (Lowercase letter "Thorn")
ascii code 232 Þ (Capital letter "thorn")
ascii code 233 Ú (Capital letter "U" with acute accent or "U-acute")
ascii code 234 Û (letter "U" with circumflex accent or "U-circumflex")
³

ascii code 235 Ù (letter "U" with grave accent)


ascii code 236 ý (Lowercase letter "y" with acute accent)
ascii code 237 Ý (Capital letter "Y" with acute accent)
ascii code 238 ¯ (macron symbol)
ascii code 239 ´ (Acute accent)
ascii code 240 - (Hyphen)
ascii code 241 ± (Plus-minus sign)
ascii code 242 ‗ (underline or underscore)
ascii code 243 ¾ (three quarters)
ascii code 244 ¶ (paragraph sign or pilcrow)
ascii code 245 § (Section sign)
ascii code 246 ÷ (The division sign ; Obelus)
ascii code 247 ¸ (cedilla)
ascii code 248 ° (degree symbol )
ascii code 249 ¨ (Diaeresis)
ascii code 250 · (Interpunct or space dot)
ascii code 251 ¹ (superscript one)
ascii code 252 ³ (cube or superscript three)
ascii code 253 ² (Square or superscript two)
ascii code 254 ■ (black square)
ascii code 255 nbsp (non-breaking space or no-break space)

visit : [Link]

You might also like