37
Chöông 6 GIAO TIEÁP QUA COÅNG SONG SONG Coång song song thöôøng duøng ñeå giao tieáp maùy vi tính vôùi ñoái töôïng beân ngoaøi nhôø caùc ñaëc ñieåm: - Laäp trình ñôn giaûn, deã keát noái - Toác ñoä nhanh. Khuyeát ñieåm cuûa coång song song laø khoaûng caùch ngaén do tính choáng nhieãu keùm. Theo tieâu chuaån IEEE 1284 naêm 1994 coù 5 cheá ñoä hoaït ñoäng cho coång song song. - SPP :coång song song chuaån coù 3 mode laø: + Compatibility: xuaát 8 bit + Nibble: nhaäp 4 bit + Byte: coång hai chieàu - EPP: coång song song taêng cöôøng (enhanced parallel port) - ECP: coång môû roäng khaû naêng (extended capability port) Tuøy loaïi mainboard coù theå hoã trôï caû 5 mode hay chæ vaøi mode. Coång SPP coù theå truyeàn döõ lieäu song song 8 bit töø maùy tính ra vôùi vaän toác 50 Kbytes/sec ñeán 150 Kbytes/sec. Khi muoán nhaäp döõ lieäu vaøo maùy tính coù theå duøng mode Nibble truyeàn 4 bit hay mode Byte truyeàn 8 bit. Coång EPP vaø ECP duøng theâm phaàn cöùng hoã trôï neân vaän toác truyeàn nhanh hôn, coù theå ñeán 2 Mbytes/sec, thu phaùt song song 8 bit. Thay ñoåi cheá ñoä cuûa coång song song baèng caùch vaøo BIOS

5 - Giao Tiep Qua Cong Song Song

Embed Size (px)

DESCRIPTION

Giao Tiep Qua Cong Song Song

Citation preview

  • 154

    Chng 6 GIAO TIEP QUA CONG SONG

    SONG

    Cong song song thng dung e giao tiep may vi tnh vi oi

    tng ben ngoai nh cac ac iem: - Lap trnh n gian, de ket noi - Toc o nhanh. Khuyet iem cua cong song song la khoang cach ngan do tnh

    chong nhieu kem. Theo tieu chuan IEEE 1284 nam 1994 co 5 che o hoat ong cho cong song song.

    - SPP :cong song song chuan co 3 mode la: + Compatibility: xuat 8 bit + Nibble: nhap 4 bit + Byte: cong hai chieu

    - EPP: cong song song tang cng (enhanced parallel port) - ECP: cong m rong kha nang (extended capability port) Tuy loai mainboard co the ho tr ca 5 mode hay ch vai mode. Cong SPP co the truyen d lieu song song 8 bit t may tnh ra

    vi van toc 50 Kbytes/sec en 150 Kbytes/sec. Khi muon nhap d lieu vao may tnh co the dung mode Nibble truyen 4 bit hay mode Byte truyen 8 bit.

    Cong EPP va ECP dung them phan cng ho tr nen van toc truyen nhanh hn, co the en 2 Mbytes/sec, thu phat song song 8 bit.

    Thay oi che o cua cong song song bang cach vao BIOS

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    155

    SETUP cua may tnh khi khi ong may. Cac may tnh khong co cong song song co the s dung

    chuyen oi USB - Parallel Port hay PCMCIA (Personal Computer Memory Card International Association) - Parallel Port.

    Ngoai nhiem vu giao tiep, cong song song con dung lam khoa ban quyen dongle, phan mem co bao ve oc ma khoa t vi mach tren dongle, neu khong co se ch cho phep s dung che o gii han.

  • CHNG 6

    156

    6.1 Cong SPP Cong song song co au noi 25 chan cai thng dung e ket

    noi vi may in au noi Centronics 34 chan.

    Bang 6.1 cho s o chan va y ngha cac chan cua cong SPP

    khi dung vi may in, dau / co ngha tch cc thap. V du, chan 15 la /Error hng vao, neu chan nay xuong mc 0 la co loi. Cot ao ghi ch Co tc la tn hieu c ao mc, v du chan 17 khi a mc logic 0 ng vi chan nay vao thanh ghi ieu khien th chan 17 xuat hien mc 1.

    Bang 6.1: S o chan cua au noi pha may tnh (cong SPP) va pha may in

    Chan

    D 25

    Chan

    Centronics

    Tn hieu

    SPP Hng Thanh ghi ao

    1 1 /Strobe Vao/Ra ieu khien Co

    2 2 Data 0 Ra Data

    3 3 Data 1 Ra Data

    4 4 Data 2 Ra Data

    5 5 Data 3 Ra Data

    6 6 Data 4 Ra Data

    7 7 Data 5 Ra Data

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    157

    8 8 Data 6 Ra Data

    9 9 Data 7 Ra Data

    10 10 /Ack Vao Trang thai

    11 11 Busy Vao Trang thai Co

    12 12 Paper Out Vao Trang thai

    13 13 Select Vao Trang thai

    14 14 /Auto-Linefeed Vao/Ra ieu khien Co

    15 32 /Error Vao Trang thai

    16 31 /Init Vao/Ra ieu khien

    17 36 /Select Printer Vao/Ra ieu khien Co

    18 - 25 19 - 30 Mass

    Ngo ra cong song song tng thch vi cong TTL, dong cap va

    thu khoang vai mA en 16mA tuy loai ket cau phan cng (cong nghe ASIC). Giao tiep cong song song vi may in thng c thc hien theo H.6.1

    .

  • CHNG 6

    158

    Hnh 6.1: S o ket noi va bat tay Ban au d lieu 8 bit c a ra, may tnh oc chan Busy

    neu mc thap th may in ranh, se a ra tn hieu Strobe rong 1sec va may in oc d lieu, oc xong se bao tr lai bang ACK rong 5sec. Neu may in ban th Busy se mc cao.

    Viec giao tiep c thc hien qua 3 thanh ghi: thanh ghi d lieu, thanh ghi trang thai va thanh ghi ieu khien. Thong thng s dung hai a ch goc la:

    378H cho LPT1 (line printer 1) 278H cho LPT2 Mot so may dung a ch 03BC. - Thanh ghi d lieu co a ch goc +0, 8 bit, nhan d lieu e

    xuat ra ngoai, d lieu c chot.. - Thanh ghi trang thai a ch goc +1 la thanh ghi ch oc dung

    e nhan tn hieu t ngoai vao, co 5 tn hieu vao.

    D7 D0

    Busy

    11

    /ACK

    10

    Paper Out

    12

    Select

    13

    /Error

    15

    /IRQ X X

    Chu y la bit Busy c ao, ngha la neu chan 11 co ien ap +5V th bit D7 cua thanh ghi trang thai mc logic 0, bit D2 bang 0 khi co ngat t /ACK.

    - Thanh ghi ieu khien co bon ng ra ieu khien, a ch goc +2, cac ng nay dung cc thu h do o co the giao tiep hai chieu.

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    159

    D7 D0

    X X Cho phep cong hai

    chieu

    Cho phep IRQ qua

    ACK

    Chon may in /Select

    Khi ong may in /Init

    Xuong hang /Auto Linefeed

    Kch /Strobe

    17 16 14 1

    Cac chan 1, 11, 14 va 17 c ao phan cng, bit D6 thanh ghi trang thai (chan so 10) t 1 0 th gay ra ngat IRQ7 neu c cho phep bi D4 cua thanh ghi ieu khien =1.

    Hnh 6.2 S o thanh ghi d lieu hai hng

    Mot so mainboard (H6.2) ho tr giao tiep hai chieu qua thanh ghi d lieu, bit D5 cua thanh ghi ieu khien bang 1 th cho phep cac chan 2..:9 cua thanh ghi d lieu co chieu i vao, ngha la co the a tn hieu vao cac chan nay roi oc thanh ghi d lieu.

    Cac chan cua thanh ghi ieu khien co ngo ra cc thu h nen co the nhan tn hieu vao neu trc o ta a nap 8 bit sao cho cac ngo ra ng vi thanh ghi nay len 1 (s o H 6.3). Do cac tn hieu /Busy, /Select, /AF va /Strobe a c ao phan cng nen ta them cac cong ao, logic oc vao phan anh ung mc tn hieu.

  • CHNG 6

    160

    Hnh 6.3: Giao tiep song song hai chieu qua cong SPP

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    161

    Trong mot so trng hp, cac chan ra cua thanh ghi ieu

    khien khong dung loai cc thu h ma dung cot totem ch co mot chieu xuat, luc o co the dung bo phan kenh e oc 4 bit d lieu vao thanh ghi trang thai, oc hai lan se c 8 bit d lieu (H6.4).

    Trong s o chan /Strobe c dung e chon na byte thap khi mc 0 tc la bit D0 cua thanh ghi ieu khien mc 1.

    Vi s o nay viec xuat nhap d lieu 8 bit c thc hien nh

  • CHNG 6

    162

    sau: 1- Xac nh a ch goc cua cong LPT 2- Muon xuat d lieu, ghi d lieu 8 bit vao thanh ghi d lieu,

    muon xuat nhieu hn 8 bit co the dung kem cac tn hieu Init, Select bang cach ghi vao thanh ghi ieu khien byte thch hp.

    3- Muon oc d lieu, ghi bit D0 = 1 vao thanh ghi ieu khien, oc 4 bit cao cua thanh ghi trang thai (4 bit thap cua d lieu vao), roi di phai 4 bit, sau o cho D0 cua thanh ghi ieu khien bang 0, oc 4 bit cao cua thanh ghi trang thai (4 bit cao cua d lieu vao), ket hp hai lan oc ta c 1 byte roi exclusive OR vi 88H e ao hai bit D7 va D3 (do Busy ao).

    Hnh 6.4: Vao 8 bit vi 74LS157

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    163

    Hnh 6.5: Chuyen oi AD dung ADC0804

  • CHNG 6

    164

    Hnh 6.6 AD dung ADC0809

    V du lap trnh Xuat tr cua bien oval1 ra thanh ghi d lieu va oval2 ra thanh

    ghi ieu khien, nhap gia tr inval t thanh ghi trang thai. Trong ngon ng C

    # define DATA 0X378 # define STATUS DATA + 1 # define CONTROL DATA + 2 int oval1, oval2, inval; oval1 = 0X81; outportb (DATA, oval1); oval2 = 0X08; outportb (CONTROL, OVAL2 ^ 0x0b);

    inval = ((inportb (STATUS) ^ 0X80;

    Trong ngon ng BASIC

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    165

    DATA = &H378 STATUS = DATA + 1 CONTROL = DATA + 2 OVAL1 = 129 OUT DATA, OVAL1 OVAL2 = 75 OUT CONTROL, OVAL2 XOR 11 INVAL = ((INP (STATUS) XOR 128) AND &HF8) / 8

    Lap trnh cho s o H6..4 oc 8 bit dung C

    outportb(CONTROL, inportb(CONTROL) | 0x01); /* Chon na byte thap (A)*/ a = (inportb(STATUS) & 0xF0); /* oc na byte thap */ a = a >> 4; /* Di phai 4 bit */ outportb(CONTROL, inportb(CONTROL) & 0xFE); /* Chon na byte cao (B)*/ a = a |(inportb(STATUS) & 0xF0); /* oc na byte cao */ byte = byte ^ 0x88;

    Lap trnh cho s o H6..4 oc 8 bit dung VB

    Private Declare Function Inp32 Lib inpout32.dll (ByVal adr As Integer) As Integer Private Declare Sub Out32 Lib inpout32.dll (ByVal adr As Integer, ByVal data As Integer) Private Sub cmdRead_Click() Dim hbytethap, hbytecao, data

    Out32 &H37A, 1 hbytethap = Inp32(&H379) And &HFF hbytethap = hbytethap \ 16 Out32 &H37A, 0 hbytecao = Inp32(&H379) And &HF0 data = hbytecao Or hbytethap data = data Xor &H88 txtIn.Text = data

    End Sub

    Lap trnh s o Hnh 6.6 Private Declare Function Inp32 Lib "inpout32.dll" (ByVal adr As Integer) As Integer

    Private Declare Sub Out32 Lib "inpout32.dll" (ByVal adr As Integer, ByVal data As Integer)

    Private Declare Sub Sleep Lib "kernel32.dll" (ByVal delay As Long)

  • CHNG 6

    166

    Private Sub Command1_Click()

    Timer1.Enabled = 1

    End Sub

    Private Sub Command2_Click()

    End

    End Sub

    Private Sub Form_Load()

    Timer1.Interval = 1000

    Timer1.Enabled = 0

    End Sub

    Private Sub Timer1_Timer()

    For i = 0 To 7

    Out32 &H378, 8 + i

    Out32 &H378, i

    Sleep (1)

    dl = (Inp32(&H379) And &HFF) \ 8

    dl = (dl \ 16) * 8 + dl Mod 8

    Out32 &H378, 16

    dh = (Inp32(&H379) And &HFF) \ 8

    dh = (dh \ 16) * 8 + dh Mod 8

    data = (dh * 16 + dl) Xor &H88

    Text1(i).Text = Round(data * 5 / 256, 1)

    Next

    End Sub

    S dung ngat Khi bit 4 cua thanh ghi ieu khien mc 1 se cho phep ngat

    neu chan ACK (so 9) chuyen t 1 xuong 0, chng trnh phuc vu ngat IRQ7 se c goi (cung co luc ngat b tac ong khi ACK chuyen t 0 len 1). Co the viet mot chng trnh kiem tra xem ngat co tac ong khong. Ve phan cng ch can noi chan 9 (D7) vi chan 10 (ACK). Vao Control panel System kiem tra a ch va so ngat cua cong LPT.

    #include #define PORTADDRESS 0x378 #define IRQ 7 #define DATA PORTADDRESS+0

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    167

    #define STATUS PORTADDRESS+1 #define CONTROL PORTADDRESS+2 #define PIC1 0x20 #define PIC2 0xA0 int interflag; /* C ngat */ int picaddr; /* a ch goc cua PIC) */ void interrupt (*oldhandler)(); void interrupt parisr() /* Interrupt Service Routine (ISR) */ {

    interflag = 1; outportb(picaddr,0x20); /* End of Interrupt (EOI) */

    } void main(void) {

    int c; int intno; /* So vect ngat */ int picmask; /* Mat na */ if (IRQ >= 2 && IRQ

  • CHNG 6

    168

    outportb(DATA,0xFF); /* Low to High Transition */ delay(10); /* wait */ if (interflag == 1) printf("Interrupts Occur on Low to High Transition of ACK.\n"); else printf("No Interrupt Activity Occurred. \nCheck IRQ Number, Port Address and Wiring."); }

    outportb(CONTROL, inportb(CONTROL) & 0xEF); /* Cam ngat */ outportb(picaddr+1,inportb(picaddr+1) | picmask); /* Che */ setvect(intno, oldhandler); /* Hoi phuc ngat trc khi thoat */

    }

    Ta co the m rong kha nang giao tiep cua cong song song bang cach them cac vi mach nh 8255, 74LS374

    Hnh 6.7 M rong so ngo ra cong song song

    Hnh 6.8 Dung 8255 m rong ngo vao ra

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    169

    Chan ieu khien: Xuat t DR ra port cua 8255: chan 14,1(/c1,/c0) chon thanh

    ghi,chan 17(/c3)=0, chan 16(c2)=1 oc port cua 8255 vao SR(/s7, s5, s4 , s3): chan 14,1 chon

    thanh ghi,chan 17=1, chan 16=0. oc na byte thap: chan 2 (D0)=0 oc na byte cao: chan 2 (D0)=1

    Hnh 6.9 Dung 8255 m rong ngo vao ra

  • CHNG 6

    170

    Hnh 6.10 Mch giao tip cng song song vi mt PIA 8255

    Hnh 6.11 Mch giao tip cng song song vi hai PIA 8255

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    171

    Hnh 6.12

    6.2 CONG EPP (ENHANCED PARALLEL PORT) Cong EPP la san pham lien ket cua Intel, Xircom va Zenith, co

    hai chuan la EPP1.7 va EPP1.9, van toc truyen t 500 Kbytes/s en 2 Mbytes/s nh s ho tr cua phan cng va ky thuat DMA.

    Khi chuyen cong song song sang che o EPP (vao muc Setup khi khi ong may tnh e at che o) cac chan cong se mang ten goi

  • CHNG 6

    172

    va y ngha khac.

    Bang 6.2

    Chan Ten Vao/Ra Chc nang 1 Ghi /Write Ra Khi thap xuat d lieu ra

    Khi cao oc vao 2 - 9 Data 0 - 7 Vao - Ra Tuyen d lieu hai hng 10 Ngat Interrupt Vao Ngat canh len 11 Ch /Wait Vao Dung e bat tay, chu ky EPP bat

    au khi thap, cham dt khi cao 12, 13, 15 Khong dung

    14 /Data Strobe Ra Khi mc thap truyen d lieu 16 /Reset Ra Reset, tch cc thap 17 /Address Strobe Ra Khi mc thap truyen a ch

    18 25 Mass

    So sanh SPP va EPP

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    173

    Cong EPP co them mot so thanh ghi nh trong bang 6.3:

    Bang 6.3

    a ch Ten oc / Ghi

    Goc + 0

    Goc + 1

    Goc + 2

    Goc + 3

    Goc + 4

    Thanh ghi d lieu (SPP)

    Thanh ghi trang thai (SPP)

    Thanh ghi ieu khien (SPP)

    Thanh ghi a ch (EPP)

    Thanh ghi d lieu (EPP)

    Ghi

    oc

    Ghi

    oc / Ghi

    oc / Ghi

    Goc + 5

    Goc + 6

    Goc + 7

    Dung e truyen 16/32 bit

    Ba thanh ghi au giong nh trong SPP. Muon truyen a ch theo EPP ta a a ch vao thanh ghi goc +3 va mach logic se tao

  • CHNG 6

    174

    cac tn hieu can thiet. Muon truyen d lieu theo EPP ta a d lieu vao thanh ghi

    goc +4 va mach logic se tao cac tn hieu can thiet.

    Hnh 6.13 Xut a ch

    Hnh 6.14 c a ch

    Hnh 6.15 Gian o xuat nhap d lieu

    Chan /Write va /Data Strobe tch cc thap ch cho en khi /Wait len mc cao bao ben kia a nhan d lieu, sau o /Data Strobe va /Write tr lai mc cao ket thuc truyen.

    Khi nhan d lieu, au tien chng trnh oc thanh ghi goc +4. Neu /Wait mc thap th /Data Strobe se mc thap ch khi /Wait mc cao ben kia bao a gi d lieu ti, /Data Strobe se mc cao

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    175

    va d lieu c oc vao. Chu ky xuat va nhap d lieu cung giong nh chu ky xuat va nhap a ch. Thng ket hp a ch va d lieu e truy xuat d lieu t cac a ch ngoai vi khac nhau.

    Phan cng ngoai vi co nhiem vu x ly cac chan /Write, /Data

    Strobe, /Address Strobe a vao cac mach cai hay cho phep va xuat tn hieu /wait phu hp. Thong qua tn hieu Interrupt (chan so 10) ngoai vi se tac ong en may tnh, bit 0 cua thanh ghi trang thai la bit bao het thi gian EPP. Neu trong khoang 10s ng /Wait khong tac ong khi /Data Strobe hay /Address strobe tac ong th bit nay se c at len 1.

    6.3 CONG ECP Cong ECP c phat trien bi Hewlett Packard va Microsoft,

    s dung phan cng ho tr cho viec truyen d lieu nen co van toc truyen nhanh, tng t cong EPP. ac iem cua cong ECP la nen d lieu khi truyen, cho phep tang toc o truyen d lieu. Cong ECP dung 11 thanh ghi t goc+0 en goc+7 va goc+400H en goc +402H. Chan cong ECP c qui nh trong bang 6.4.

  • CHNG 6

    176

    Bang 6.4 Chan Tn hieu ECP Hng Chc nang

    1 HostClk Ra Thap cho biet co d lieu, canh len dung e cai d

    lieu ra

    2 9 Data 0 7 Hai chieu Tuyen d lieu hai chieu

    10 PeriphClk Vao Thap cho biet ngoai vi can a d lieu vao may tnh, canh len dung e cai d lieu vao

    11 PeriphAck Vao Khi ngoai vi nhan d lieu th len mc cao. Neu ngoai vi gi d lieu th mc cao bao chu ky d lieu, mc thap bao chu ky lenh

    12 /AckReverse Vao Khi thap ngoai vi chap nhan truyen d lieu

    13 X Flag Vao C m rong

    14 HostAck Ra mc cao bao chu ky d lieu, mc thap bao chu

    ky lenh

    15 PeriphRequest Vao Yeu cau may tnh nhan so lieu

    16 /

    ReverseRequest Ra Khi mc thap cho biet d lieu nhap vao may tnh

    18 29 Mass

    Khi truyen d lieu t may tnh ra ngoai vi th HostAck se oi

    mc, con truyen d lieu t ngoai vi vao may tnh th PeriphAck oi mc. Tren tuyen d lieu co the truyen d lieu hay lenh. Neu Host Ack va Periph Ack mc cao la truyen d lieu. Neu may tnh gi lenh, Host Ack mc thap; neu ngoai vi gi lenh, Periph Ack mc thap. Lenh gom hai loai, neu bit 7 cua tuyen d lieu (chan 9) mc thap th 7 bit con lai dung e cho biet thong tin ve nen d lieu. Neu bit 7 mc cao th 7 bit con lai la a ch kenh. Khi truyen d lieu nen, au tien truyen so lan lap lai cua byte d lieu, sau o truyen byte d lieu, v du truyen 25 byte ky t A th gi byte 24 (Run length Count) sau o gi byte A.

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    177

    Hnh 6.6: Truyen d lieu t may tnh ra ngoai vi

    Hnh 6.7: Truyen d lieu t ngoai vi vao may tnh

    Ngoai vi nhan c byte 24 trong chu ky lenh se lap lai byte A chu ky d lieu 25 lan. Ty so nen toi a 64/1.

    e tang toc o truyen d lieu, cong ECP dung cac thanh ghi sap xep kieu FIFO va mot so thanh ghi phu.

    Bang 6.5

    a ch Ten oc / Ghi

    Goc + 0 Thanh ghi d lieu (SPP) Ghi

    a ch FIFO (ECP) oc / Ghi

    Goc + 1 Thanh ghi trang thai (moi mode) oc / Ghi

  • CHNG 6

    178

    Goc + 2 Thanh ghi ieu khien (moi mode) oc / Ghi

    Goc + 400 H

    Data FIFO (mode FIFO cong song song) oc / Ghi

    Data FIFO (ECP) oc / Ghi

    Test FIFO (mode Test) oc / Ghi

    Thanh ghi cau hnh A oc / Ghi

    Goc + 401 H Thanh ghi cau hnh B oc / Ghi

    Goc + 402 H Thanh ghi ieu khien m rong oc / Ghi

    Thanh ghi ieu khien m rong cho phep chon kieu hoat ong

    cua cong song song. Thanh ghi cau hnh A va B s dung e at cau hnh cua cong ECP.

    Chi tiet ve cac thanh ghi co the xem trong cac tai lieu chuyen sau hay a ch www.beyondlogic.org, www.lvr.com.

    6.4 GHEP NOI HAI MAY TNH

    Hai may tnh co the ghep vi nhau qua cong song song hay cong noi tiep e truyen so lieu thong qua tien ch Direct Cable Connection cua he ieu hanh Windows hay tien ch tng t cua phan mem Norton Commander.

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    179

    Hnh 6.8: Giao dien ghep noi hai may tnh 1- Ghep noi song song (Laplink cable):Dung cap noi vi hai au c DB25, giao tiep 4 bit

    Chan Chan D0 2 15 D1 3 13 D2 4 12 D3 5 10 D4 6 11 ACK 10 5 Busy 11 6 Paper out 12 4 Select 13 3 Error 15 2 GND 25 25

    2- Ghep noi noi tiep: Dung cap noi hai au cai DB9 hay DB25

    9 chan 25 chan 25 chan 9 chan

    GND 5 7 7 5

    TXD 3 2 3 2

    RTS 7 4 5 8

    DSR 1, 6 6 20 4

    RXD 2 3 2 3

    CTS 8 5 4 7

    DTR 4 20 6 1 , 6

    Truyen bang ng song song nhanh gap tam en mi lan truyen noi tiep.

    Neu cong song song hai may co cau hnh ECP th van toc truyen con nhanh hn na, di ay la cap noi vi cong ECP

    Chan Chan Chan Chan1 10 15 17

    2 9 > 2 9 14 11 10 1 16 12 11 14 17 15 12 16 18 25

  • CHNG 6

    180

    6.5 CARD CHUYEN OI 8 KENH 12 BIT DUNG CONG MAY IN

    S dung vi mach LTC 1290 8 kenh 12 bit ta co the thc hien mach chuyen oi 12 bit ghep vi may tnh qua cong may in. Vi mach LTC 1290 la san pham cua hang Linear technology oi A/D dung phng phap xap x lien tiep 12 bit n cc hay 11 bit cong dau, thi gian oi 13s max, ket qua o a ra ngoai dang noi tiep. Hnh 6.9 cho s o ap dung.

    Hnh 6.9: S o ap dung LTC1290

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    181

    Hnh 6.10 S o khoi LTC1290 va gian o thi gian

    Vi mach hoat ong vi xung ong bo SCLK. Khi CS chuyen t 1 xuong 0, canh len cua SCLK a 8 bit t Din vao thanh ghi di e nh che o hoat ong cua vi mach, canh xuong cua SCLK a ket qua chuyen oi lan trc t thanh ghi di noi tiep ra Dout. Khi a u 8 bit Din vao cau hnh chuyen oi theo bang sau, B7 la bit Din vao trc.

    B7 B6 B5 B4 B3 B2 B1 B0

    n/

    visai Dau

    Chon

    1

    Chon

    0

    n cc/

    Lng cc

    MSB/

    LSB

    Chieu dai

    t

    Chieu dai

    t

    B7 = 1: 8 ngo vao n so vi chan COM, B6 B5 B4 chon mot trong 8 ngo vao.

    B7 = 0: 8 ngo vao chia thanh 4 cap vi sai 01, 23, 45, 67, bit B5 B4 chon mot trong 4 cap con bit B6 = 1 se an nh cac au 0, 2, 4, 6 dng so vi 1, 3, 5, 7; B6 = 0 an nh ngc lai.

    B3 = 1: chon oi n cc, tn hieu vao t 0 en Vref = +5V B3 = 0: chon oi lng cc, tn hieu vao -Vref (800H) en Vref

    -1LSB (7FFH), bit au la bit dau B2 = 1: cho biet se truyen MSB au tien ra Dout = 0: cho biet se truyen LSB au tien ra Dout B1 va B0 cho biet chieu dai t cua Dout.

    B1 B0 0 0 8 bit 0 1 cat nguon 1 0 12 bit 1 1 16 bit

    B1= 0, B0= 1: vi mach che o cat nguon luc o CS= 1 dong tieu thu khoang 10A.

    Sau khi a u so xung nhp SCLK c an nh bi chieu dai

  • CHNG 6

    182

    t CS c a len mc 1, bat au chuyen oi theo xung nhp ACLK, tan so toi a 4Mhz, sau o t 48 en 52 xung ACLK, neu CS xuong mc 0 th ket qua oi se a ra Dout theo cau hnh a at trc con Din se a vao va at cau hnh mi. Cac thong tin chi tiet hn ve vi mach co the tm trong trang web: www.linear-tech.com.

    Mach chuyen oi H6.10 cho phep oi tn hieu n 0V 2,5V hay tn hieu lng cc (2,5V) (+ 2,5V). Xung nhp SCLK va d lieu Din xuat ra t cong may in con ket qua oi Dout a vao ACK cua cong.

    {======= CHNG TRNH IEU KHIEN CHO CARD AD 12 BIT =======} unit ltc1290; interface const vref = 2.48; function adc_read (ch: integer): real; implementation

    Hnh 6.10

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    183

    const sclk = 1; din = 2; dout = 64; cs = 4; function adc_read; const

    wconst = 1 + 32 + 64; { }vao n, lng cc, MSB au chconst: array [0..7] of byte = (0, 2, 8, 10, 4, 6, 12, 14);

    delay = 10; { }co the thay oi tuy may tnh aout = $378; ain = $379; var i: integer; win: word; result: word; begin for i:= 1 to delay do begin end; win := wconst + chconst [ch]; port [aout] := 0; { }drop CS' { di word cau hnh vao} for i := 1 to 12 do begin port [aout] := (win and 1)* din; port [aout] := (win and 1)* din + sclk; win := win div 2; port [aout] := 0; end; port [aout] := cs; for i := 1 to delay do begin end; port [aout] := 0; {nhan ket qua chuyen oi} result := 0; win := wconst + chconst [ch]; for i := 1 to 12 do begin port [aout] := (win and 1)* din; port [aout] := (win and 1)* din + sclk; result := result*2; if port [ain] and dout 0 then result := result + 1; port [aout] := 0; end; port [aout] := cs; adc_read := vrel*((result + 2048) and 4095) / 2048 vref; end; {======= CHNG TRNH DEMO ========} program testltc; uses crt, ltc1290 var i: integer; begin writeln (Nhan phm e thoat); while not keypressed do begin for i := 0 to 7 do write (adc_read(i) :4:4,); writeln (V);

  • CHNG 6

    184

    delay (1000); end; end.

    6.6 MACH LAP TRNH VI IEU KHIEN ATMEL 89C May tnh thng dung e lap trnh cho vi ieu khien hay EPROM qua cong song song hay noi tiep. Muc nay trnh bay bo lap trnh cho vi mach ho Atmel 89C51/52/55/1051/2051/4051

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    185

  • CHNG 6

    186

    U1 ieu khien d lieu gia may tnh va bo ieu khien, U3 cai byte a ch thap U4 cai byte a ch cao, U2 tao cac tn hieu ieu khien, U6 cap nguon 5V, U5 tao cac ien ap lap trnh. chi tiet a ch http://chaokhun.kmitl.ac.th.

    Bang linh kien: C1,C2,C3,C6,C8 100nF C4,C5 33pF C7 2.2nF C9 1000uF 25V C10,C11,C12 10uF 25V D1 1N4148 D2 LED RED 3mm D3 LED GREEN 3mm K2 ZIF SOCKET 40 WAY P1 5K MULTITURN P2 50K MULTITURN R1,R3 RESISTOR ARRAY 4K7 x 8 R2,R4,R8,R11,R12,R13,R15 4K7 R7,R5 1K R6 3K3 R9 2K7 R10 680R

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    187

    R14 220R T2,T1 2N3906 T3,T4 2N3904 U1 74HC299 U4,U2 74HC595 U3 74HC573 U5 LM317LZ U6 LM7805 X1 CRYSTAL 4.0 MHz

    6.7 LAP TRNH CONG SONG SONG DUNG LABVIEW LabView giao tiep cong song song qua hai cong cu In port.vi va Out port.vi trong th muc Functions- Connectivity-Port I/O

  • CHNG 6

    188

    Address: a ch 16 bit Data read: 1 byte, 2 byte (hai a ch ke nhau ke t address), 4 byte (bon a ch ke tiep ke t address) Write value co the la 1, 2, 4 byte 6.8 CHUYEN OI USB SANG CONG LPT Nhieu may tnh khong co cong song song co the dung vi mach chuyen oi t USB sang cong song song. Vi mach thng dung la vi ieu khien giao tiep USB vi may tnh (ATMEGA, CYPRESS, PIC18), phan mem driver tren may tnh se tao cong song song ao, truyen d lieu qua USB, phan mem firmware tren vi ieu khien tao cong song song da tren cac port cua vi ieu khien (http://www-user.tu-chemnitz.de/)

  • GIAO TIEP QUA CONG SONG SONG TS NGUYN C THNH

    189

    --------o---------

  • CHNG 6

    190

    Bai tap gi y

    1/ Nghien cu ghep 8255 vi cong may in e tang so ngo logic. 2/ Thiet ke va lap trnh mach m rong cong may in 56 bit ra va 8 bit vao. 3/ Thiet ke mach ieu khien ong c bc 4 pha dung cong song song va viet chng trnh quay n xung vi tan so f Hz. 4/Nghien cu hoat ong va viet chng trnh cho mach ghi AT89C51.