Chuong 15_Ghep Noi 8255 - Smith.N Studio

Embed Size (px)

Citation preview

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    1/16

    ch-ng 15Php ghp 8031/51 vi 8255

    Nh- ni ch-ng 14 trong qu trnh ni ghp 8031/51 vi b nhngoi th hai cng P0 v P2 b mt. Trong ch-ng ny chng ta s trnh by lmth no m rng cc cng vo/ ra I/O ca 8031/51 bng vic ni n ti chp

    8255.15.1 Lp trnh 8255.Trong mc ny ta nghin cu 8255 nh- l mt trong nhng chp vo/ ra

    -c s dng rng ri nht. Tr-c ht ta m t nhng c tnh ca n v sau sch ra cch ni 8031/51 vi 8255 nh- th no?

    Hnh 15.1: Chp 8255.15.1.1.1 Cc chn PA0 - PA7 (cng A).

    C 8 bt ca cng A PA0 PA7 c th -c lp trnh nh- 8 bit u vohoc 8 bit u ra hoc c 8 bt hai chiu vo/ ra.S

    PB2

    PA3PA2PA1

    PA0P1.4P1.5GNDA1A0

    PA5PA6PA7WRRESED0

    VCC

    PA4123

    56

    4

    789

    1112

    10

    131415

    1718

    16

    1920

    403938

    3635

    37

    343332

    3029

    31

    282726

    2423

    25

    2221

    8255A

    D1D2D3D4D5D6D7

    PB7

    PB6PB5PB4PB3

    PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1

    PA

    PB

    PC

    8255

    A0A1

    RESETCS

    WR

    RD

    D7 D0

    15.1 Lp trnh 8255.Trong mc ny ta nghin cu

    8255 nh- l mt trong nhng chp vo/ra -c s dng rng ri nht. Tr-c htta m t nhng c tnh ca n v sau ch ra cch ni 8031/51 vi 8255nh- th no?15.1.1 Cc c tnh ca 8255.

    8255 l mt chp DIP 4 chn(xem hnh 15.1). N c 3 cng truy cp-c ring bit. Cc cng c tn A,B v C u l cc cng 8 bit. Cc cngny u c th lp trnh nh- cng uvo hoc u ra ring r v c th thayi mt cch nng ng. Ngoi ra, cccng 8255 c kh nng bt tay. Do vycho php giao din vi cc thit b khc

    cng c gi tr tn hiu bt tay nh- ccmy in chng hn. Kh nng bt tay ca8255 s -c bn ti mc 15.3.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    2/16

    Hnh 15.2: S khi ca 8255.

    15.1.1.2 Cc chn PB0 - PB7 (cng B).C 8 bit ca cng B c th -c lp trnh hoc nh- 8 bit u vo hoc 8 bit

    u ra hoc c 8 bit hai chiu vo/ ra.15.1.1.3 Cc chn PC0 - PC7 (cng C).

    Tt c 8 bit ca cng C (PC0 PC7) u c th -c lp trnh nh- cc bitu vo hoc cc bit u ra. 8 bit ny cng c th -c chia lm hai phn: Cc bitcao (PC4 PC7) l CU v cc bit thp (PC0 PC3) l CL. Mi phn c th -cdng hoc lm u vo hoc lm u ra. Ngoi ra tng bit ca cng C tPC0 PC7 cng c th -c lp trnh ring r.

    15.1.1.4 Cc chn RD v WR.y l hai tn hiu iu khin tch cc mc thp ti 8255 -c ni ti cc

    chn d liu RD v WR t8031/51 -c ni ti cc chn u vo ny.15.1.1.5 Cc chn d liu D0 - D7.

    Cc chn d liu D0 D7 ca 8255 -c ni ti cc chn d liu ca b viiu khin cho php n gi d liu qua li gia b vi iu khin v chp 8255.

    15.1.1.6 Chn RESET.y l u vo tn hiu tch cc mc cao ti 8255 -c dng xo thanhghi iu khin. Khi chn RESET -c kch hot th tt c cc cng -c khi toli nh- cc cng vo. Trong nhiu thit k th chn ny -c ni ti u raRESET ca bus h thng hoc -c ni ti t khng kch hot n. Cng nh-tt c cc chn u vo ca IC th n cng c th h.

    15.1.1.7 Cc chn A0, A1 v CS .

    Trong khi CS chn ton b chp th A0 v A1 li chn cc cng ring bit.Cc chn ny -c dng truy cp cc cng A, B, C hoc thanh ghi iu khintheo bng 15.1. L-u CS l tch cc mc thp.15.1.2 Chn ch ca 8255.

    Trong khi cc cng A, B v C -c dng nhp v xut d liu th thanhghi iu khin phi -c lp trnh chn ch lm vic ca cc cng ny. Cccng ca 8255 c th -c lp trnh theo mt ch bt k d-i y.

    1. Ch 0 (Mode0):y l ch vo/ ra n gin. ch ny cc cng A,B CL v CU c th -c lp trnh nh- u vo hoc u ra. Trong ch ny thtt c cc bit hoc l u vo hoc l u ra. Hay ni cch khc l khng c iukhin theo tng bit ring r nh- ta thy cc cng P0 P3 ca 8051. V aphn cc ng dng lin quan n 8255 u s dng ch vo/ ra n gin nynn ta s tp chung i su vo ch ny.

    2. Ch 1 (Mode1): Trong ch ny cc cng A v B c th -c dng nh-cc cng u vo hoc u ra vi cc kh nng bt tay. Tn hiu bt tay -c cp

    bi cc bit ca cng C (s -c trnh by mc 15.3).3. Ch 2 (Mode2): Trong ch ny cng A c th -c dng nh- cng vo/ra hai chiu vi kh nng bt tay v cc tn hiu bt tay -c cp bi cc bit cngC. Cng B c th -c dng nh- ch vo/ ra n gin hoc ch c bttay Mode1. Ch ny s khng -c trnh by trong ti liu ny.Ch BSR: y l ch thit lp/ xo bit (Bit Set/Reset). ch ny ch cnhng bit ring r ca cng C c th -c lp trnh (s -c trnh by mc15.3).

    Bng 15.1: Chn cng ca 8255.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    3/16

    CS A1 A0 Chn cng

    0 0 0 Cng A0 0 1 Cng B0 1 0 Cng C0 1 1 Thanh ghi iu khin1 x X 8255 khng -c chn

    Hnh 15.3:nh dng tiu khin ca 8255 (ch vo/ ra).15.1.3 Lp trnh ch vo/ ra n gin.

    Hng Intel gi ch 0 l ch vo/ ra c s. Mt thut ng -c dngchung hn l vo/ ra n gin. Trong ch ny th mt cng bt k trong A, B,C -c lp trnh nh- l cng u vo hoc cng u ra. Cn l-u rng trong ch

    ny mt cng cho khng th va lm u vo li va lm u ra cng mtlc.V d 15.1:

    Hy tm tiu khin ca 8255 cho cc cu hnh sau:Tt c cc cng A, B v C u l cc cng u ra (ch 0).PA l u vo, PB l u ra, PCL bng u vo v PCH bng u ra.

    Li gii:Thnh 15.3 ta tm -c:

    a)1000 0000 = 80H; b) 1001 000 = 90H15.1.4 Ni ghp 8031/51 vi 8255.

    Chp 8255 -c lp trnh mt trong bn ch va trnh by trn bngcch gi mt byte (hng Intel gi l mt tiu khin) ti thanh ghi iu khin

    ca 8255. Tr-c ht chng ta phi tm ra cc a ch cng -c gn cho mi cngA, B, C v thanh ghi iu khin. y -c gi l nh x cng vo/ ra (mapping).

    Nh- c th nhn thy thnh 15.4 th 8255 -c ni ti mt 8031/51 nh-

    th n l b nhRAM. vic s dng cc tn hiu RD v WR. Ph-ng phpni mt chp vo/ ra b nh v n -c nh x vo khng gian b nh. Hay nicch khc, ta s dng khng gian b nh truy cp cc thit b vo/ ra. V ly???do ny m ta dng lnh MOVX truy cp RAM v ROM. i vi mt 8255-c ni ti 8031/51 th ta cng phi dng lnh MOVX truyn thng vi n.iu ny -c th hin trn v d 15.2.

    1 = I/O Mode0 = BSRMode

    Mode Selection00 = Mode 001 = Mode 11x = Mode2

    Pont A1 = Input0 = Output

    Port C (UpperPC7 PCA)1 = Input0 = Output

    Mode Selcction0 = Mode 0

    1 =Mode 1

    Port B1 = Input0 = Output

    Port 0 (LowePC3 PCC)1 = Input0 = Output

    Group A Group A

    D7 D6 D5 D4 D3 D2 D1 D0

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    4/16

    V d 15.2:i vi hnh 15.4:

    a) Hy tm cc a ch vo/ ra -c gn cho cng A, B, C v thanh ghi iu khin.b) Hy lp trnh 8255 cho cc cng A, B v C thnh cc cng u ra.c) Vit mt ch-ng trnh gi 55H v AAH n cng lin tc.Li gii:a) a ch c s dnh cho 8255 nh- sau:

    A15

    A14

    A13

    A12

    A11

    A10

    A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

    x 1 x x x x x x x x x x x X 0 0 =4000HPA

    x 1 x x x x x x x x x x x X 0 1 =4000HPB

    x 1 x x x x x x x x x x x X 1 0 =4000HPC

    x 1 x x x x x x x x x x x X 1 1 =4000HCR

    b) Byte (t) iu khin cho tt c cc cng nh- u ra l 80H nh- -c tnh vd 15.1.c)

    MOV A, #80H ; T in khinMOV DPTR, # 4003H ; Np a ch cng ca thanh ghi iu khinMOVX @DPTR, A ; Xut t in khinMOV A, # 55H ; Gn A = 55

    AGAIN: MOV DPTR, # 4000H ; a ch cng PAMOVX @DPTR, A ; Ly cc bit cng PAINC DPTR ; a ch cng PBMOVX @DPTR, A ; Ly cc bt cng PBINC DPTR ; a ch cng PCMOVX @DPTR, A ; Ly cc bt cng PCCPL A ; Ly cc bt thanh ghi AACALL DELAY ; ChSJMP AGAIN ; Tip tc

    Hnh 15.4: Ni ghp 8051 vi 8255 cho v d 15.2.

    8051

    AD7

    P0.0

    P0.7

    ALE

    P3.7

    P3.6

    RD

    74LS373

    G

    OC

    QD

    A0

    A1

    AD0

    8255

    WR

    CS WR RDP2.7

    PA

    PB

    PCA1

    D7 D0A0

    D7

    D0

    A1

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    5/16

    V d 15.3:i vi hnh 15.5:

    a) Tm cc a ch cng vo ra -c gn cho cc cng A, B, C v thanhg ghi iukhin.b) Tm byte iu khin i vi PA bng u vo, PB bng u ra, PC bng u rac) Vit mt ch-ng trnh nhn d liu tPA gi n n c cng B v cng C.Li gii:a) Gi s tt cc cc bit khng dng n l 0 th a ch cng c s cho 8255 l1000H. Do vy ta c:

    1000H l PA; 1001H l PB; 1002H l PC v 1003H l thanh ghi iu khin.b) Tiu khin cho tr-ng hp ny l 10010000 hay 90H.c)

    MOV A, #90H ; PA l u vo, PB l u ra, PC l u raMOV DPTR, #1003H ; Np a ch cng ca thanh ghi iu khinMOVX @DPTR, A ; Xut t iu khinMOV DPTR, #1000H ; a ch PAMOVX A, @DPTR ; Nhn d liu t PAINC DPTR ; a ch PBMOVX @DPTR, A ; Gi d liu ra PB

    INC DPTR ; a ch PCMOVX @DPTR, A ; Gi d liu ra PC

    Hnh 15.5: Ni ghp 8051 ti 8255 cho v d 15.3.i vi v d 15.3 ta nn dng ch lnh EQU cho a ch cc cng A, B, C

    v thanh ghi iu khin CNTPORT nh- sau:APORT EQU 1000HBPORT EQU 1001HCPORT EQU 1002HCNTPORT EQU 1003H

    MOV A, #90H ; PA l u vo, PB l u ra, PC l u raMOV DPTR, #CNTPORT ; Np a ch ca cng thanh ghi iu khin

    8051

    AD7

    P0.0

    P0.7

    ALE

    P3.7

    P3.6

    RD

    74LS373

    G

    OC

    QD

    D0

    D7

    A0

    A1

    D0

    AD0

    A15

    A0

    A1

    8255

    WR

    CSWR

    D7

    RDP2.7

    PA

    PBPC

    RE

    A12

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    6/16

    MOVX @DPTR, A ; Xut t iu khinMOV DPTR, #CNTPORT ; a ch PAMOVX DPTR, APORT ; Nhn d liu PAINC A, @DPTR ; a ch PBMOVX DPTR ; Gi d liu ra PBINC DPTR ; a ch PCMOVX DPTR, A ; Gi d liu ra PC

    hoc c th vit li nh- sau:

    CONTRBYT EQU 90H Xc nh PA u vo, PB v PC u raBAS8255P EQU 1000H ; a ch c s ca 8255

    MOV A, #CONTRBYTMOV DPTR, #BAS8255P+3 ; Np a ch cng CMOVX @DPTR, A ; Xut t iu khinMOV DPTR, #BASS8255P ; a ch cng A...

    trong v d 15.2 v 15.3 ta s dng thanh ghi DPTR v a ch cs gn cho 8255 l 16 bit. Nu a ch c s dnh cho 8255 l 8 bit, ta c th sdng cc lnh MOVX A, @R0 v MOVX@R0, A trong R0 (hoc R1)

    gi a ch cng 8 bit ca cng. Xem v d 15.4, ch rng trong v d 15.4 ta sdng mt cng lgc n gin gii m a cha cho 8255. i vi h thng cnhiu 8255 ta c th s dng 74LS138 gii m nh- s trnh by v d 15.5.15.1.5 Cc b danh ca a ch (Addren Alias).

    Trong cc v d 15.4 v 15.4 ta gii m cc bt a ch A0 A7, tuy nhintrong v d 15.3 v 15.2 ta gii m mt phn cc a ch cao ca A8 A15.Vic gii m tng phn ny dn n ci gi l cc b danh ca a ch (AddressAliases). Hay ni cch khc, cng cng vt l ging nhau c cc a ch khcnhau, do vy cng mt cng m -c bit vi cc tn khc nhau. Trong v d15.2 v 15.3 ta c th thay i tt x thnh cc t hp cc s 1 v 0 khc nhauthnh cc a ch khc nhau, song v thc cht chng tham chiu n cng mt

    cng vt l. Trong ti liu thuyt minh phn cng ca mnh chng ta cn phi bom ghi ch y cc b danh a cha nu c sao cho mi ng-i dng bit-c cc a ch c sn h c th m rng h thng.V d 15.4:

    Cho hnh 15.6:a) Hy tm cc a ch cng vo/ ra -c gn cho cc cng A, B, C v thanh ghiiu khin.b) Tm tiu khin cho tr-ng hp PA l u ra, PB l u vo, PC PC3 l uvo v CP4 CP7 l u ra.c) Vit mt ch-ng trnh nhn d liu tPB v gi n ra PA. Ngoi ra, d liutPC1 -c gi n CPU.

    Li gii:a) Cc a ch cng -c tm thy nh- sau:

    BB CS A1 A0 a ch Cng

    0010 00 0 0 20H Cng A0010 00 0 1 21H Cng B0010 00 1 0 22H Cng C0010 00 1 1 23H Thanh ghi iu khin

    b) Tiu khin l 10000011 hay 83H.

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    7/16

    c)CONTRBYT EQU 83H ; PA l u ra, PB,PCL l u voAPORT EQU 20HBPORT EQU 21HCPORT EQU 22HCNTPORT EQU 23H

    ...MOV A, #CONTRBYT

    MOV A, #CONTRBYT ; PA, PCU l u ra, PB v PCL l u voMOV R0, #CNTPORT ; Np a ch ca cng thanh ghi iu khinMOVX @R0, A ; Xut t iu khinMOV R0, #BPORT ; Np a ch PBMOVX A, @R0 ; c PBDEC R0 ; Ch n PA (20H)MOVX @R0, A ; Gi n n PAMOV R0, #CPORT ; Np a ch PCMOVX A, @R0 ; c PCLANL A, #0FH ; Che phn caoSWAP A ; Trao i phn cao v thpMOVX @R0, A ; Gi n PCU

    Hnh 15.6: Ni ghp 8051 vi 8255 cho v d 15.4.V d 15.5:

    Hy tm a ch c s cho 8255 trn hnh 15.7.Li gii:

    GA B2G A2G C B A a ch

    A7 A6 A5 A4 A3 A2 A1 A0

    1 0 0 0 1 0 0 0 88H

    8051

    AD7

    P0.0

    P0.7

    ALE

    P3.7

    P3.6

    RD

    74LS373

    G

    OC

    QD

    D0

    D7

    A0

    A1

    D0

    AD0 A0

    A1

    8255

    WR

    CSWR

    D7

    RD

    PA

    PB

    PCL

    RES

    A2

    A7

    PCU

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    8/16

    Hnh 15.7:Gii m a ch ca 8255 s dng 74LS138.15.1.6 H 8031 vi 8255.

    Trong mt h thng da trn 8031 m b nh ch-ng trnh ROM ngoi lmt sbt buc tuyt i th s dng mt 8255 l rt -c tro n. iu ny ldo mt thc t l trong gii trnh phi ghp 8031 vi b nh ch-ng trnh ROMngoi ta b mt hai cng P0 v P2 v ch cn li duy nht cng P1. Do vy, vicni vi mt 8255 l cch tt nht c thm mt s cng. iu ny -c ch ra

    trn hnh 15.8.

    Hnh 15.8: Ni 8031 ti mt ROM ch-ng trnh ngoi v 8255.15.2 Ni ghp vi th gii thc.15.2.1 Phi ghp 8255 vi ng c bc.

    Ch-ng 13 ni chi tit v phi ghp ng c b-c vi 8051, y tatrnh by ni ghp ng c b-c ti 8255 v lp trnh (xem hnh 15.9).

    A2

    A3

    A4

    A5

    A6A7 G1

    A0

    A1

    Y28255

    A

    B

    C

    A2G

    B2G CS

    74LS138

    8031

    AD7

    P0.0

    P0.7

    ALE

    P3.7

    P3.6

    PSEN

    P2.7

    P2.0

    74LS373

    G

    OC

    D

    AD0

    WREA

    RD

    A0

    8255

    RESD7

    2864(2764)8K8

    ProgramRAM

    CE OE VCC

    D0

    RDWR

    VCC

    A1

    PA

    PB

    PC

    A0

    A0A8

    A12 A12

    A8

    A0

    A0

    D7

    D0

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    9/16

    Hnh 15.9: Ni ghp 8255 vi mt ng c b-c.Ch-ng trnh cho s ni ghp ny nh- sau:

    MOV A, #80H ; Chn t iu khin PA l u raMOV R1, #CRPORT ; a ch cng thanh ghi iu khinMOVX @R1, A ; Cu hnh cho PA u raMOV R1, #APORT ; Np a ch cng PAMOV A, #66H ; Gn A = 66H, chuyn xung ca ng c b-c

    AGAIN: MOVX @R1, A ; Xut chui ng c n PARR A ; Quay chui theo chiu kim ng hACALL DELAY ; ChSJMP AGAIN

    15.2.2 Phi ghp 8255 vi LCD.

    Hnh 5.10: Ni ghp 8255 vi LCD.Ch-ng 15.1:

    ; Ghi cc lnh v d liu ti LCD khng c kim tra c bn.; Gi s PA ca 8255 -c ni ti D0 D7 ca LCD v; IB RS, PB1 = R/W, PB2 = E ni cc chn iu khin LCD

    MOV A, #80H ; t tt c cc cng 8255 l u raMOV R0, #CNTPORT ; Np a ch thanh ghi iu khinMOVX @R0, A ; Xut t iu khinMOV A, #38H ; Cu hnh LCD c hai dng v ma trn 57

    ULN2003 Stepper Motor

    COMCOM

    16

    15

    14

    134

    3

    2

    1

    +5V

    PA0

    PA1

    PA2

    PA3

    0855D0

    D7

    A0A1

    from8051

    DecodingCircuyiry

    A2

    A7

    D0

    D7

    A0A1

    RD

    WR

    CS

    ULN2003 Conection for Stepper MotorPin 8 = GNDPin 9 = +5v

    Ch-ng trnh 15.1 trnh bycch xut cc lnh v d liu ti mtLCD -c ni ti 8255 theo s hnh 15.10. Trong ch-ng trnh 15.1ta phi t mt tr tr-c mi lnxut thng tin bt k (lnh hoc dliu) ti LCD. Mt cch tt hn lkim tra cbn tr-c khi xut bt kth g ti LCD nh- ni ch-ng12. Ch-ng trnh 15.2 lp li ch-ngtrnh 15.1 c s dng kim tra c

    bn. rng lc ny khng cnthi gian gi chm nh- v tr 15.1.

    0855D0PA0

    PA1

    PB0PB1

    PB2

    A7

    VCC

    VEE

    VSSRS R/W E

    LCD

    10KPOT

    RESET

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    10/16

    ACALL CMDWRT ; Ghi lnh ra LCDACALL DELAY ; Ch n ln xut k tip (2ms)MOV A, # 0EH ; Bt con tr cho LCDACALL CMDWRT ; Ghi lnh ny ra LCDACALL DELAY ; Ch ln xut k tipMOV A, # 01H ; Xo LCDACALL CMDWRT ; Ghi lnh ny ra LCDACALL DELAY ; Dch con tr sang phi

    MOV A, # 06 ; Ghi lnh ny ra LCDACALL CMDWRT ; Ch ln xut sauACALL DELAY ; Ghi lnh ny ra LCD... ; v.v... cho tt cmi lnh LCDMOV A, # 'N' ; Hin th d liu ra (ch N)ACALL DATAWRT ; Gi d liu ra LCD hin thACALL DELAY ; Ch ln xut sauMOV A, # '0' ; Hin th ch"0"ACALL DATAWRT ; Gi ra LCD hin thACALL DELAY ; Ch ln xut sau... ; v.v... cho cc d liu khc

    ; Ch-ng trnh con ghi lnh CMDWRT ra LCDCMDWRT: MOV R0, # APORT ; Np a ch cng A

    MOVX @R0, A ; Xut thng tin ti chn d liu ca LCDMOV R0, # BPORT ; Np a ch cng BMOV A, # 00000100B ; RS=0, R/W=1, E=1 cho xung cao xung thp

    MOVX @R0, A ; Kch hot cc chnRS, R/W, E ca LCDNOP ; To xung cho chn ENOPMOV A, # 00000000B ; RS=0, R/W=1, E=1 cho xung cao xung thp

    MOVX @R0, A ; Cht thng tin trn chn d liu ca LCDRET

    ; Ch-ng trnh con ghi lnh DATAWRT ghi d liu ra LCD.

    CMDWRT: MOV R0, # APORT ; Np a ch cng AMOVX @R0, A ; Xut thng tin ti chn d liu ca LCDMOV R0, # BPORT ; t RS=1, R/W=0, E=0 cho xung cao xung thpMOV A, # 00000101B ; Kch hot cc chn RS, R/W, EMOVX @R0, A ; To xung cho chn ENOPNOPMOV A, # 00000001B ; t RS=1, R/W=0, E=0 cho xung cao xung thpMOVX @RC, A ; Cht thng tin trn chn d liu ca LCDRET

    Ch-ng trnh 15.2:

    ; Ghi cc lnh v d liu ti LCD c s dng kim tra c bn.; Gi s PA ca 8255 -c ni ti D0 D7 ca LCD v; PB0 = RS, PB1 = R/W, PB2 = E i vi 8255 ti cc chn iu khin LCD

    MOV A, #80H ; t tt c cc cng 8255 l u raMOV R0, #CNTPORT ; Np a ch thanh ghi iu khinMOVX @R0, A ; Xut t iu khinMOV A, #38H ; Chn LCD c hai dng v ma trn 57ACALL NMDWRT ; Ghi lnh ra LCDMOV A, # 0EH ; Lnh ca LCD cho con tr btACALL NMDWRT ; Ghi lnh ra LCDMOV A, # 01H ;Xo LCD

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    11/16

    ACALL NMDWRT ; Ghi lnh ra LCDMOV A, # 06 ; Lnh dch con tr sang phiACALL CMDWRT ; Ghi lnh ra LCD... ; v.v... cho tt cmi lnh LCDMOV A, # 'N' ; Hin th d liu ra (ch N)ACALL NCMDWRT ; Gi d liu ra LCD hin thMOV A, # '0' ; Hin th ch"0"ACALL NDADWRT ; Gi ra LCD hin th

    ... ; v.v... cho cc d liu khc; Ch-ng trnh con ghi lnh NCMDWRT c hin th c bnNCMDWRT: MOV R2, A ; L-u gi tr thanh ghi A

    MOV A, #90H ; t PA l cng u vo c trng thi LCDMOV R0, # CNTPORT ; Np a ch thanh ghi iu khinMOVX @R0, A ; t PA u vo, PB u raMOV A, # 00000110B ; RS=0, R/W=1, E=1 c lnhMOV @R0, BPORT ; Np a ch cng BMOVX R0, A ; RS=0, R/W=1 cho cc chn RD v RS

    MOV R0, APORT ; Np a ch cng AREADY: MOVX @R0 ; c thanh ghi lnh

    RLC A ; Chuyn D7 (c bn) vo bit nhcarryJC READY ; Ch cho n khi LCD sn sngMOV A, #80H ; t li PA, PB thnh u raMOV R0, #CNTPORT ; Np a ch cng iu khinMOVX @R0, A ; Xut t iu khin ti 8255MOV A, R2 ; Nhn gi tr tr li ti LCDMOV R0, #APORT ; Np a ch cng AMOVX @R0, A ; Xut thng tin ti cc chn d liu ca LCDMOV R0, #BPORT ; Np a ch cng BMOV A, #00000100B ; t RS=0, R/W=0, E=1 cho xung thp ln caoMOVX @R0, A ; Kch hot RS, R/W, E ca LCDNOP ; To rng xung ca chn ENOP

    MOV A, #00000000B ; t RS=0, R/W=0, E=0 cho xung cao xung thpMOVX @R0, A ; Cht thng tin chn d liu LCDRET

    ; Ch-ng trnh con ghi d liu mi NDATAWRT s dng c bnNCMDWRT: MOV R2, A ; L-u gi tr thanh ghi A

    MOV A, #90H ; t PA l cng u vo c trng thi LCDMOV R0, # CNTPORT ; Np a ch thanh ghi iu khinMOVX @R0, A ; t PA u vo, PB u raMOV A, # 00000110B ; RS=0, R/W=1, E=1 c lnhMOV @R0, BPORT ; Np a ch cng BMOVX R0, A ; RS=0, R/W=1 cho cc chn RD v RS

    MOV R0, APORT ; Np a ch cng A

    READY: MOVX @R0 ; c thanh ghi lnhRLC A ; Chuyn D7 (c bn) vo bit nhcarryJC READY ; Ch cho n khi LCD sn sngMOV A, #80H ; t li PA, PB thnh u raMOV R0, #CNTPORT ; Np a ch cng iu khinMOVX @R0, A ; Xut t iu khin ti 8255MOV A, R2 ; Nhn gi tr tr li ti LCDMOV R0, #APORT ; Np a ch cng AMOVX @R0, A ; Xut thng tin ti cc chn d liu ca LCDMOV R0, #BPORT ; Np a ch cng BMOV A, #00000101B ; t RS=1, R/W=0, E=1 cho xung thp ln cao

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    12/16

    MOVX @R0, A ; Kch hot RS, R/W, E ca LCDNOP ; To rng xung ca chn ENOPMOV A, #00000001B ; t RS=1, R/W=0, E=0 cho xung cao xung thpMOVX @R0, A ; Cht thng tin chn d liu LCDRET

    15.2.3 Ni ghp ADC ti 8255.Cc b ADC -c trnh by ch-ng 12. D-i y mt ch-ng trnhch mt b ADC -c ni ti 8255 theo s cho trn hnh 115.11.

    MOV A, #80H ; T iu khin vi PA = u ra v PC = u voMOV R1, #CRPORT ; Np a ch cng iu khinMOVX @R1, A ; t PA = u ra v PC = u vo

    BACK: MOV R1, #CPORT ; Np a ch cng CMOVX A, @R1 ; c a ch cng C xem ADC sn sng ch-aANL A,, #00000001B ; Che tt c cc bt cng C xem ADC sn

    sng ch-aJNZ BACK ; Gi hin th PC0 che EOC

    ; Kt thc hi thoi v by gi nhn d liu ca ADC

    MOV R1, #APORT ; Np a ch PAMOVX A, @R1 ; A = u vo d liu t-ng t

    Cho n y ta -c trao i ch vo/ ra n gin ca 8255 v trnhby nhiu v d v n. Ta xt tip cc ch khc.

    Hnh 15.11: Ni ghp ADC 804 vi 8255.15.3 Cc ch khc ca 8255.15.3.1 Ch thit lp/ xo bit BSR.

    Mt c tnh duy nht ca cng C l cc bit c th -c iu khin ringr. Ch BSR cho php ta thit lp cc bit PC0 PC7 ln cao xung thp nh--c ch ra trn hnh 15.12. V d 15.6 v 15.7 trnh by cch s dng ch nynh- th no?

    D0

    D7

    DecodingCircuyiry

    A2

    A7

    D0

    D7

    PA0

    PA7

    PC0 INTR

    RESET

    8255

    VCCCLK R

    CLK IN

    Vin(+)

    Vin()

    A GND

    Vref/2

    GND

    CS

    10KPOT

    10k 150pF

    5VADC804

    RD

    WR

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    13/16

    Hnh 15.12: Tiu khin ca ch BSR.V d 15.6:

    Hy lp trnh PCA ca 8255 ch BSR th bit D7 ca t iu khinphi mc thp. PC4 mc cao, ta cn mt tiu khin l "0xxx1001" v mc thp ta cn "0xxx1000". Cc bt -c nh du x l ta khng cn quan tmv th-ng chng -c t v 0.

    MOV A, 00001001B ; t byte iu khin cho PC4 =1MOV R1, #CNTPORT ; Np cng thanh ghi iu khinMOVX @R1, A ; To PC4 = 1ACALL DELAY ; Thi gian gi chm cho xung caoMOV A, #00001000B ; t byte iu khin cho PC4 = 0MOVX @R1, A ; To PC4 = 0ACALL DELAY

    Hnh 15.13: Cu hnh cho v d 15.6 v 15.7.V d 15.7:

    Hy lp trnh 8255 theo s 15.13 :a) t PC2 ln caob) S dng PC6 to xung vung lin tc vi 66% y xung.

    Li gii:a) MOV R0, # CNTPORTMOV A, # 0XXX0101 ; Byte iu khinMOV @R0, A

    b)AGAIN: MOV A, #00001101B ; Chn PC6 = 1

    MOV R0, #CNTPORT ; Np a ch thanh ghi iu khinMOVX @R0, A ; To PC6 = 1ACALL DELAYACALL DELAYMOV A, #00001100B ; PC6 = 0

    0 x x x Bit Select S/R

    BSR

    Mode

    D7 D6 D5 D4 D3 D2 D1 D0

    Not Used.

    Generally = 0.

    000=Bit0 100=Bit4

    001 = Bit1 101=Bit5010 = Bit2 110=Bit6011 = Bit3 111=Bit7

    Set=1

    Reset=0

    DecodingCircuyiry

    A2

    A7

    D0

    D7

    CS

    WR

    RDRD

    WR

    A0A7 A7

    A0 PC4

    8255

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    14/16

    ACALL DELAY ; Thi gian gi chmSJMP AGAIN

    S

    s

    Hnh 15.14: Biu u ra ca 8255 ch 1.

    Hnh 15.15: Biu nh thi ca 8255 ch 1.15.3.2 8255 ch 1: Vo/ ra vi kh nng ny bt tay.

    Mt trong nhng c im mnh nht ca 8255 l kh nng bt tay vi cc

    thit b khc. Kh nng bt tay l mt qu trnh truyn thng qua li ca hai thitb thng minh. V d v mt thit b c cc tn hiu bt tay l my in. D-i y tatrnh by cc tn hiu bt tay ca 8255 vi my in.

    Ch 1:Xut d liu ra vi cc tn hiu bt tay.Nh- trnh by trn hnh 15.14 th cng A v B c th -c s dng nh-

    cc cng u ra gi d liu ti mt thit b vi cc tn hiu bt tay. Cc tnhiu bt tay cho c hai cng A v B -c cp bi cc bit ca cng C. Hnh 15.15biu nh thi ca 8255.

    PC4

    PC4

    PC7

    PC6

    INTEA

    PC6

    Port A Output

    PC1

    PC2

    INTEB

    PC0

    PB7

    PB0Port A Output

    PC4.5

    INTEB

    INTEA

    OBFAACKA

    OBFB

    ACKB

    PortA

    wit

    h

    HanshakeSig

    nals

    PortB

    with

    Hansha

    keSignals

    WR

    1 0 1/0 1 0 X1 0

    D7 D6 D5 D4 D3 D2 D1 D0

    PortB

    Output

    PortB

    Mode1

    PortB

    Output

    PortA

    Output

    PortA

    Mode1

    PortA

    Mode1

    I/OMode

    PC4.51=Input,0=Outpput

    ControlWordMode1Output

    D7 D6 D5 D4 D3 D2 D1 D0INTEB

    INTEB

    I/O

    I/O

    iNTEA

    StatusWordMode1Output

    INTEA

    OBFA

    OBFB

    INTEA is controlled by PC6 in BSRmodeINTEB is controlled by PC2 in BSRmode

    INTEB

    OBF

    WR

    ACK

    Output

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    15/16

    D-i y l cc phn gii thch v cc tn hiu bt tay v tnh hp l cachng i vi cng A, cn cng B th hon ton t-ng t.

    Tn hiu OBFa :y l tn hiu b m u ra y ca cng A -c tchcc mc thp i ra tchn PC7 bo rng CPU ghi 1 byte d liu ti cng A.Tn hiu ny phi -c ni ti chn STROBE ca thit b thu nhn d liu (chnghn nh- my in) bo rng n by gi c th c mt byte d liu tchtcng.

    Tn hiu ACKa : y l tn hiu chp nhn do cng A c mc tch ccmc thp -c nhn ti chn PC6 ca 8255. Qua tn hiu ACKa th 8255 bitrng tn hiu ti cng A -c thit b thu nhn ly i. Khi thit b nhn ly d

    liu i tcng A n bo 8255 qua tn hiu ACKa . Lc ny 8255 bt OBFa lncao bo rng d liu ti cng A by gi l d liu c v khi CPU ghi mt

    byte d liu mi ti cng A th OBFa li xung thp v.v...Tn hiu INTRa:y l tn hiu yu cu ngt ca cng A c mc tch cc

    cao i ra tchn PC3 ca 8255. Tn hiu ACK l tn hiu c di hn ch. Khi

    n xung thp (tch cc) th n lm cho OBFa khng tch cc, n mc thp mt

    thi gian ngn v sau tr nn cao (khng tch cc). S-n ln ca ACKkchhot INTRa ln cao. Tn hiu cao ny trn chn INTRa c th -c dng gych ca CPU. CPU -c thng bo qua tn hiu INTRa rng my in nhnbyte cui cng v n sn sng nhn byte d liu khc. INTRa ngt CPU ngngmi th ang lm v p n gi byte k tip ti cng A in. iu quan trng l

    ch rng INTRa -c bt ln 1 ch khi nu INTRa, OBFa v ACKa u mccao. N -c xo v khng khi CPU ghi mt byte ti cng A.

    Tn hiu INTEa:y l tn hiu cho php ngt cng A 8255 c th cmINTRa ngn n khng -c ngt CPU. y l chc nng ca tn hiu INTEa.N l mt mch lt Flip Flop bn trong thit k che (cm) INTRa. Tn hiuINTRa c th -c bt ln hoc b xo qua cng C trong ch BSR v INTEa lFlip Plop -c iu khin bi PC6.

    T trng thi: 8255 cho php hin th trng thi ca cc tn hiu INTR,OBF v INTE cho c hai cng A v B. iu ny -c thc hin bng cch ccng C vo thanh ghi tng v kim tra cc bit. c im ny cho php thc thithm d thay cho ngt phn cng.

    Hnh 15.16:u cm DB25.

    (hnh 15.17 m qu khng v c)

    Hnh 15.17:u cp ca my in Centronics.Bng 15.2: Cc chn tn hiu ca my in Centronics.

    1 13

    14 25

    Smith Nguyen Studio.

  • 8/2/2019 Chuong 15_Ghep Noi 8255 - Smith.N Studio

    16/16

    Chn s M t Chn s M t

    123456789

    10

    STROBED liu D0D liu D1D liu D2D liu D3D liu D4D liu D5D liu D6D liu D7

    ACK (chp nhn)

    11121314151617

    1825

    Bn (busy)Ht giy (out ofpaper)Chn (select)

    Tnp ( Autofeed )

    Li ( Error)

    Khi to my inChn u vo ( inputSelect )

    t (ground)

    Cc b-c truyn thng c bt tay gia my in v 8255.Mt byte d liu -c gi n bus d liu my in.My in -c bo c 1 byte d liu cn -c in bng cch kch hot tn

    hiu u vo STROBE ca n.Khi my nhn -c d liu n bo bn gi bng cch kch hot tn hiu

    u ra -c gi l ACK (chp nhn).

    Tn hiu ACK khi to qu trnh cp mt byte khc n my in.Nh- ta thy tcc b-c trn th ch khi mt byte d liu ti my in l

    khng . My in phi -c thng bo v shin din ca d liu. Khi d liu-c gi th my in c th bn hoc ht giy, do vy my in phi -c bo chobn gi khi no n nhn v ly -c d liu ca n. H nh 15.16 v 15.17 trnhcc cm DB25 v u cp ca my in Centronics t-ng ng.

    Smith Nguyen Studio.