4 -Giao Tiep Song Song

58
GIAO TIP QUA CNG SONG SONG 4/8/2014 1 ©Nguyen Trong Tai –Dr.

description

aaa

Transcript of 4 -Giao Tiep Song Song

  • GIAO TIP QUA CNG SONG SONG

    4/8/2014 1NguyenTrongTaiDr.

  • 4/8/2014 2NguyenTrongTaiDr.

  • Lp trnh ngin d kt niu gin,d kt ni

    Tc nhanhim

    Khong cch nhChng nhiu km

    NhcChng nhiu km

    im4/8/2014 3NguyenTrongTaiDr.

  • Cng song song c 5 ch hot ng, ty loi mainboard, PC c th h 5 d h i dtr 5 mode hoc vi mode

    SPP:Cng songsong chung g g Compatibility:Xut 8bit Nibble: nhp 4 bitNibble:nhp 4bit Byte:Cng 2chiu

    EPP: Cng tng cngEPP:Cng tng cng EnhancedParallelPort

    ECP:Cng songsong m rng Extended Capability Port

    4/8/2014 4NguyenTrongTaiDr.

    ExtendedCapabilityPort

  • Cng SPP c th truyn d liu song song 8 bit t my tnh ra vi vn 50 Kb / 150 Kb / Khi h d li tc 50 Kbytes/sec n 150 Kbytes/sec. Khi mun nhp d liu vo my

    tnh c th dng mode Nibble truyn 4 bit hay mode Byte truyn 8 bit.

    Cng EPP v ECP dng thm phn cng h tr nn vn tc truyn nhanh hn, c th n 2 Mbytes/sec, thu pht song song 8 bit.

    Thay i ch ca cng song song bng cch vo BIOS SETUP ca my tnh khi khi ng mymy tnh khi khi ng my.

    Cc my tnh khng c cng song song c th s dng chuyn i USB -Cc y g c c g so g so g c s d g c uy USParallel Port hay PCMCIA (Personal Computer Memory Card International Association) - Parallel Port.

    4/8/2014 5NguyenTrongTaiDr.

  • Cng SSP

    C u ni 25 chn ci thng dng kt ni vi my in u ni Centronics 34 chn.

    4/8/2014 6NguyenTrongTaiDr.

  • Cng SSP

    Chn D25 Centronics Tn hiu SSP Hng Thanh ghi o1 1 /Strobe Vo/Ra iu khin C2 2 Data0 Ra Data3 3 Data1 Ra Data4 4 Data2 Ra Data5 5 Data3 Ra Data6 6 Data 4 Ra Data6 6 Data4 Ra Data7 7 Data5 Ra Data8 8 Data6 Ra Data9 9 Data7 Ra Data

    Ng ra cng song song tng thch vi cng TTL, dng cp v thu khong vi mA

    4/8/2014 7NguyenTrongTaiDr.

    n 16mA ty loi kt cu phn cng (cng ngh ASIC)

  • Cng SSP

    Chn D25 Centronics Tn hiu SSP Hng Thanh ghi o10 10 /Ack Vo iu khin11 11 Busy Vo Trng thi C12 12 Paper Out Vo Trng thi13 13 Select Vo Trng thi14 14 /AutoLinefeed Vo/Ra iu khin C15 32 /Error Vo Trng thi15 32 /Error Vo Trng thi16 31 /Init Vo/Ra iu khin17 36 /Select Printer Vo/Ra iu khin C/ /

    1825 1930 Mass

    4/8/2014 8NguyenTrongTaiDr.

  • Cng SSP

    4/8/2014 9NguyenTrongTaiDr.

    Kt ni gia cng SSP v ngoi vi

  • Cng SSP

    Bt tay d liuBan u d liu 8 bit c a raBan u d liu 8 bit c a ra, Nu chn Busy mc thp th my in rnh, Nu Busy s mc cao. Th my in bn T hi St b 1 i d li

    4/8/2014 10NguyenTrongTaiDr.

    Tn hiu Strobe rng 1sec v my in c d liu, My in c xong s bo tr li bng nACK rng 5sec.

  • Cng SSPVic giao tip c thc hin qua 3 thanh ghi: thanh ghi d liu, thanh ghi trng thi v thanh ghi iu khin. Thng thng s dng hai a ch gc l: 378cho LPT1v 278cho LPT2Mt s my dng a ch 03BC.- Thanh ghi d liu c a ch gc +0, 8 bit, nhn d liu xut ra ngoi, d liu c cht.. -Thanh ghi trng thi a ch gc +1 l thanh ghi ch c dng nhn tn hiu t ngoi vo, c 5 tn hiu vo.-Thanh ghi iu khin c bn ng ra iu khin, a ch gc +2, cc g g , g ,ng ny dng cc thu h do c th giao tip hai chiu.

    -Cc chn 1, 11, 14 v 17 c o phn cng, bit D6 thanh ghi trngCc chn 1, 11, 14 v 17 c o phn cng, bit D6 thanh ghi trng thi (chn s 10) t 10 th gy ra ngt IRQ7 nu c cho php bi D4 ca thanh ghi iu khin =1.

    4/8/2014 11NguyenTrongTaiDr.

  • Cng SSPTh h hi hi

    Bit D7 D6 D0

    i /AC O S l / / Q

    Thanh ghi trng thi

    Function Busy /ACK Paper Out Select /Error /IRQ X X

    Pin 11 10 12 13 15

    Ch l bit Busy c o, ngha l nu chn 11 c in p +5V th bit D7 ca thanh ghi trng thi mc logic 0, bit D2 bng 0 khi c ngt t /ACK.

    Bit D7 D6 D0

    F ti X X Ch h Ch Ch Khi X K h

    Thanh ghi iu khin

    Function X X Cho phpcng 2 chiu

    Cho php

    ngt qua ACK

    Chon my in /Select

    Khing

    my in /Init

    Xunghng/Auto

    Linefeed

    Kch/Strobe

    4/8/2014 12NguyenTrongTaiDr.

    ACK /Init LinefeedPin 17 16 14 1

  • Cng SSP

    7 6 5 4 3 2 1 0

    DATA X X X X X X X X Base=278/378/3BCH

    STATUS /X X X X X Base+1

    CONTROL /X X /X /X Base+2

    a ch ca port song song

    S7,C0,C1,C3 b oNu chn 11 mc cao thi S7 =0Nu chn 11 mc cao thi S7 =0C0 = 1 gy cho chn 1 ca cng song song mc thp

    4/8/2014 13NguyenTrongTaiDr.

  • Cng SSPAddress Notes:

    3BCh 3BFh UsedforParallelPortswhichwereincorporatedontoVideo Cards Doesn't support ECP addressesVideoCards Doesn'tsupportECPaddresses

    378h 37Fh UsualAddressForLPT1278h 27Fh UsualAddressForLPT2

    4/8/2014 14NguyenTrongTaiDr.

  • Chng trnh giao tip trn VB s dng th vin lin kt ng trao i d li i ii d liu vi cng my in.

    C cc file lin kt ng sau: IO DLL; inpout32 dlltm trn mngC cc file lin kt ng sau: IO.DLL; inpout32.dll tm trn mngCopy nhng file ny vo th mc system32 ca my tnhKhai bo cc hm cn c s dng trong chng trnh giao tip. g g g g p

    4/8/2014 15NguyenTrongTaiDr.

  • Th vin IO.DLL bao gm cc hm sau:

    -Hm PortOut: xut 1 byte ra cng

    Private Declare Sub PortOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Byte)y y )

    Port: a ch ca cngData: d liu xut

    4/8/2014 16NguyenTrongTaiDr.

  • Th vin IO.DLL bao gm cc hm sau:

    -Hm PortWordOut: xut 1 word ra cng

    Private Declare Sub PortWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Integer)y g )

    Port: a ch ca cngData: d liu xut

    4/8/2014 17NguyenTrongTaiDr.

  • Th vin IO.DLL bao gm cc hm sau:

    Hm PortDWordOut: xut 1 double word ra cng

    Private Declare Sub PortDWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Long)g , y g)

    Port: a ch ca cngData: d liu xut

    4/8/2014 18NguyenTrongTaiDr.

  • Th vin IO.DLL bao gm cc hm sau:

    -Hm PortIn: nhp 1 byte t cng, tr v gi tr nhpP i t D l F ti P tI Lib "IO DLL" (B V l P t A I t )Private Declare Function PortIn Lib "IO.DLL" (ByVal Port As Integer) As Byte

    - Hm PortWordIn: nhp 1 word t cngPrivate Declare Function PortWordIn Lib "IO.DLL (ByVal Port As Integer) As Integer

    H P tDW dI h 1 d bl d t - Hm PortDWordIn: nhp 1 double word t cngPrivate Declare Function PortDWordIn Lib "IO.DLL (ByVal Port As Integer) As Longg ) g

    4/8/2014 19NguyenTrongTaiDr.

  • Th vin Inpout.DLL bao gm cc hm sau:

    short Inp32(short PortAddress) d t t P tc data t PortPrivate Declare Function Inp32 Lib "Inpout.DLL (ByVal Port As Integer) As Intergerg ) g

    void Out32(short PortAddress, short data)Xut data ra Port

    Private Declare Function Out32 Lib "Inpout.DLL (ByVal Port As Integer, ByVal Data As Interger)

    4/8/2014 20NguyenTrongTaiDr.

  • Ngoi ra cn c Th vin hwinterface32.DLL bao gm cc hm sau:

    Ngoi th vin ca Inpout.dll, cn c cc th vin khc nh ca IO.dllh t I 32( h t P tAdd )short Inp32(short PortAddress)c data t PortPrivate Declare Function Inp32 Lib "Inpout DLL (ByVal Port AsPrivate Declare Function Inp32 Lib Inpout.DLL (ByVal Port As Integer) As Interger

    void Out32(short PortAddress, short data)Xut data ra Port

    Private Declare Function Out32 Lib "Inpout.DLL (ByVal Port As Integer ByVal Data As Interger)Integer, ByVal Data As Interger)

    4/8/2014 21NguyenTrongTaiDr.

  • Ngoi ra cn c Th vin hwinterface32.DLL bao gm cc hm sau:Function Description

    shortInpW32(shortPortAddress) ReadsaWordfromthespecifiedI/Oaddress.

    voidOutW32(shortPortAddress,shortdata) WritesaWordtothespecifiedI/Oaddress.

    longInpD32(shortPortAddress) ReadsaDWordfromthespecifiedI/Oaddress.

    void OutD32(short PortAddress long data) Writes a DWord to the specified I/O addressvoidOutD32(shortPortAddress,longdata) WritesaDWordtothespecifiedI/Oaddress.

    longReadMemChar(ULONGAddress) ReadsasingleBytetothespecifiedaddress

    longReadMemShort(ULONGAddress) Readsa16bitwordtothespecifiedaddress

    longReadMemLong(ULONGAddress) Readsa32bitDword tothespecifiedaddress

    voidWriteMemChar(ULONGAddress,UCHARdata )

    WritesasingleBytetothespecifiedaddressdata)voidWriteMemShort(ULONGAddress,USHORTdata)

    WritesasingleWordtothespecifiedaddress

    void WriteMemLong(ULONG Address ULONG

    4/8/2014 22NguyenTrongTaiDr.

    voidWriteMemLong(ULONGAddress,ULONGdata)

    WritesasingleDWord tothespecifiedaddress.

  • Mt s a ch cng tiu biu

    Address Port

    400H BaseI/Oaddressforserialport1(COM1)

    402H BaseI/Oaddressforserialport2(COM2)

    404H BaseI/Oaddressforserialport3(COM3)

    406H BaseI/Oaddressforserialport4(COM4)p

    408H BaseI/Oaddressforparallelport1(LPT1)

    40AH Base I/O address for parallel port 2 (LPT 2)40AH BaseI/Oaddressforparallelport2(LPT2)

    40CH BaseI/Oaddressforparallelport3(LPT3)

    4/8/2014 23NguyenTrongTaiDr.

  • Giao tip n gin, ch SSP bi-directional mode

    4/8/2014 24NguyenTrongTaiDr.

  • Giao tip ngoi vi vi SPP kt hp c d liu bng status byte:

    4/8/2014 25NguyenTrongTaiDr.

  • Giao din VB:

    4/8/2014 26NguyenTrongTaiDr.

  • Chng trnh:Khai bo hm cho IO.dll Private Declare Sub PortOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Byte)ByVal Data As Byte)Private Declare Function PortIn Lib "IO.DLL" (ByVal Port As Integer) As Byte

    Khai bo bin a ch port LPTPrivate BA_LPT As Integer

    4/8/2014 27NguyenTrongTaiDr.

  • Chng trnh:H h b R iHm cho button ReceivePrivate Sub cmdReceive_Click()Dim n As IntegerDim n As IntegerDim n1 As IntegerDim i As IntegerPortOut BA_LPT + 2, &H8 'SELECTIN = 1PortOut BA_LPT + 2, 0 'SELECTIN = 0n1 = PortIn(BA LPT + 1) 'Doc 4 bit thapn1 PortIn(BA_LPT + 1) Doc 4 bit thapn1 = n1 / &H10 'Dich phai 4 bitPortOut BA_LPT + 2, 2 'AUTOFEED=1n = PortIn(BA_LPT + 1) 'Doc 4 bit caon = n And &HF0n = n + n1n = n + n1

    4/8/2014 28NguyenTrongTaiDr.

  • Chng trnh:Hm cho button ReceiveFor i = 0 To 7hkSW(i) V l M d 2chkSW(i).Value = n Mod 2

    If chkSW(i).Value = 0 Then chkSW(i).Caption = "Switch " & Str(i) &" off"Else chkSW(i).Caption = "Switch " & Str(i) &" on"End Ifn = Fix(n / 2)Next iEnd Sub

    4/8/2014 29NguyenTrongTaiDr.

  • Chng trnh:H h b S dHm cho button SendPrivate Sub cmdSend_Click()Dim t As IntegerDim t As IntegerDim i As IntegerDim s As Stringt = 0For i = 0 To 7t = t + (2 ^ i) * (1 - shpLED(i) FillStyle)t t + (2 i) (1 - shpLED(i).FillStyle)Next iPortOut BA_LPT, tPortOut BA_LPT+2, 1 'STROBE = 1 PortOut BA_LPT+2, 0 'STROBE = 0 End SubEnd Sub

    4/8/2014 30NguyenTrongTaiDr.

  • Chng trnh:Hm choPrivate Sub Form_Load()BA LPT &H378BA_LPT = &H378PortOut BA_LPT + 2, 0End SubEnd SubPrivate Sub lblLED_Click(Index As Integer)shpLED(Index).FillStyle = 1 - shpLED(Index).FillStylep ( ) y p ( ) yEnd Sub

    4/8/2014 31NguyenTrongTaiDr.

  • Xut nhp d liu 8 bit ch Bidirectional U3

    D1D0

    D2D3D4

    Data3

    Data0

    Data4

    Data2Data1

    U3

    D03

    D14

    D27

    D38

    13

    Q02

    Q1 5

    Q26

    Q3912D4

    D5

    D7

    Data4

    Data7Data6Data5

    D3D413

    D514

    D617

    D718

    CLK11

    Q3Q4 12

    Q515

    Q6 16

    Q719

    IOW Base

    D6

    U274LS374

    OE1

    CLKControl Bit 5

    A12

    A24

    A36

    A48

    Y1 18

    Y216

    Y3 14

    Y412

    A51113 Y597

    1OE1

    A613

    A715

    A817

    Y67

    Y7 5

    Y83

    2OE19

    IOR Base

    4/8/2014 32NguyenTrongTaiDr.

    74LS244

  • Xut nhp d liu 8 bit ch Bidirectional

    Bit 5 ca port iu khin cho php hoc cm chc nng 2 chiu caCng song song Chc nng ny ch thc hin c i vi nhng cngCng song song. Chc nng ny ch thc hin c i vi nhng cngc h tr. Khi bit nay c set ln 1, chn 29 s chuyn sang dngtng tr cao. trng thi ny, ta c th nhn d liu t data port. Vic

    hi d li d l l i h kh h highi d liu vo data port s c lu li nhng khng c thc hin.Tt ch 2 chiu bng cch set bit 5 xung mc 0.

    4/8/2014 33NguyenTrongTaiDr.

  • c d liu 8 bit vi cng SSP 1 chiu dng Status v Control Byte

    DATAChan 2-->9

    D0:D78 Bit OutputDATA

    11 /BUSY D7

    10 Ack D6

    12 Paper Out D5

    13 Select D4

    D

    A

    T

    A

    DATA

    011 D7

    12

    34

    17 /Select Printer

    16 Init

    D3

    D2

    OC

    7404

    12

    S

    131210

    D4D5D6 8 Bit

    5614 /Auto Linef eed D1

    OC

    OC

    S

    T

    A

    T

    U

    S

    16

    17

    D2D3

    Input

    981 Strobe D0

    Open Collector74LS05 Hex Inverter

    OC

    34

    12

    34

    OC

    R

    O

    L

    1

    14 D1D2 Data

    7404

    56

    OC

    OC

    C

    O

    N

    T

    R

    4/8/2014 34NguyenTrongTaiDr.

    1 D098OC

  • c d liu 8 bit vi cng SSP 1 chiu dng Status v Control Byte

    Port iu khin dng c 4 bt thp. Nh cp trn, port iu khin ccc ng ra cc thu h, c 2 trng thi l tng tr cao v GND. Nu ta kt nicc ng ra cc thu h, c 2 trng thi l tng tr cao v GND. Nu ta kt nicc ng vo trc tip vo port, s c xung t xy ra nu ng vo mc cao vport ang ko xung. V vy ta thng s dng cc b o cc thu h.

    outportb(CONTROL, inportb(CONTROL) & 0xF0 | 0x04);a = (inportb(STATUS) & 0xF0); /* Read MSnibble */

    c d liu

    a = (inportb(STATUS) & 0xF0); /* Read MSnibble */a = a |(inportb(CONTROL) & 0x0F); /* Read LSnibble */a = a ^ 0x84; /* Toggle Bit 2 & 7 */

    4/8/2014 35NguyenTrongTaiDr.

  • c d liu 8 bit vi cng SSP 1 chiu dng Status v b phn knh, Ch NibblCh Nibble

    U7

    42D3 11 /B1Y

    4

    2Y7

    3Y9

    4Y12

    1A2

    2A5

    3A11

    4A14

    D3D2D1D0

    11 /Busy10 Ack12 Paper Out13 Select

    4Y4A

    1B3

    2B6

    10

    D7D6D5

    A/B1

    15

    3B10

    4B13

    1 /Strobe

    D4

    74LS157

    G15

    8 Inp ts Using 74LS157 M ltiple er

    4/8/2014 36NguyenTrongTaiDr.

    8 Inputs Using 74LS157 Multiplexer

  • c d liu 8 bit vi cng SSP 1 chiu dng Status v b phn knh, Ch NibblCh Nibble

    Ch Nible l ch c yu thch khi c 8 bit d liu m khng tCh Nible l ch c yu thch khi c 8 bit d liu m khng tport trong ch ngc li s dng cc ng d liu. Ch Nibble sdng b phn knh 4x2->4x1 c d liu. Software sau s kt hp2 ibbl h h b M kh i h l h h2 nibble thnh byte. M khuyt im ca ch ny l tc thp hn. Ch ny yu cu nhiu lnh I/O hn c 1 byte, n i hi phi sdng IC ngoi. g g

    4/8/2014 37NguyenTrongTaiDr.

  • c d liu 8 bit vi cng SSP 1 chiu dng Status v b phn knh, Ch NibblCh Nibble

    c d liu vi ch Nibble

    outportb(CONTROL, inportb(CONTROL) | 0x01); /* Select Low Nibble (A)*/a = (inportb(STATUS) & 0xF0); /* Read Low Nibble */

    c d liu vi ch Nibble

    a = a >> 4; /* Shift Right 4 Bits */outportb(CONTROL, inportb(CONTROL) & 0xFE); /* Select High Nibble (B)*/a = a |(inportb(STATUS) & 0xF0); /* Read High Nibble */byte = byte ^ 0x88;

    4/8/2014 38NguyenTrongTaiDr.

  • M rng ng ra vi 74LS374

    4/8/2014 39NguyenTrongTaiDr.

  • M rng Port vi IC 8255U10U10

    D034

    D133

    D232

    D33130

    PA04

    PA1 3

    PA22

    PA3140D3D430

    D529

    D628

    D727

    PA3PA4 40

    PA5 39

    PA638

    PA737

    PB0 18A09 PB0PB1

    19

    PB220

    PB3 21

    PB422

    PB52324

    RD5

    WR36

    A0A1

    8

    RESET35

    6 PB6 24

    PB7 25

    PC014

    PC1 15

    PC2 16

    CS6

    PC2PC3

    17

    PC413

    PC5 12

    PC6 11

    PC710

    4/8/2014 40NguyenTrongTaiDr.

    8255

  • M rng Port vi IC 8255

    4/8/2014 41NguyenTrongTaiDr.

  • M rng Port vi IC 8255

    8 bit ca Port A c th c lp trnh nh 8 bit u vo , 8 bit u ra, hocvo/ra

    8 bit ca Port B c th c lp trnh nh 8 bit u vo , 8 bit u ra, hocvo/ravo/ra

    8 bit ca Port C c th c lp trnh nh 8 bit u vo , 8 bit u ra. Co 1 thpchia lm 2 phn: digit cao =4 bit cao, v digit thp =4 bit thp. Mi digit c thlp trnh nh cc u vo hoc cc u ra. Ngoi ra, cc bt trn Port C cng cth c lp trnh ring r p g

    4/8/2014 42NguyenTrongTaiDr.

  • M rng Port vi IC 8255

    /WR v /RD l 2 tn hiu tch cc mc thp dng ghi v c d liu.

    D0 D7 : cc chn d liu giao tip VXL hay cng

    RESET tch cc mc cao, dng xa thanh ghi iu khin. Tt c cc cngc reset thnh cc cng vo.

    /CS tch cc thp dng chn chip

    A0 A1 d A B C h h hi i khiA0,A1: dng truy cp cc cng A, B, C v thanh ghi iu khin.

    4/8/2014 43NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    Mode 0: Cc Port A, B, CU, CD ch c th c lp trnh nh cc Port vohoc Port ra n gin. g

    Mode1: Port A, B c lp trnh nh cc cng vo ra c kh nng bt tay. Tnhiu bt tay c cp bi cc bit cng Chiu bt tay c cp bi cc bit cng C.

    Mode 2: Cng A c dng nh cng vo/ra 2 chiu c kh nng bt tay, vig g g g ycc tn hiu bt tay c cp bi cc bit cng C. Cng B c lp trnh nhcc Port vo hoc Port ra n gin hoc c bt tay

    Mode BRS: Ch thit lp hoc xa bt. Ch ny ch c nhng bt ring rca cng C c th c lp trnh.

    4/8/2014 44NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    /CS A1 A0 Cng

    0 0 0 Port A

    0 0 1 Port B

    0 1 0 Port C

    0 1 1 Thanh ghi iu khin

    1 X X 8255 khng c chn

    4/8/2014 45NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    Thit lp I/0 Mode D7 =1

    4/8/2014 46NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    Thit lp BRS Mode D7 =0

    4/8/2014 47NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    4/8/2014 48NguyenTrongTaiDr.

  • Cc ch hot ng IC 8255

    4/8/2014 49NguyenTrongTaiDr.

  • VB thiu mt s hm truy cp trc tip phn cng v a lung. thchin nhng thi st n cn cc file lin kt ng ( dll) Cc file dll nhin nhng thiu st ny, cn cc file lin kt ng (.dll) . Cc file .dll nyc vit t nhng soft c h tr nhng truy cp ny nh VC, Delphi,Cch vit dll trn VC++

    Cc cng c

    Visual C++ 6 , Visual basic 6VisualC++6,Visualbasic6

    WritingTheDLL

    StartVC++IDE,Filemenu New.Chn Win32Dynamic linklibraryfromProjectstab.t tn projectnameclickOK.Chn simpleDLLprojectclickFinish

    4/8/2014 50NguyenTrongTaiDr.

  • 4/8/2014 51NguyenTrongTaiDr.

  • 4/8/2014 52NguyenTrongTaiDr.

  • 4/8/2014 53NguyenTrongTaiDr.

  • Now our function is ready. The next step is to create a .def file which informs the linker to export our function Select New from File menu and then select text File fromlinker to export our function.Select New from File menu and then select text File from Files tab. Give it a name example1.def. Now you can see an empty file . Add these lines in to example1.defBc k tip l to file def cho php xut chng trnhBc k tip l to file .def cho php xut chng trnhFile New text File

    4/8/2014 54NguyenTrongTaiDr.

  • 4/8/2014 55NguyenTrongTaiDr.

  • 4/8/2014 56NguyenTrongTaiDr.

  • Private Declare Function sum Lib "example1.dll" (ByVal x As Long, ByVal y As Long) As Long

    Private Sub Form_Load()

    End Sub

    Private Sub Command1_Click()Text3.Text = Str(sum(CInt(Text1.Text), CInt(Text2.Text)))End SubEnd Sub

    4/8/2014 57NguyenTrongTaiDr.

  • 4/8/2014 58NguyenTrongTaiDr.