You are on page 1of 39

MC LC

PHN I .............................................................................................................................. 2
TNG QUAN TI ........................................................................................................ 2
1.

n giao thng: ....................................................................................................... 2

2.

L do chn ti: .................................................................................................... 2

3.

Ni dung thc hin: ................................................................................................. 2

PHN II ............................................................................................................................. 3
C S L THUYT ......................................................................................................... 3
S lc v vi iu khin: .......................................................................................... 3

I.
1.

Khi qut lch s: ................................................................................................. 3

2.

Phn bit Vi x l v Vi iu khin: ....................................................................... 4

II.

Tm hiu v ATmega8L: ....................................................................................... 8

1.

Tng quan: .......................................................................................................... 8

2.

Tm hiu chn v chc nng c bn. ...................................................................... 8

3.

Dao ng ngoi v reset : .................................................................................... 11

4.

Fuse bit .............................................................................................................. 11

III.

Led : .................................................................................................................. 12

IV.

Led 7 on : ....................................................................................................... 13
Ngn ng C, CodeVision v Progisp : .................................................................... 14

V.
1.

Ngn ng C :...................................................................................................... 14

2.

CodeVision : ....................................................................................................... 15

3.

Progisp : ............................................................................................................ 17

Phn III............................................................................................................................ 18
THIT K V THI CNG ................................................................................................ 18
Tnh ton v la chn linh kin : ............................................................................ 18

I.
1.

S khi ca mch : ......................................................................................... 18

2.

La chn linh kin trong mch ............................................................................ 18

3.

Nguyn l hot ng ca mch. .......................................................................... 20

II.

M phng : ........................................................................................................ 23

III.

Mch in: ............................................................................................................ 23

KT LUN ...................................................................................................................... 25
Ti liu tham kho: .......................................................................................................... 25
PH LC ........................................................................................................................ 26
Code chng trnh: ...................................................................................................... 26

PHN I
TNG QUAN TI
1. n giao thng:
n giao thng rt thng dng v quan trong cuc sng hng ngy ca chng
ta. K c ngy hay m, n vn m bo ngi tham gia giao thng an ton,
nhanh chng v gim ti tnh trng chen ln, kt xe, v.v.
2. L do chn ti:
n giao thng khng qu kh, cng khng qu d. n 2 cng l n m
chng ta mi ln u tip xc vi vi iu khin v lm. Bi th c th ni n
kh hp l chn n giao thng, ngoi ra cn v:
Nng cao s t tin cho sinh vin lm n tt nghip.
Gim thiu thi gian v cn tp trung nhng mn hc khc v cng vic.
Lm n th n ny cng tng i.
Ph bin, p dng thc t.
3. Ni dung thc hin:
Lm mch n giao thng ng t, s giy m l 29 cho n v 25 cho n
xanh, 3 giy n vng.
Ngn ng c s dng: C
Vi iu khin c s dng: Atmega8L
Phn mm: codevision, Progisp, Proteus.
M hinh thc t : c.

PHN II
C S L THUYT
I.

S lc v vi iu khin:

1. Khi qut lch s:


Ngy 15 thng 11 nm 1971: Intel t mt qung co cho b vi x l
n chip u tin, Intel 4004, trn t Electronic News (M)

Hnh 2.1: Vi x l u tin intel 4004


Khng lu sau Motorola, RCA, MOS Teachnology v Zilog gii
thiu cc b vi x l tng t, trong vi x l D2 ca Motorola, KIM1 ca MOS Technology v SDK-85 ca Intel l ng nh nht.
Nm 1976: Intel gii thiu 8748 v 8048, l nhng vi iu khin u
tin trn th gii, 8748 v cc IC tip theo nhanh chng tr thnh
chun cng nghip trong cc ng dng hng iu khin.
Nm 1980: Chip 8051 ra i - vi iu khin u tin ca h vi iu
khin MCS-51, nh du mt bc tin quan trng c v phc tp,
kch thc ln kh nng. Trn 60,000 transistor bao gm 4K byte ROM,
3

128 byte RAM, 32 ng xut nhp, 1 port ni tip v 2 b nh thi 16


bit trong mt IC n l mt iu ang ch lc by gi.
Cc dng vi iu khin thng dng v ni ting hin nay: 8051( bao
gm AVR), PIC v Motorola.
Ci nhn tng quan v vi iu khin(phn loi theo di thanh ghi):

Hnh 2.2: Cc loi vi iu khin


2. Phn bit Vi x l v Vi iu khin:
So snh

Vi x l

Vi iu khin

Ch tch hp nhng phn cng Tch hp c CPU v cc


V

phn thit yu nh CPU v nhng thit b ngoi vi: b nh,

cng

mch giao tip gia CPU v cc cc modul( bin i tng


CPU khc.

Tp lnh

t sang s),

X dng tp lnh bao qut, S dng cc lnh iu


4

mnh v kiu nh a ch, c khin xut nhp, c th


th truy xut d liu ln. Thc truy xut d liu dng
hin dng 4 bit, 1 byte, 2 bit hoc byte. Cc nhm
byte( word), 4 byte (double lnh chnh: chuyn d
word).

liu, iu khin logic, r


nhnh chng trnh, tnh
ton s hc v logic.
Trong cc h thng iu

p dng

Trong cc h my vi tnh

khin, o lng, iu
chnh

Bng 2.1 :So snh gia vi x l v vi iu khin.


a. Phn loi vi iu khin:
Theo di thanh ghi:
- Da vo di ca cc thanh ghi v cch lnh ca VK m ngi ta
chia ra cc loi VK 8bit,16 bit hay 32 bit
- Cc loi VK 16bit do c di lnh ln hn, nn cc tp lnh cng
nhiu hn, phong ph hn. Tuy nhin, bt c chng trnh no vit
bng VK 16bit chng ta iu c th vit trn VK 8bit vi chng
trnh thch hp.
Theo kin trc CISC v RISC:
- VXL hoc VK CISC l VK c tp lnh phc tp. Cc VK ny c
mt s lng ln cc lnh nn gip cho ngi lp trnh c th linh hot
v d dng hn khi vit chng trnh.
- VK RISC l VK c tp lnh n gin. Chng c mt s lng nh
cc lnh n gin. Do , chng di hi phn cng t hn, gi thnh
thp hn, v nhanh hn so vi CISC. Tuy nhin, n i hi ngi lp
trnh phi vit cc chng trnh phc tp hn, nhiu lnh hn.
Theo kin trc Harvard v kin trc Vonneumann:

- Vi iu khin bao gm cc linh kin in t kch thc micro hoc


nano, cc linh kin ny c kt hp vi nhau v c ni vi cc thit
b bn ngoi qua cc chn vi iu khin.
- Hai kin trc vi iu khin ph bin hin nay l kin trc Von Neumann
v kin trc Harvard. S khc bit ch yu gia hai kin trc ny, chnh
l vic t chc b nh d liu v b nh chng trnh. Kin trc Von
Neumann t chc b nh d liu v b nh chng trnh chung vi
nhau, chnh v vy, ng truyn (bus) ca kin trc Von Neumann l
ng truyn chung, iu ny lm cho VK gn nh hn, gi thnh nh
hn. Trong khi , kin trc Harvard s dng b nh ring bit - tch
ri b nh d liu v b nh chng trnh nn qu trnh truyn nhn d
liu n gin hn.
- Mi kin trc ny c mt li im ring r khc nhau. Kin trc Von
Neumann tn dng c ti nguyn b nh, trong khi kin trc
Harvard s t tc x l cao hn, mt khc ng truyn d liu v
ng truyn lnh iu khin (chng trnh) c th c dung lng khc
nhau.

b. V Atmel Corporation
c thnh lp vo nm 1984 bi George Perlegos ngi tng lm vic
cho Intel, Atmel Corporation l mt nh sn xut bn dn da trn tp trung
vo thit b nh, vi iu khin, cc sn phm tn s v tuyn, v cc thit b
ng dng c th. Atmel cung cp cc sn phm ph hp cho ngi tiu dng,
thng tin lin lc, mng my tnh, cng nghip, t, hng khng v tr, v
cc lnh vc qun s. Trong thp k qua, Atmel bt u tp trung nhiu
hn trn cc dng sn phm vi iu khin. Ngy nay, Atmel co hn $ 1 t
USD doanh thu hng nm, trong 60 % doanh thu ca h t vi iu khin
v l nh cung cp ln nht cc gii php cm bin cm ng.

c. V AVR:

AVR l chip vi iu khin 8 bit vi cu trc RISC( Reduced Instruction Set


Computer) cu trc tp lnh n gin ha- do Atmel pht trin vo nm
1996. Kin trc ca AVR c pht minh bi hai hc sinh hc vin cng
ngh Norwegian l Alf-Egil Bogen v Vegard Wollan.
AVR u tin l AT90S8515, cng c 40 chn ging h 8051, tuy nhin
ATmega8L ch c 28 chn. AVR c xy dng trn kin trc Harvard.
H AVR c th chia lm 6 nhm chnh:
- tinyAVR
- megaAVR
- XMEGA
- Application-specific AVR
- FPSLIC( AVR vi FPGA)
- 32-bit AVRs
AVR c nhiu chc nng thu ht ngi dng:
- Trong AVR tch hp sn xung clock cho chip ln n 8Mhz( 3% sai
s) nn chng ta c th s dng m khng cn thm bt k ph kin lin
quan no. Hoc nu s dng dao ng ngoi th ta c th dng thch
anh ln n 16MHz.
- Mt s AVR h tr lp trnh on-chip bng bootloader m khng cn
mch np, tuy nhin mch np AVR cng kh n gin.
- AVR c thit k tng thch vi ngn ng lp trnh C.
- Lp trnh vin c th lp trnh li nhiu ln vi dung lng ln thng
qua b nh Flash.
- Tch hp PWM 8bit hoc 16 bits timer/counter.
- C b chuyn i Analog-Digital phn gii 10 bits, nhiu knh.V.V..
Mt s chip AVR thng dng:
o AT90S1200
o AT89S2313
o AT90C8534
7

o ATtiny10, ATtiny11, ATtiny12


o ATmega 8
o ATmega16
o ATmega169
o AT86RF401 v.v
II.

Tm hiu v ATmega8L:

1. Tng quan:
Nh ni trn ATmega8 thuc h AVR do Atmel sn xut. Sau y chng
ta s tm hiu cc c trng ca ATmega8:
Hiu sut cao, nng lng cung cp thp.
S dng kin trc RISC hin i.
B nh ln, n nh cao:
o B nh Flash: 8 Kbytes.
o EEPROM: 512 Bytes.
o SRAM ni: 1 Kbyte.
o Chu k vit xa: 10.000 ln cho Flash/100.000 ln cho EEPROM.
o Kh nng duy try b nh: 20 nm 85 C v 100 nm 25 C.
o C kh nng bo mt chng trnh.
o 2 b nh thi timer/counter 8 bit
1 b nh thi timer/counter 16 bit.
3 knh PWM v 14 knh ADC.
23 ng xut nhp chng trnh.
Dng cung cp t 2.7V-5.5V
Dao ng ni tch hp: 0 8 MHz.
2. Tm hiu chn v chc nng c bn.

Hnh 2.3: Atmega8L

Hnh 2.4: s nguyn l Atmega8L


9

Chn, tn

M t

Chn 7- VCC

ngun cung cp 2.7 5.5 V

Chn 8, 22 GND:

Ni t.

Chn 9,10,1419.

Port xut nhp trc tip 8 bit vi in

PortB( PB0-PB7)

tr ko ln d c tch hp sn bn

XTAL1/TOSC1

trong.

XTAL2/TOSC2

XTAL1 v XTAL2 dng cho dao


ng thch anh ngoi.
TOSC1 v TOSC2 l u vo cho b
nh thi timer/couter2

Chn

2328,

1 Khc vi PortB, PortC ch c 7 bit

PortC( PC0PB5)

xut nhp vi in tr ko ln bn
trong. B
Khi ci t Fuse bit RSTDISBL cho
chng trnh, PortC.6 s dng nh l
chn xut nhp. Tuy nhin nu
RSTDISBL Fuse khng c ci t,
chn PortC.6 tr thnh chn reset.

Chn

26,

1113 PortD ging PortB c 8 bit xut nhp

PortD( PD0 PD7)

vi in tr ko ln bn trong.

Chn 20 Avcc

Cung cp ngun cho b chuyn i s


v tng t.

Chn 21 AREF

Chn so snh s cho b chuyn i s


& tng t. C ngha l mc in p
quy nh mc 1 s c da theo mc
in p trn chn ny.

Chn
ADC0ADC5

2328 L cc chn nhn tn hiu tng t t


bn ngoi sau so a bo b chuyn
10

i tng t/s(A/D)
Bng 2.2: Chc nng c bn ca cc chn ATmega8L
y chng ta khng nu chi tit v k cng v ATmega8L, v n ny
khng s dng cc tnh nng hay lin quan trc tip n vn . u ny
s tit kim thi gian ca thy c v n gin hn trong vic trao i thng
tin.
3. Dao ng ngoi v reset :
S dng thch anh ngoi :

Hnh 2.5: S dng thch anh ngoi


C1 v C2 nhn cng mt gi tr t 12pF n 22pF.
Mch reset:

Hnh 2.6 : mch reset cho ATmega8L


Reset ATmega8L hot ng tch cc mc thp
4. Fuse bit

11

Fuse bit l mt phn rt quan trng trong np chng trnh cho AVR, n
thng bo cho AVR bit rng, ngi s dng s la chn cc tnh nng, cng
nh thng s no AVR hot ng. Ni cch khc, nu ngi dng khng
bit Fuse bit th chng khc no chy xe m khng bit ln ga v vo s vy,
tnh trng ny dn n li chip v gy ra ti t cho h thng.
Khi xut xng, mt nh chip c FUSE s dng dao ng ni vi tn s
1MHz.
Sau y l cch Fuse bit c bn:
- WTDON : lun l 1- chng reset chip.
- Cu hnh thch anh :
o CKSEL0 = 1 & CKSEL3 = CKSEL2 = CKSEL1 = 0 : s dng thch
anh ni tn s 1MHz.
o CKSEL1 = 1 & CKSEL3=CKSEL2 = CKSEL0 = 0 : s dng thch
anh ni tn s 2MHz.
o CKSEL0 = CKSEL1 = 1& CKSEL3 = CKSEL2 = 0 : s dng thch
anh ni tn s 4MHz.
o CKSEL2 = 1 & CKSEL3=CKSEL1 = CKSEL0 = 0 : s dng thch
anh ni tn s 8MHz.
o CKSEL0 = CKSEL1=CKSEL2 = CKSEL3 = 1 : S dng thch anh
ngoi.
** Lu : Chng trnh s dng np y l PROGISP, cc thng s khc
iu gi nguyn nh mc nh.
III.

Led :
LED Light Emitting Diode( diode pht quang)- l diode c kh nng
pht ra cc bc sng khc nhau t hng ngoi n nh sng nhn thy,
c cu to t khi bn dn loi p ghp vi loi n. y chng ta s
dng 3 loi LED l xanh, vng v c trng cho n giao thng.
Loi LED

Bc sng

in th phn cc thun
12

Xanh

500<<590

2 2,8 V

Vng

570<<590

2 2,5 V

610<<760

1,4 1, 8 V

Bng 2.3 : in th v bc sng ca LED


IV.

Led 7 on :

LED 7 on thc cht l mt tp hp ca 8 LED n.

Hnh 2.7 : Cu to LED 7 on


Led 7 on c s dng y l loi cathode chung, loi anode chung cng
tng t.
1. Phm vi hot ng ti a tuyt i:
in p ngc 25 C : 5V
Dng thun nh 25 C = 150 mA trn 1 on led( hay c th gi l
mt n led nh)
Dng thun trung bnh 25 C = 25mA trn mt on.
Khong nhit mi trng c th hot ng : -40 C n 85 C.
Khi cch ngun nhit 1.6mm led c th chu c ngun nhit 250
C.
2. c trng s dng :
Cng sng ti 10mA trn mt on led : 125 cd.
Ti bc x nh, chiu di bc sng l : 655 nm.
rng ph : 20nm.
p thun n nh ti 20mA trn mt on : 1.7 V.
13

Dng ngc n nh :100A.


Cch kt ni thc t nh sau :
1E

2D

3 GND

4C

5 DP

6B

7A

8 GND

9F

10 G

Bng 2.4 : s chn LED

Hnh 2.8: Led 7 on


V.

Ngn ng C, CodeVision v Progisp :


1. Ngn ng C :

c pht trin t u nhng nm 1970 bi Ken Thompson v Dennis


Ritchie dng cho h iu hnh UNIX, ngn ng C nhanh chng tr nn ph
bin v thng dng.
y l ngn ng C c xem nh ngn ng bc trung v thuc tnh tng i
nh gn, gn vi phn cng v ging vi Assembler hn cc ngn ng bc
cao khc. Ngn ng C thun tin trong vic vit cc chng trnh ln vi s
li t, c bin dch v thi hnh trong hu ht cc my tnh
14

2. CodeVision :
L phn mm c pht trin bi hng HP InfoTech. Nhn vo slogan ca
hng chng ta cng c th nhn thy c mc h tr ngi dng ca
phn mm ny : Embedded tools that make the difference . Phn mm c
th chy trong cc h iu hnh window hin nay : XP, Vista, 7, 8 c 32 v 64
bit. S dng trnh bin dch C v h tr rt nhiu cho ngi dng bng nhng
cu lnh tch hp sn k c cho AVR v thit b ngoi vi nh : LCD, thit b
c cu trc I2C, SPI th nh FLASH, v.v

15

Hnh 2.9: th vin h tr CodeVision


Xem nhn trn chng ta thy bn cnh h tr C, CodeVision cn h tr nhiu
lnh cho thit b ngoi vi.
Bn cnh , ngi dng c th thit lp rt nhiu thng s bng vic s dng
CodeWizardAVR, vic ny nhm gim ti cng vic cho ngi lp trnh cng
nh gip ngi dng tip cn d dng hn. Xem hnh bn di.

16

Hnh 2.10: S dng CodeWizardAVR


3. Progisp :
Progisp l mt phn mm dng np code cho nhiu loi sn phm ca
Atmel nh : h 89, ATmeg, ATtiny

Hnh 2.11: Giao din chnh ca PROGISP

17

Phn III

THIT K V THI CNG


I.

Tnh ton v la chn linh kin :


1. S khi ca mch :

Hnh 3.1 : s khi ca mch


Khi iu khin y gm thnh phn chnh l ATmega8L, ngoi ra cn c
mch reset( khng dng thch anh ngoi, nn khng c mch dao ng ngoi)
2. La chn linh kin trong mch
a. Mch reset:
Nh hnh trnh by trn, mch reset bao gm:
- T phn cc 1 F
- in tr 330
- Nt nhn
Chng ta khng quan tm reset cnh ln hay cnh xung bi v trong mt ln
nhn cng tc bao gm c xung v ln.

b. LED:

18

Mch s dng 8 dy LED( mi dy gm 3 led: xanh, v vng), nhng tht


cht ch c 2 dy LED chnh. iu c ngha l mi 4 dy s ging
nhau( cng trng thi n nh nhau). Nu mc khng dng in tr:
Vi LED xanh p cp t 2 2,8V ni song song tng cp LED
xanh li vi nhau( ngun cp l 5 volt).

Hnh 3.2: Dng LED xanh khng tr


Tng t cho LED vng
Vi LED - 1,41,8V trong mch ta c 8 LED , ta c th dng 2
cp 3 LED v dng 2 LED cn li mc vi tr. Cch tnh tr:
Dng cung cp cho LED l 10 mA, p 5 volts, 2 LED = 2,8 3,6 Volts.
Vy dy in tr l :
Rmax = (5-2,8)/0.01 = 220
Rmin = (5-3,6)/0.01 = 140
y ta chn loi tr 150 ( ngoi th trng bn 2 loi trong dy ny l
220 v 150).
Nu mc LED song song th tnh ging nh trn( y ta khng lm loi
ny).

c. LED 7 on:

19

Tht cht LED 7 on l tp hp mt s LED n, khi vo mch ta xem n


nh l mt chm LED n song song. Nh trnh by trn p n nh cho
LED 7 on l 1,7 volts.
Vi ngun 5 volts, ta tnh tng t nh cho LED .
R = (5-1.7)/0.01 = 330
Ngoi th trng c loi tr loi 330 ny do ta chn loi ny.

Hnh 3.3: S dng in tr cho LED 7 on.

Tng hp bng danh sch linh kin:


Linh kin

S lng

ATmega8L

LED 7 on

LED

LED xanh

LED vng

T phn cc 1 F

Cng tc nhn

in tr 330

in tr 150

Bng 3.1: Danh sch linh kin.


3. Nguyn l hot ng ca mch.
Hot ng ca LED:
20

Hnh 3.4: S LED n


Nu mun LED no sng th ta chn chn kt ni vi Anode ca LED mc
1, chn cn li cathode mc 0. in p ngc y l 5 volts cho t nht
2 LED( xem cch kt ni trn), mc ny LED chu c.
Hot ng ca LED 7 on:
Nh trnh bi, chng ta c 8 LED 7 on, tuy nhin ch c 4 LED 7 on
hot ng khc nhau, 4 LED 7 on cn li tng t.
y ta s dng phng php qut, tc l s dng chn d liu chung, v
cho tng LED 7 on sng da vo vic ta chn chn chung cho LED 7 on
no. V d:

Hnh 3.5: LED 7 on trong mch


21

Mun LED 7 on 1 sng, ta truyn d liu ra PORT D, tt nhin tt c cc


LED 7 on iu nhn c d liu ny nhng chng ta ch xut d liu
PORTC0( mc thp).
Tng t cho cc LED 7 cn li. Nhng nu nh vy th lm sao chng ta c
th nhn thy tt c cc LED 7 on sng cng lc? Cch gii quyt l chn
tn s qut cao ln. C th mt ngi c thi gian lu nh t 1/25s 1/8s. Do
, nu trong vng 1/25s 1/8s ta qut qua ht 4 LED 7 on v bt u li
LED 1 th mt ta khng nhn ra c bt c LED 7 on no tt i v mt ta vn
cn lu li hnh nh v thi gian tnh t lc LED 7 on th nht sng ri
tr v chnh n gi l thi gian qut, hay chu k qut T. Trong thc t T >
4x1ms = 4ms cho mi ln qut v vi iu khin cn c thi gian x l ca
ring n. y tn s vi iu khin chn l 8Mhz, nu tn s thp qu, chng
hn 1 Mhz th tc x l ca vi iu khin rt chm thi gian sng mi
LED 7 on trong 1 chu k qut khng nhiu, iu ny c th lm mt ta
khng nhn c ra c nh sng, nu ta tng thi gian ln th chu k qut T
> chu k lu nh ca mt tng LED chp tt rt xu. y sau nhiu ln
thc nghim, kinh nghim chng ta chn chu k qut y l 1ms p
cho mi ln qut mi LED 7 on vi tn s qut ca vi iu khin l 8
Mhz.
Gi s mi LED 7 on sng tng trng cho mt xung, ta c gin xung
n gin d nhn v hnh dung nh sau.

Hnhv 3.6: tn s xung ca LED 7 on

22

II.

M phng :

Hnh 3.7: M phng bng Proteus.


V n giao thng ng t ging nhau theo tng cp, nn y chng ta ch
m phng hai ct giao thng khc nhau. Kt qu m phng rt tt, n LED
cng nh LED 7 on hin th v m s giao thng rt p.
III.

Mch in:

Hnh 3.8: Mch in hot ng ca Atmega8L

23

Hnh 3.9: Mch in ct n giao thng

24

KT LUN
T l thuyt n thc tin, mch hot ng tt. Thi gian hon thnh n
sm hn d nh. n hon thnh tt p m khng s dng n ri ro
d tinh( thi gian v chi ph).
ti hn ch ng t giao thng v thi gian khng c thay i theo gi.
V d gi cao im hot ng bao nhiu giy, nhng gi khc hot ng bao
nhiu giy v khi nhu cu khng nhiu, nh v m, th ch c n vng sng
nhp nhy bo hiu chy chm li. V th khi pht trin ti ln mc cao
hn, chng ta c th lm mch n giao thng ng 5 hoc ng 6 v thi gian
m c quy nh theo gi.

Ti liu tham kho:


http://www.hocavr.com
http://en.wikipedia.org/wiki/Wiki
http://www.alldatasheet.com
http://www.slideshare.net/thanhtoantran7106/chng-1-dai-cuong-vo-tuyen-truyen-hinh

25

PH LC
Code chng trnh:
Chip type

: ATmega8

Program type

: Application

AVR Core Clock frequency: 8,000000 MHz


Memory model

: Small

External RAM size

:0

Data Stack size

: 256

*****************************************************/

#include <mega8.h>
#include <delay.h>
#define PB0 0
#define PB1 1
#define PB2 0
unsigned

short

lenh[]=

{0x40,0x18,0x00,0x78,0x02,0x12,0x19,0x30,0x24,0x79,0x40};
unsigned short lenh1[]={0x24,0x79,0x40};
unsigned char i,j,l,h,k;

void main(void)
{
PORTB=0x00;
DDRB=0x00;
PORTC=0xFF;
DDRC=0x00;
PORTD=0xFF;
DDRD=0x00;
26

TCCR0=0x00;
TCNT0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00;
TIMSK=0x00;
UCSRB=0x00;
ACSR=0x80;
SFIOR=0x00;
ADCSRA=0x00;
SPCR=0x00;
TWCR=0x00;
DDRB = 0x00;
PORTB = 0;
delay_ms(200);
while (1)
{
//trang thai xanh1-do2
27

DDRB = 0x2E ;
PORTB = 0x24;
{
j=1;
for(l=5;l<11;l++)
{
i=0;
k=0;
for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X00;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x02;
PORTC=0x00;
PORTD=lenh[j];
delay_ms(1);
DDRC=0x04;
PORTC=0X00;
PORTD=lenh1[k];
delay_ms(1);
DDRC=0x08;
PORTC=0X00;
PORTD=lenh[l];
delay_ms(1);

}
j++;
}
28

{
j=7;
for(l=1;l<5;l++)
{
i=0;
k=1;
for(h=0;h<5;h++)
{
DDRC=0x01;
PORTC=0X00;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x02;
PORTC=0x00;
PORTD=lenh[j];
delay_ms(1);
DDRC=0x04;
PORTC=0X00;
PORTD=lenh1[k];
delay_ms(1);
DDRC=0x08;
PORTC=0X00;
PORTD=lenh[l];
delay_ms(1);

}
j++;
}
29

}
{

j=1;
for(l=5;l<11;l++)
{
i=1;

for(h=0;h<15;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[j];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[l];
delay_ms(1);

}
j++;
}
30

{
j=7;
for(l=1;l<5;l++)
{
i=1;
k=2;
for(h=0;h<20;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[j];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[k];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[l];
delay_ms(1);

}
j++;
}
31

}
{

j=1;
for(l=5;l<11;l++)
{
i=2;

for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[j];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[i];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[l];
delay_ms(1);

}
j++;
}
32

//trang thai vang1-do2


DDRB = 0x2B;
PORTB = 0x22;
{

for(i=7;i<11;i++)
{
for(j=0;j<10;j++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[i];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[i];
delay_ms(1);
}
}
}
33

//trang thai do1-xanh2


DDRB = 0x1D;
PORTB = 0x09;
{
j=1;
for(l=5;l<11;l++)
{

for(h=0;h<3;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[0];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[l];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[0];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[j];
delay_ms(1);

}
j++;
34

}
}

{
j=7;
for(l=1;l<5;l++)
{

for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[1];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[l];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[0];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[j];
delay_ms(1);

}
j++;
}
35

}
{

j=1;
for(l=5;l<11;l++)
{

for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[1];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[l];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[1];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[j];
delay_ms(1);

}
j++;
}
36

{
j=7;
for(l=1;l<5;l++)
{

for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[l];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[1];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[j];
delay_ms(1);
}
j++;
}
}
{
37

j=1;
for(l=5;l<11;l++)
{

for(h=0;h<10;h++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[l];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[j];
delay_ms(1);
}
j++;
}
}

//trang thai do1-vang2


38

DDRB = 0x35;
PORTB = 0x11;
{
for(i=7;i<11;i++)
{
for(j=0;j<10;j++)
{
DDRC=0x01;
PORTC=0X01;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x02;
PORTC=0x02;
PORTD=lenh[i];
delay_ms(1);
DDRC=0x04;
PORTC=0X04;
PORTD=lenh1[2];
delay_ms(1);
DDRC=0x08;
PORTC=0X08;
PORTD=lenh[i];
delay_ms(1);
}
}
}
}
}
39

You might also like