Micro-controller –Atmel AVR ATmega8 28-PDIP’
Crystal frequency—16.000000 MHz
HOW TO COMPILE AND UPLOAD LDMICRO PROGRAM FOR ATMEGA8
Proteus simulation for atmega8
1)Digital input and output
Pin D1 will be high when a digital high is given at pin D0
LADDER DIAGRAM:
|| ||
|| Xd0 Yd1 ||
1 ||——-] [————–( )——-||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
Xd0 | digital in | 2
Yd1 | digital out | 3
2) Input negated digital switch
Pin B0 in Microcontroller will be high when a digital low is given at pin B6
LADDER DIAGRAM:
|| ||
|| Xb0 Yb6 ||
1 ||——-]/[————–( )——-||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
Xb0 | digital in | 27
Yb6 | digital out | 28
3)TON TIMER
The pin RB5 will on after one second delay after program starts
LADDER DIAGRAM:
|| ||
|| Tnew YRB5 ||
1 ||–[TON 1.000 s]———( )——-||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
YRB5 | digital out | 19
Tnew | turn-on delay |
4)XOR Gate
LADDER DIAGRAM:
|| ||
|| XD0 XD1 YB5 ||
1 ||——-] [————–]/[——+——-( )——-||
|| | ||
|| XD0 XD1 | ||
||——-]/[————–] [——+ ||
|| ||
|| ||
|| ||
||——[END]—————————————-||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
XD0 | digital in | 2
XD1 | digital in | 3
YB5 | digital out | 19
5)OR Gate
LADDER DIAGRAM:
|| ||
|| XDO YB5 ||
1 ||——-] [——+——-( )——-||
|| | ||
|| XD1 | ||
||——-] [——+ ||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
XD1 | digital in | 3
XDO | digital in | 2
YB5 | digital out | 19
6) AND Gate
LADDER DIAGRAM:
|| ||
|| XD0 XD1 YPB5 ||
1 ||——-] [————–] [————–( )——-||
|| ||
|| ||
|| ||
||——[END]—————————————-||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
XD0 | digital in | 2
XD1 | digital in | 3
YPB5 | digital out | 19
7)ADC with digital output
LADDER DIAGRAM:
|| ||
|| A5 ||
1 ||——————–{READ ADC}—-||
|| ||
|| ||
|| ||
|| ||
|| [A5 <] YD3 ||
2 ||—–[ 500]————-( )——-||
|| ||
|| ||
|| ||
|| ||
|| [A5 >] YD4 ||
3 ||—–[ 499]————-( )——-||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
YD3 | digital out | 5
YD4 | digital out | 6
A5 | adc input | 28
8) UART
Send the letter “J” over uart
LADDER DIAGRAM:
|| ||
|| {A := } ||
1 ||-{ ‘J’ MOV}–||
|| ||
|| ||
|| ||
|| ||
|| A ||
2 ||—{UART SEND}—||
|| ||
|| ||
|| ||
||——[END]——||
|| ||
|| ||
9) Sending ADC result over UART
Here i have converted 10-bit ADC result into 8- bit data(ASCII code) by dividing by 4 for proper UART reading
LADDER DIAGRAM:
|| ||
|| A5 ||
1 ||——————–{READ ADC}—-||
|| ||
|| ||
|| ||
|| ||
|| {DIV B :=} ||
2 ||———–{ A5 / 4 }———–||
|| ||
|| ||
|| ||
|| ||
|| B ||
3 ||—{UART SEND}— ||
|| ||
|| ||
|| ||
|| ||
|| {D := } ||
4 ||——————{ 13 MOV}–||
|| ||
|| ||
|| ||
|| ||
|| D ||
5 ||—{UART SEND}— ||
|| ||
|| ||
|| ||
||——[END]———————–||
|| ||
|| ||
I/O ASSIGNMENT:
Name | Type | Pin
—————————-+——————–+——
A5 | adc input | 28
B | UART tx | 3
D | UART tx | 3