Home
PIO-DIO Series Classic Driver DLL Software Manual
Contents
1. 33 PIODAS INERCIMN OVE sai tecucs Q 34 2 8 PIO D48 COUNTER FUNCTIONS sscssssicisssccesniassesseavaccavnapscaneuas oasaycastssshoeeaaatbossssssteacosooesantdesesbasseineasoadanacasesbansiiesnaons 35 PLODAS SetCOUnftek site e E Feed iia ose Pea te ended lui sos ad Dia ttcdesiaateidngendeuduletaediiuey evo de oen EM RARE OR 35 PIOD4B REGU COUNTER p eii nir adaio hih 36 PIODAS SCCCOUNTCTA iis 37 PIODAS ReadCoUnterA 4 m i cht a aka RR rA Maa ERE AE AE AAAA Ea TOE SETAA EA 38 2 9 PIO D48 FREQUENCY FUNCTIONS EE 39 PIODAS Freg M C ER 39 o CN FregA T 40 2 10 PIO DG4 COUNTER FUNCTIONS cte E 41 PIODO4 PRETI GleTiTo ize E EE 41 PIODG4 REGU COUNCL tates 42 PIODG4SCtCOUNECTA E 43 PIODG4 REGU GOUNTEIA DR 44 3 DOS LIB FUNCTION e 46 3 L ERROR CODE TABLE D M 46 PIO Driveri S aa A AE A AO A A A A A AA O A 47 PIO CB Iu 48 PIO GetConftgAddressSDdCe oue Ie reet ee ERAI Een PY YR A ERR DE ELTE AA conte Ag REIR Re YR AEE AER 48 ShowPIOPISQ i
2. PIO DIO Series Classic Driver DLL Software Manual 2 6 Interrupt Functions PIODIO IntResetCount This function is used to clear the counter value of the device driver for the interrupt Syntax WORD PIODIO JIntResetCount void Parameters None gt Returns Refer to Section 2 1 Error Code Table PIODIO_IntGetCount This function is used to read the dwintCount value defined in the device driver gt Syntax WORD PIODIO_IntGetCount WORD dwintCount gt Parameters dwintCount Output Address of dwintCount which is used of store the value of the interrupt counter gt Returns Refer to Section 2 1 Error Code Table 9 E a Ps 2 x hs j This function is used to install the IRQ service routine Syntax WORD PIODIO_IntInstall WORD wBoardNo HANDLE hEvent WORD winterruptSource WORD waActiveMode Parameters wBoardNo The board to be used hEvent Address of an Event handle The user s program must call the Windows API function Create Event to create an event object winterruptSource The Interrupt Source to be used Refer to hardware s manual of PIO DIO series for the detail information Model winterruptSource Description PIO D48 series PC3 PC7 from Port 2 PC3 PC7 from Port 5 CoutO Cout2 PCO PC1 PC2 PC3 EXTIRQ EVTIRQ TMRIRQ P2CO P5CO P8CO P11CO PIO D56 D24 series PIO D64 series PIO D96 series WN e ON FP OU F HN FP OO WN F
3. PIO DIO Series Classic Driver DLL Software Manual Version 1 6 Jun 2014 Board includes PIO D24 D24U D56 D56U PIO D48 D48U D48SU PIO D64 D64U PIO D96 D96U D96SU PIO D144 D144U D144LU PIO D168A D168 D168U PEX D24 D56 PEX D48 PEX D96S and PEX D144LS All products manufactured by ICP DAS are warranted against defective materials for a period of one year from the date of delivery to the original purchaser ICP DAS assumes no liability for damages consequent to the use of this product ICP DAS reserves the right to change this manual at any time without notice The information furnished by ICP DAS is believed to be accurate and reliable However no responsibility is assumed by ICP DAS for its use nor for any infringements of patents or other rights of third parties resulting from its use Copyright 2014 by ICP DAS All rights are reserved Names are used for identification only and may be registered trademarks of their respective companies If you have any question please feel to contact us at service icpdas com service icpdas gmail com We will give you quick response within 2 workdays PIO DIO Series Classic Driver DLL Software Manual TABLE OF CONTENTS 1 INTRODUCTION exce M 3 1 1 OBTAINING THE DRIVER INSTALLER PACKAGE 33 91ie eren Ee nh rete n Fete apres ask e ge then sepu o aono ead an cerae iure ao ea Eua seo aura re Yee 4 1 2 DRIVER IN
4. WORD PIOD48_IntRemove void User Manual Ver 1 6 Jun 2014 Page 12 PIO DIO Series Classic Driver DLL Software Manual Table2 6 PIO D48 Counter Functions Table Section Function Definition PIO D48 Counter Functions void PIOD48 SetCounter DWORD dwBase WORD wCounterNo WORD bCounterMode DWORD wCounterValue DWORD PIOD48 ReadCounter DWORD dwBase WORD wCounterNo WORD bCounterMode void PIOD48 SetCounterA WORD wCounterNo WORD bCounterMode DWORD wCounterValue DWORD PIOD48 ReadCounterA WORD wCounterNo WORD bCounterMode Table2 7 PIO D48 Frequency Functions Table Section Function Definition PIO D48 Frequency Functions DWORD PIOD48_Freq DWORD dwBase DWORD PIOD48_FreqA Table2 8 PIO D64 Counter Functions Table Section Function Definition PIO D64 Counter Functions void PIOD64_SetCounter DWORD dwBase WORD wCounterNo WORD bCounterMode DWORD wCounterValue DWORD PIOD64_ReadCounter DWORD dwBase WORD wCounterNo WORD bCounterMode void PIOD64_SetCounterA WORD wCounterNo WORD bCounterMode DWORD wCounterValue DWORD PIOD64_ReadCounterA WORD wCounterNo WORD bCounterMode User Manual Ver 1 6 Jun 2014 Page 13 PIO DIO Series Classic Driver DLL Software Manual 2 1 Error Code Table For the most errors it is recommended to check 1 Doesthe device driver installs successful Does the card have plugged Try to use another slot to plug the card aw PWN Restart
5. for Delphi 4 PIODIO H Header files PIODIO PAS gt Declaration files PIODIO LIB Linkage library for BCB only vc6 gt forVisual C 6 VB6 gt for Visual Basic 6 PIODIO H Header files PIODIO BAS Declaration files PIODIO LIB Linkage library for VC only VB NET2005 gt for VB NET2005 CSharp2005 for C NET2005 PIODIO vb Visual Basic Source files PIODIO cs gt Visual C Source files User Manual Ver 1 6 Jun 2014 Page 51 PIO DIO Series Classic Driver DLL Software Manual Select the appropriate demo for your PIO DIO series card as follows Folder The list of demo programs For PIO D24 D24U PEX D24 un DIO Demo Int Demo IntAPC demo For PIO D56 D56U PEX D56 DIO 1 Demo D56 DIO 2 Demo Int Demo ntAPC Demo For PIO D48 D48U D48SU PEX D48 DIO Demo Freq Demo Int Demo I nt1APC Demo WE Int2 Demo nt2APC Demo Int3 I nt3APC Demo Int4 I nt4APC Demo Read Counter Demo For PIO D64 D64U DIO Demo Bel Int Demo ntAPC Demo Counter Demo 32bitCounter Demo For PIO D96 D96U D96SU PEX D96S ams DIO Demo Int Demo ntAPC Demo 98 Ng pe DE ui B 2 S iid B PIO DIO Series Classic Driver DLL Software Manual D144 D168 For PIO D144 D144U D144LU PEX D144S p pp e DIO Demo DIO2 Demo DO Demo Int Demo IntAPC Demo For PIO D168 D168A D168U e DIO Demo DIO2 Demo DO Demo Int Demo IntAPC Demo User
6. Demo5 Use TMRIRQ to generate 0 5 Hz squa Demo6 Use TMRIRQ to generate 0 5 Hz squa EVTIRQ to count D64 90606909999 For PIO D96 D96U D96SU PEX D96S Demo1 DO demo of CN1 Demo2 DI O demo of CN2 and CN3 Demo3 Count high pulse of P2CO initial Low amp active High Demod4 Count high pulse of P2CO initial High amp active Low Demob Four Interrupt Source 9 D96 poppe For PIO D144 D144U D144LU PEX D144S Demo1 DO of CN1 Demo2 DO of CN1 to CN6 Demo3 Interrupt of P2CO Initial low amp active high Demod4 Interrupt of P2CO Initial high amp active low DemoS 4 Interrupt sources Demo6 DO demo Demo10 Find card number 0909099 6 For PIO D168 D168A D168U Demo1 DO of CN1 Demo2 DO of the CN1 to CN6 Demo3 Interrupt of P2CO Initial low amp active high 9 D168 Demod4 Interrupt of P2CO Initial high amp active low p Demob5 4 Interrupt sources Note that all of the hardware control functions need to be provided and processed by user themselves PIO DIO Series Classic Driver DLL Software Manual 5 Programs Architecture PIODIO Driverlnit Enable All DI DO Ports PIODIO_InputByte PIODIO_DriverClose Function Call into DLLs VXDs SYSs Device Driver Hardware Devices PIO DIO Series Classic Driver DLL Software Manual 6 Problems Report Technical support is available at no charge as described below The
7. ID of the PIO PISO series board wSubAuxID Input SubAux ID of the PIO PISO series board gt Returns Refer to Section 3 1 Error Code Table O BE NM P ss ui B 2x bd H PIO DIO Series Classic Driver DLL Software Manual PIO GetDriverVersion This subroutine will obtain the version number of PIO PISO driver Syntax WORD PIO_GetDriverVersion WORD wbDriverVersion Parameters wDriverVersion Output wDriverVersion address gt Returns Refer to Section 3 1 Error Code Table PIO_GetConfigAddressSpace The user can use this function to save the resources found on all the PIO PISO cards installed on the system Then the application program can control all the functions of PIO PISO series cards directly gt Syntax WORD PIO_GetConfigAddressSpace wBoardNo wBase wirq wSubVendor wSubDevice wSubAux wSlotBus wSlotDevice 3 M a DAL M d E PIO DIO Series Classic Driver DLL Software Manual Parameters wBoardNo Input Number of boards found in the PC wBase Output The base address of the PIO PISO series board wirq Output The IRQ number that the PIO PISO using wSubVendor Output SubVendor ID of the PIO PISO series board wSubDevice Output SubDevice ID of the PIO PISO series board wSubAux Output SubAux ID of the PIO PISO series board wSlotBus Output Slot Bus number wSlotDevice Output Slot Device ID Returns Re
8. Manual Ver 1 6 Jun 2014 Page 53 PIO DIO Series Classic Driver DLL Software Manual 4 2 For DOS The demo program is contained in http ftp icpdas com pub cd iocard pci napdos pci pio dio dos TC 5 for Turbo C 2 xx or above MSC gt for MSC 5 xx or above BC 5 for BC 3 xx or above p p p TC LIB gt for TC Library TC DEMO gt for TC demo program TC DIAG gt for TC diagnostic program TC LIB Large PIO H gt TC Declaration File TC LIB Large TCPIO_L LIB gt TC Large Model Library File TC LIB Huge TCPIO_H LIB gt TC Huge Model Library File 969 9929 MSC LIB Large PIO H gt MSC Declaration File MSC LIB Large MSCPIO_L LIB gt MSC Large Model Library File MSC LIB Huge MSCPIO_H LIB gt MSC Huge Model Library File p p p BC LIB Large PIO H gt BC Declaration File BC LIB Large BCPIO_L LIB gt BC Large Model Library File BC LIB Huge BCPIO_H LIB gt BC Huge Model Library File p p p User Manual Ver 1 6 Jun 2014 Page 54 PIO DIO Series Classic Driver DLL Software Manual Select the appropriate demo for your PIO DIO series card as follows Folder The list of demo programs For all PISO DIO series card diag PIO PISO exe For PIO D24 D24U D56 D56U PEX D24 D56 Demo1 DO demo of CON3 Duae Demo2 DI O demo of CON1 CON2 and CON3 Demo3 Count high pulse of PCO Initial low amp active high Demo4 Count high pulse of PCO Initial hi
9. and the Interrupt Counter will not increase gt Syntax WORD PIOD48_IntGetCount DWORD dwintCount gt Parameters dwintCount Output Address of dwintCount which is used of store the value of the interrupt counter gt Returns Refer to Section 2 1 Error Code Table User Manual Ver 1 6 Jun 2014 Page 30 PIO DIO Series Classic Driver DLL Software Manual PIODAS Intinstall This subroutine will install the IRQ service routine This function supports multiple interrupt source and the Active Mode can setting to Active Low only Active High only and Active Low or Active High Syntax WORD PIODAS Intinstall WORD wBoardNo HANDLE hEvent WORD wirqMask WORD wActiveMode Parameters wBoardNo Input The board to be used hEvent Input Address of an Event handle The user s program must call the Windows API function Create Event to create an event object wirgMask Input The IRQ Mask to be used Refer to hardware s manual of PIO D48 series for the detail information wirqMask Description Ea 3 4 IN T_CHAN_2 CoutO 8 INT CHAN 3 Cout2 This function supports 4 interrupt source at a time thus users can use multiple interrupt source like 1 2 4 8 9 NM i pus ui a d Sk bs E PIO DIO Series Classic Driver DLL Software Manual wActiveMode Input When t
10. 1 1 Obtaining the Driver Installer Package PIO DIO series card can be used on Linux and Windows 95 98 NT 2000 and 32 bit XP 2003 Vista 7 8 based systems and the drivers are fully Plug amp Play PnP compliant for easy installation The driver installer package for the PIO DIO series can be found on the supplied CD ROM or can be obtained from the ICP DAS FTP web site The location and addresses are indicated in the table below CD NAPDOS PCI PIO DIO DLL_OCX http ftp icpdas com pub cd iocard pci napdos pci pio dio dll ocx Install the appropriate driver for your operating system as follows Name OS For Windows 95 Windows 98 Windows NT Windows 2000 32 bit BODIE ERO Windows XP 32 bit Windows 2003 32 bit Windows Vista 32 bit Windows 7 and 32 bit Windows 8 For Linux Kernel 2 4 x 2 6 x and 3 12 x For detail information about Linux software installation refer to Ixpio tar gz Linux software manual The download addresses are show below http www icodas com download pci linux User Manual Ver 1 6 Jun 2014 Page 4 PIO DIO Series Classic Driver DLL Software Manual 1 2 Driver Installing Procedure Before the driver installation you must complete the hardware installation For detailed information about the hardware installation please refer to appropriate hardware user manual for your PIO DIO series card The hardware user manual is contained in SA CD NAPDOS PCI PIO DIO Manual http ftp
11. 4 PIO D64 Rev 2 0 or above PIO D64U PIO D56 PIO D56 Rev 5 0 or above PIO D56U PEX D56 PIO D48 PIO D48U PIO D48SU PEX D48 PIO D24 PIO D24 Rev 5 0 or above PIO D24U PEX D24 0x9880 0x80 0x9880 0x80 0x5C80 0x1C80 0x1C80 0x1C80 0x80 0x5880 0x5880 0x1880 0x1880 0x80 0x4080 0x4080 0x80 0x8080 0xC080 0x8080 0xC080 0x8080 0xC080 0x80 0x0080 0x0080 0x0080 0x80 0x8080 0xC080 0x8080 0xC080 0x8080 0xC080 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 0x01 User Manual Ver 1 6 Jun 2014 Page 15 0x50 0x50 0x50 0x00 0x00 0x00 0x00 0x00 0x10 0x10 0x10 0x10 0x10 0x20 0x20 0x20 0x40 0x40 0x40 0x40 0x40 0x40 0x40 0x30 0x40 0x40 0x40 0x40 PIO DIO Series Classic Driver DLL Software Manual 2 3 Test Functions PIODIO GetDllVersion This function is used to retrieve the version number of the PIODIO DLL Syntax WORD PIODIO GetDllVersion void Parameters None gt Returns DLL version information For example If 200 hex value is return it means driver version is 2 00 PIODIO_ShortSub This function is used to perform the subtraction as nA nB in short data type and is provided for testing DLL linkage purposes gt Syntax short PIODIO_ShortSub short nA short nB gt Parameters nA Input 2 bytes short data type val
12. Classic Driver DLL Software Manual wSlotBus Output Slot Bus number wSlotDevice Output Sub Device ID gt Returns Refer to Section 2 1 Error Code Table PIODIO_DriverClose This function is used to close the PIODIO Driver and release the device resources from the computer This function must be called once before exiting the user s application gt Syntax void PIODIO_DriverClose gt Parameters None gt Returns None User Manual Ver 1 6 Jun 2014 Page 21 PIO DIO Series Classic Driver DLL Software Manual PIODIO ActiveBoard This function is used to active one of the PIO DIO boards installed in the system This function must call once before the digital input digital output and interrupt functions are called Syntax void PIODIO ActiveBoard WORD wBoardNo Parameters wBoardNo Input The board numbers to active gt Returns Refer to Section 2 1 Error Code Table PIODIO WhichBoardActive This function is used to return the board number of the active board Syntax WORD PIODIO WhichBoardActive void Parameters None gt Returns Return the board number of the active board O BE NM foi ui d Sk j PIO DIO Series Classic Driver DLL Software Manual 2 5 Digital I O Functions PIODIO OutputByte This function is used to send 8 bits of data to the specified I O port Syntax void PIODIO OutputByte DWORD wPortAddr WORD bOutp
13. CounterA This subroutine is used to read the 8254 counter s value Users have to call the PIODIO ActiveBoard function before calling this function Syntax WORD PIOD48 ReadCounterA WORD wCounterNo WORD bCounterMode Parameters wCounterNo Input The 8254 Counter Number 0 to 2 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D48 series card for details Returns Returns the 16 bits counter value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 38 PIO DIO Series Classic Driver DLL Software Manual 2 9 PIO D48 Frequency Functions The following PIOD48_ XXX series function is designed for PIO D48 series card only PIODAS8 Freq This subroutine is used to measurement the signal frequency Users have to connect the signal with CN1 Pin29 and connect the signal with CN1 Pin19 It will uses the Counter 0 and Counter 1 to measure the frequency thus users shouldn t use Counter 0 and Counter 1 for other purposes Syntax WORD PIOD48_Freq WORD dwBase gt Parameters dwBase Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid Returns Return the frequency value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 39 PIO DIO Series Classic Driver DLL Software Manual PIODA48 FreqA Please refer to the description of PIOD48 Freq functi
14. DIO functions Syntax WORD PIODIO SearchCard WORD wBoards DWORDn dwPlOCardlD Parameters wBoardNo Determine the total number of boards DwPlOCardID Sub IDs of the PIODIO card Refer to Section 2 2 Sub IDs Table for more details Note Different versions of the PIO DIO series cards may have different Sub IDs This function will determine the total number of PIO DIO series cards including all versions no matter what version Sub ID is input For example wRtn PIODIO_SearchCard amp wBoards 0x800100 Will determine the total number of PIO D144 cards installed in the PC regardless of version Returns Refer to Section 2 r Code Table PIO DIO Series Classic Driver DLL Software Manual PIODIO GetConfigAddressSpace This function is used to obtain the I O address and other information for the PIO DIO series cards Syntax WORD PIODIO GetConfigAddressSpace WORD wBoardNo DWORD wAddrBase WORD wirqNo WORD wSubVendor WORD wSubDevice WORD wSubAux WORD wsSlotBus WORd wSlotDevice gt Parameters wBoardNo Input PIO DIO series card number wAddrBase Output The bases address of PIO DIO series cards Only the low WORD is valid wirqNo Output The IRQ number that is being used by the PISO DIO series cards using wSubVendor Output Sub Vendor ID wSubDevice Output Sub Device ID wSubAux Output Sub Aux ID 9 E 5 EA ui Bi n 2 id li PIO DIO Series
15. ERR RE RR ERR ER EARE RM Eae HERRERA RD E ERR Raai 22 PIODIO_WhichBoardActiv sinenion anneni E aa Na 22 2 5 DIGITAL ZO FUNCTIONS 1i cir rores Ceo erret dci raietan an aeai diced ra eese terii ie Sai eiaa niea aieiai Eae Eini aa ER ds 23 PIODIO NO icu cM 23 PIODIO InputByte E M 23 PIODIO O utputWOrd i o t seed aaa T AE RP eR ER LE REARE RA VE eR E Te QR R TREE aiana Y aaa RR egg a o Ee da dea RARE 24 PIODIO AN PUCWOIG r 24 2 6 INTERRUPT FUNCTIONS EP M 25 PIODIO IntResetCount ie iiit toa tnra k akku siste TE ERR E ad XR CER UE ERR RR do ERR RR CEA ER E REM inadai iaaa a aaiae aiaiai 25 PIODIO NEG CECOURE oen eunian AE EAA AE A AE EENE A AEA E RA A 25 PIODIO _Intlnstall e M E Raa aa 26 PIODIO Ir dide c eae onani eT EEE EEA E RAEO A AAA EEEa EEEE E A ENEE RAET 27 Architecture of Int rr pt mode ii eti a C A A EAA AAAA sha de EAER EA 28 2 7 PIO D48 INTERRUPT F NCGTIONS 4 3252 etuer ee yao Gao n ranra Eosin Fio n F r e poen exa NETEN OKEE EEEo aasa SEEE 30 Ilo auci A 30 User Manual Ver 1 6 Jun 2014 Page 1 PIO DIO Series Classic Driver DLL Software Manual Ie HI rien m A 31 PIOD48 INtGETACTIVEFIGG
16. PF OO Model winterruptSource Description PIO D144 D168 series 0 P2CO 1 P2C1 2 P2C2 3 P2C3 wActiveMode The mode for triggering the interrupt wActiveMode Description 0 PIODIO ActiveLow 1 PIODIO ActiveHigh gt Returns Refer to This function is used to remove the IRQ service routine gt Syntax WORD PIODIO_IntRemove void gt Parameters None gt Returns Refer to CreateThread d mm lU S C 4S Application Create Event for Device Driver CreateEvent PIODIO Intinstall Please refer to the following Windows API functions The following portion description of these functions was copied from MSDN For the detailed and completely information please refer to MSDN C om d The CreateEvent function creates or opens a named or unnamed event object HANDLE CreateEvent pointer to security attributes LPSECURITY ATTRIBUTES IpEventAttributes BOOL bManualReset flag for manual reset event BOOL blnitialState flag for initial state LPCTSTR IpName pointer to event object name PIO DIO Series Classic Driver DLL Software Manual CreateThread The CreateThread function creates a thread to execute within the virtual address space of the calling process To create a thread that runs in the virtual address space of another process use the CreateRemoteThread function HANDLE CreateThread pointer to security attributes LPSECURITY ATTRIBU
17. PIODAS IntGetActiveFlag WORD bActiveHighFlag WORD bActiveLowFlag Parameters bActiveHighFlag Output Returns a flag that indicates which interrupt source changed to High State bActiveLowFlag Output Returns a flag that indicates which interrupt source changed to Low State gt Returns Refer to Section 2 1 Error Code Table O BE NM pus is d 2 in j PIO DIO Series Classic Driver DLL Software Manual PIOD48_IntRemove This function is used to remove the IRQ service routine gt Syntax WORD PIOD48_IntRemove void gt Parameters None gt Returns Refer to Section 2 1 Error Code Table User Manual Ver 1 6 Jun 2014 Page 34 PIO DIO Series Classic Driver DLL Software Manual 2 8 PIO D48 Counter Functions The following PIODA48 XXX series function is designed for PIO D48 series card only PIOD48_SetCounter This subroutine is used to set the 8254 counter s mode and value gt Syntax WORD PIOD48_SetCounter WORD dwBase WORD wCounterNo WORD bCounterMode DWORD wCounterValue Parameters dwBase Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid wCounterNo Input The 8254 Counter Number 0 to 2 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D48 series card for details wCounterValue Input The 16 bits value for the timer counter to count Only the l
18. STALLING PROCEDURE m aN 5 1 3 PNP IDRIVERINSTALEATION 5 ccsccnds sedecnessusvecsnartecussactvtead AmE En EEEa AA EANES iea nEn Enae SAE EPEa RANS NEA NEES ANESSE RAN EPEAREN 8 1 4 UNINSTALLING THE PIO DIO SERIES CLASSIC DRIVER esee nennen enn ren en nennen enn en nnne nennen enne 10 DLL FUNCTION DESCRIPTIONS e uuas 11 2 1 ERROR CODE TABLE ws scssssssecsigstnassssaceasssscenasassesiasaqisevapsiesnsaesasasyscsddasboceaaaundessancnissoscbeasudacsnasessednass sedan asasdsnarsiiessuses 14 2 2 SUBIUDS TABUE sce caesbostuavaaies 15 2 3 TESTRUNGTIONS e cvncats cascsuitahlvedsccgenchibs cientatscdssehlvateasteadesnardoutsssadsacsrehlsutdaeten deshebbesssetetscdsesubentdaedeadsenehsvesevenes 16 PIODIONGOLDIVERSION PT 16 PIODIO SROS UD e 16 PIODIO Flo tS b m 17 2 4 DRIVER RELATIVE dU eo M M 18 PIODIO GEtDIVErVEFSI OM mE 18 IIeVIOMDIUII J q X M 18 PIODIO SCORCH COI EE 19 PIODIO GetConfigAddressSp te edet taion tse tt eint sar Ne osa Xe dees eS ea vu tud vss up kara s seva ena ad ena e 20 Op PTOL M 21 PIODIO ActiveBodtd 2 ndi D t a ED da EL RAE ERR R RE
19. TES IpThreadAttributes DWORD dwsStackSize initial thread stack size pointer to thread function LPTHREAD START ROUTINE lpStartAddress LPVOID IpParameter argument for new thread DWORD dwCreationFlags creation flags LPDWORD IpThreadld pointer to receive thread ID WaitForSingleObject The WaitForSingleObject function returns when one of the following occurs e The specified object is in the signaled state e The time out interval elapses To enter an alertable wait state use the WaitForSingleObjectEx function To wait for multiple objects use the WaitForMultipleObjects DWORD WaitForSingleObject HANDLE hHandle handle to object to wait for DWORD dwMilliseconds time out interval in milliseconds O BE NM ge fie is k d 2 PIO DIO Series Classic Driver DLL Software Manual 2 7 PIO D48 Interrupt Functions The following PIODA48 XXX series function is designed for PIO D48 series card only They cannot be used with other cards The most different between the PIO DIO and PIO D48 interrupt functions is the PIO DIO supports only one interrupt source at a time and the PIO D48 supports 4 interrupt source at a time PIOD48_IntGetCount This subroutine will read the Interrupt Counter value in the device driver The Interrupt Counter will be increased in the ISR when the interrupt is triggered When the interrupt setting to Active High only or Active Low only some of the interrupt signal will be ignored
20. best way to report problems is to send electronic mail to Service icpdas com or Service icodas gmail com on the Internet When reporting problems please include the following information Is the problem reproducible If so how What kind and version of platform that you using For example Windows 98 Windows 2000 or 32 bit Windows XP 2003 Vista 7 8 3 What kinds of our products that you using Please see the product s manual If a dialog box with an error message was displayed please include the full test of the dialog box including the text in the title bar 5 If the problem involves other programs or hardware devices what devices or version of the failing programs that you using 6 Other comments relative to this problem or any suggestions will be welcomed After we had received your comments we will take about two business days to test the problems that you said And then reply as soon as possible to you Please check that if we had received you comments And please keeps contact with us User Manual Ver 1 6 Jun 2014 Page 58
21. dt an e dE a RR DAR du i ated ueniunt ema aa ERE 50 4 DEMO PROGRAMS s 51 4 1 nier mire esed pret c 51 4 2 FOR DOS HC 54 5 PROGRAMS ARCHITECTURE 57 6 PROBLEMS idle isesi iSd 58 User Manual Ver 1 6 Jun 2014 Page 2 E NM EH E 1 Introduction The software is a collection of digital I O subroutines for PIO DIO series card add on cards for Windows 95 98 NT Windows 2000 and 32 bit Windows XP 2003 Vista 7 8 applications The application structure is presented in the following diagram The subroutines in PIODIO DLL are easy understanding as its name standing for It provides powerful easy to use subroutine for developing your data acquisition application Your program can call these DLL functions by VB VC Delphi BCB VB NET 2005 and CH NET 2005 easily To speed up your developing process some demonstration source program are provided ICP DAS PIO DIO Series Board Includes PIO D24 D24U D56 D56U PIO D48 D48U DA8SU PIO D64 D64U PIO D96 D96U D96SU PIO D144 D144U D144LU PIO D168A D168 D168U PEX D24 D56 PEX D48 PEX D96S and PEX D144LS PIO DIO Series Classic Driver DLL Software Manual
22. erMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D64 series card for details Returns Returns the 16 bits counter value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 44 PIO DIO Series Classic Driver DLL Software Manual User Manual Ver 1 6 Jun 2014 Page 45 PIO DIO Series Classic Driver DLL Software Manual 3 DOS Lib Function 3 1 Error Code Table Error Code Error ID Error String 0 NoError OK No Error 1 DriverHandleError Device driver opened error 2 DriverCallError Got the error while calling the drier functions 3 FindBoardError Can t find the board on the system 4 TimeOut Timeout Invalidate board number Valid range 0 to TotalBoard 1 6 NotFoundBoard Can t detect the board on the system 5 ExceedBoardNumber User Manual Ver 1 6 Jun 2014 Page 46 PIO DIO Series Classic Driver DLL Software Manual PIO Driverlnit This function can detect all PIO PISO series cards in the system It is implemented based on the PCI Plug amp Play mechanism 1 It will find all PIO PISO series cards installed in this system and save all their resources in the library Syntax WORD PIO Driverlnit WORD wBoards WORD wSubVendorID WORD wSubDevicelD WORD wSubAuxID Parameters wBoards Output Number of boards found in the PC wSubVendorlD Input SubVendor ID of the PIO PISO series board wSubDevicelD Input SubDevice
23. fer to Section 3 1 Error Code Table User Manual Ver 1 6 Jun 2014 Page 49 PIO DIO Series Classic Driver DLL Software Manual ShowPIOPISO This function will show a text string for a special Sub ID This text string is the same as that defined in PIO H Syntax WORD ShowPIOPISO wSubVendor wSubDevice wSubAux Parameters wSubVendor Input SubVendor ID of the board wSubDevice Input SubDevice ID of the board wSubAux Input SubAux ID of the board Returns Refer to Section 3 1 Error Code Table User Manual Ver 1 6 Jun 2014 Page 50 PIO DIO Series Classic Driver DLL Software Manual 4 Demo Programs 4 1 For Microsoft Windows ICP DAS PIO DIO Series Classic Driver DLL contains a set of functions It can be used in various application programs for PIO DIO series card The API functions supports many development environments and programming languages including Microsoft Visual C gt Visual Basic gt Borland Delphi gt Borland C Builder gt Microsoft Visual C NET gt Microsoft Visual VB NET The demo programs of Windows OS for the PIO DIO series can be found on the supplied CD ROM or can be obtained from the ICP DAS FTP web site The location and addresses are indicated in the table below AM CD NAPDOS PCI PIO DIO DLL_OCX Demo http ftp icpdas com pub cd iocard pci napdos pci pio dio dll ocx demo BCB4 gt for Borland C Builder 4 Delphid gt
24. gh amp active low Demob5 Four Interrupt Source For PIO D48 D48U D48SU PEX D48 Demo1 DO demo of CN1 and CN2 Demo2 DI demo of CN1 and CN2 Demo3 DI O demo of CN1 and CN2 Demo4 INT CHAN 3 timer interrupt Demo5 INT CHAN 2 16 bit event counter no interrupt init HIGH amp active LOW signal to PCO of port 2 Demo6 INT CHAN 2 16 bit event counter no interrupt init LOW amp active HIGH signal to PCO of port 2 Demo7 INT CHAN 2 16 bit down counter using interrupt init HIGH amp D48 active LOW signal to PC3 of port 2 Note The PC7 of port 2 is used to enable the interrupt Demos INT_CHAN_O interrupt demo init HIGH amp active LOW signal to PC3 of port 2 Note The PC7 of port 2 is don t case Demo9 INT CHAN O interrupt demo init HIGH amp active LOW signal to PC3 of port 2 Note The PC7 of port 2 is used to enable the interrupt Demo10 INT CHAN 1 interrupt demo init HIGH amp active LOW signal to PC3 of port 5 Note The PC7 of port 5 is used to enable the interrupt Demo11 INT CHAN O amp INT CHAN 1 interrupt demo init HIGH amp active LOW signal to PC3 of port 2 port 5 Note The PC7 of port 2 port 5 is don t care Fl User Manual Ver 1 6 Jun 2014 Page 55 ppp 9 PIO DIO Series Classic Driver DLL Software Manual For PIO D64 D64U Demo1 DO demo Demo2 DI O demo Demo3 Use external int to measure pulse width high level Demo4 Use EVTIRQ to count event
25. he ISR will service the interrupt wActiveMode Description 2 PIODA8 ActiveHigh The interrupt is occurred when the Interrupt Source status is high This can be 1 Active High 2 Active Low or 1 2 Both of the High and Low will active the interrupt gt Returns Refer to Section 2 1 Error Code Table User Manual Ver 1 6 Jun 2014 Page 32 PIO DIO Series Classic Driver DLL Software Manual PIOD48_IntGetActiveFlag This subroutine will read the Active High and Active Low flag from the device driver s memory queues First in First out Buffer Size 2000 flags for High Low The Active Flag is used to records the Active State change of interrupt source when the interrupt occurred The Active High Flag records which interrupt source changed to high state and the Active Low Flag records which interrupt source changed to low state Users can uses these flags to indicate which interrupt source has changed If the Active Mode is set to Active Low Active High only and the state for the Active Low Active High is equal to zero then the ISR will not increased the interrupt counter and the Active Flag for High and Low will not recorded If users have not calling this function to retrieve the flags from device driver s memory queues these queues will stop record the flags lost data while the buffer is full But the interrupt counter will still counting while the ISR services the interrupt gt Syntax WORD
26. ic Driver DLL Software Manual Step 5 Selection Yes restart computer now and then click the Finish button 1B Setup PIO DIO Win Completing the PIO DIO Win Setup Wizard To complete the installation of PIO DIO Win Setup must restart your computer Would you like to restart now Yes restart the computer now will restart the computer later User Manual Ver 1 6 Jun 2014 Page 7 PIO DIO Series Classic Driver DLL Software Manual 1 3 PnP Driver Installation Step 1 The system should find the new card and then continue to finish the Plug amp Play steps Note Some operating system such as Windows Vista 7 will find the new card and make it work p Found New Hardware Ux Network Controller automatically so the Step2 to Step4 will be skipped Step 2 Select Install the software automatically Recommended and click the Next gt button Found New Hardware Wizard Welcome to the Found New Hardware Wizard This wizard helps you install software for UniDAQ PIO D36 Digital 1 0 Board If your hardware came with an installation CD or floppy disk insert it now What do you want the wizard to do User Manual Ver 1 6 Jun 2014 Page 8 PIO DIO Series Classic Driver DLL Software Manual Step 3 Click the Finish button Found New Hardware Wizard Please wait while the wizard installs the software B3 Found Ne E Setting a syste
27. icpdas com pub cd iocard pci napdos pci pio dio manual To install the PIO DIO series classic drivers follow the procedure described below Step 1 Double Click PIO DIO Win xxxx exe to install driver Step 2 Click the Next gt button to start the installation on the Setup PIO DIO Win window 1B Setup PIO DIO Win Welcome to the PIO DIO Win Setup Wizard This will install PIO DIO win v212 on your computer lt is recommended that you close all other applications before continuing Click Next to continue or Cancel to exit Setup pu m User Manual Ver 1 6 Jun 2014 Page 5 PIO DIO Series Classic Driver DLL Software Manual iG Setup PIO DIO Win Select Destination Location Where should PIO DIO Win be installed ae Setup will install PIO_DIO_ Win into the following folder To continue click Next If vou would like to select a different folder click Browse C DAQPro PIO DIO At least 1 0 MB of free disk space is required lt Back Next gt YL Cancel am Step 4 Click the Install button to continue iB Setup PIO DIO Win Ready to Install Setup is now ready to begin installing PI DIO win on your computer Click Install to continue with the installation or click Back if vou want to review or change any settings Destination location CADAGProxPIO DIO User Manual Ver 1 6 Jun 2014 Page 6 PIO DIO Series Class
28. lid wCounterNo Input The 8254 Counter Number 0 to 5 0 to 2 Chip 0 3 to 5 Chip 1 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D64 series card for details Returns Returns the 16 bits counter value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 42 PIO DIO Series Classic Driver DLL Software Manual PIOD64 SetCounterA This subroutine is used to set the 8254 counter s mode and value Users have to call the PIODIO ActiveBoard function before calling this function Syntax WORD PIOD64 SetCounterA WORD wCounterNo WORD bCounterMode WORD wCounterValue Parameters wCounterNo Input The 8254 Counter Number 0 to 5 0 to 2 Chip 0 3 to 5 Chip 1 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D64 series card for details wCounterValue Input The 16 bits value for the counter to count Only the low WORD is valid Returns None User Manual Ver 1 6 Jun 2014 Page 43 PIO DIO Series Classic Driver DLL Software Manual PIOD64 ReadCounterA This subroutine is used to read the 8254 counter s value Users have to call the PIODIO ActiveBoard function before calling this function Syntax WORD PIOD64 ReadCounterA WORD wCounterNo WORD bCounterMode Parameters wCounterNo Input The 8254 Counter Number 0 to 5 0 to 2 Chip 0 3 to 5 Chip 1 wCount
29. m restore point and backing up old files in Case your system needs to be restored in the future Completing the Found New Hardware Wizard The wizard has finished installing the software for Hg UniDAQ PIO D96 Digital 1 0 Board Click Finish to close the wizard Cancel Step 4 Windows pops up Found New Hardware dialog box again Complete x i Found New Hardware Your new hardware is installed and ready to use User Manual Ver 1 6 Jun 2014 Page 9 PIO DIO Series Classic Driver DLL Software Manual 1 4 Uninstalling the PIO DIO Series Classic Driver The ICP DAS PIO DIO series classic driver includes an uninstallation utility that allows you remove the software from your computer To uninstall the software follow the procedure described below Step 1 Double clock the unins000 exe uninstaller application which can be found in the following folder C DAQPro PIO DIO Step 2 A dialog box will be PIO_DIO_Win Uninstall displayed asking you to confirm that 2 Are you sure you want to completely remove PIO DIO Win and all of its components you want to remove the utility program Click the Yes button to continue Remove Shared File Step 3 The Remove Shared File d ialog box The system indicates that the Following shared File is no longer in use by any f 3 programs Would you like for Uninstall to remove this shared File will then be dis
30. nctions Table 2 4 Driver Relative Functions WORD PIODIO GetDriverVersion WORD wDriverVersion WORD PIODIO Driverlnit void WORD PIODIO SearchCard WORD wBoards DWORDn dwPlOCardlD WORD PIODIO GetConfigAddressSpace WORD wBoardNo DWORD wAddrBase WORD wirqNo WORD wSubVendor WORD wSubDevice WORD wSubAux WORD wSlotBus WORD wSlotDevice PIO DIO Series Classic Driver DLL Software Manual viod PIODIO DriverClose void WORD PIODIO ActiveBoard WORD wBoardNo WORD PIODIO WhichBoardActive void Table2 3 Digital I O Functions Table Section Table2 4 Interrupt Functi Section Function Definition Digital I O Functions void PIODIO OutputByte DWORD wPortAddr WORD bOutputValue WORD PIODIO InputByte DWORD wPortAddr void PIODIO OutputWord DWORD wPortAddress DWORD wOutData DWORD PIODIO InputWord DWORD wPortAddress ons Table Function Definition Interrupt Functions WORD PIODIO_IntResetCount void WORD PIODIO IntGetCount DWORD dwintCount WORD PIODIO JIntinstall WORD wBoardNo HANDLE hEvent WORD winterruptSource WORD wActiveMode WORD PIODIO IntRemove void Table2 5 PIO D48 Interrupt Functions Table Section Function Definition PIO D48 Interrupt Functions WORD PIOD48_IntGetCount DWORD dwintCount WORD PIOD48_IntInstall WORD wBoardNo HANDLE hEvent WORD wirqMask WORD wActiveMode WORD PIODAS8 IntGetActiveFlag WORD bActiveHighFlag WORD bActiveLowFlag
31. on Users have to calling the PIODIO ActiveBoard function before calling this function Syntax WORD PIOD48 FreqA Parameters None Returns Return the frequency value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 40 PIO DIO Series Classic Driver DLL Software Manual 2 10 PIO D64 Counter Functions The following PIOD64 XXX series function is designed for PIO D64 series card only PIOD64 SetCounter This subroutine is used to set the 8254 counter s mode and value Syntax WORD PIOD64 SetCounter WORD dwBase WORD wCounterNo WORD bCounterMode DWORD wCounterValue Parameters dwBase Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid wCounterNo Input The 8254 Counter Number 0 to 5 0 to 2 Chip 0 3 to 5 Chip 1 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D64 series card for details wCounterValue Input The 16 bits value for the counter to count Only the low WORD is valid Returns None PIO DIO Series Classic Driver DLL Software Manual PIOD64 ReadCounter This subroutine is used to read the 8254 counter s value Syntax WORD PIOD64 ReadCounter WORD dwBase WORD wCounterNo WORD bCounterMode Parameters dwBase Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is va
32. ow WORD is valid Returns None PIO DIO Series Classic Driver DLL Software Manual PIOD48_ReadCounter This subroutine is used to read the 8254 counter s value gt Syntax WORD PIOD48_ReadCounter WORD dwBase WORD wCounterNo WORD bCounterMode Parameters dwBase Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid wCounterNo Input The 8254 Counter Number 0 to 2 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D48 series card for details Returns Returns the 16 bits counter value Only the low WORD is valid User Manual Ver 1 6 Jun 2014 Page 36 PIO DIO Series Classic Driver DLL Software Manual PIOD48_SetCounterA This subroutine is used to set the 8254 counter s mode and value Users have to call the PIODIO_ActiveBoard function before calling this function gt Syntax WORD PIOD48_SetCounterA WORD wCounterNo WORD bCounterMode WORD wCounterValue gt Parameters wCounterNo Input The 8254 Counter Number 0 to 2 wCounterMode Input The 8254 Counter Mode 0 to 5 Refer to the hardware s manual of PIO D48 series card for details wCounterValue Input The 16 bits value for the counter to count Only the low WORD is valid Returns None User Manual Ver 1 6 Jun 2014 Page 37 PIO DIO Series Classic Driver DLL Software Manual PIODA8 Read
33. played to confirm whether you If any programs are still using this File and it is removed those programs may want to remove the share files Click the Yes ee cara toes hare unsure choose No Leaving the fle on your to All button to continue File name WhatNew Ext Location CADAQProlPIO DIOWin2K TN Step 4 After the uninstallation process is complete a dialog box will be displayed to you that the driver was successfully removed Click the OK button to finish the uninstallation process PIO DIO Win Uninstall User Manual Ver 1 6 Jun 2014 Page 10 2 DLL Function Descriptions All of the functions provided for PIO DIO series card are listed below in Tables 2 1 to 2 4 This list of functions is expanded on in the text that follows However in order to make a clear and simplified description of the functions the attributes of the input and output parameters for every function is indicated as input and output respectively as shown in following table Furthermore the error code of all functions supported by PIO DIO series card is also listed in Section 2 1 Input Yes No Output No Yes Input Output Yes Yes Note All of the parameters need to be allocated spaces by the user Table2 1 Test Functions Table 2 3 Test Functions WORD PIODIO GetDllVersion void short PIODIO ShortSub shor nA short nB float PIODIO FloatSub float fA float fB Table2 2 Driver Relative Fu
34. ue nB Input 2 bytes short data type value gt Returns The value of nA nB O BE NM is n ui 2 9 n E PIO DIO Series Classic Driver DLL Software Manual PIODIO FloatSub This function is used to perform the subtraction as fA fB in float data type and is provided for testing DLL linkage purpose Syntax float PIODIO FloatSub float fA float fB Parameters fA Input 4 bytes floating point value B Input 4 bytes floating point value gt Returns The value of fA fB User Manual Ver 1 6 Jun 2014 Page 17 PIO DIO Series Classic Driver DLL Software Manual 2 4 Driver Relative Functions PIODIO GetDriverVersion This function is used to read the version number information from the PIODIO driver Syntax WORD PIODIO GetDriverVersion WORD wbDriverVersion Parameters wDriverVersion Output wDriverVersion address Returns Refer to Section 2 1 Error Code Table PIODIO Driverlnit This function is used to open the PIODIO driver and allocate the computer resource for the device This function must be called once before applying other PIODIO functions Syntax WORD PIODIO Driverlnit Parameters None gt Returns Refer to Section 2 1 Error Code Table 98 E E EA ds d E E This function can be used to search for the installed card and determine total number of boards This function must be called once before applying other PIO
35. utVal Parameters wPortAddr Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid bOutputVal Input 8 bits of data sent to the I O port Only the low BYTE is valid gt Returns None PIODIO_InputByte This function is used to read 8 bits of data from the specified I O port gt Syntax WORD PIODIO_InputByte DWORD wPortAddr gt Parameters wPortAddr Input I O port addresses Refer to the PIODIO GetConfigAddressSpace function Only the low WORD is valid Returns 16 bits of data where the leading 8 bits are all O Only the low BYTE is valid PIO DIO Series Classic Driver DLL Software Manual PIODIO OutputWord This function is used to send 16 bits of data to the specified I O port Syntax void PIODIO OutputWord DWORD wPortAddr WORD wOutputVal Parameters wPortAddr Input I O port addresses Refer to PIODIO GetConfigAddressSpace function Only the low WORD is valid wOutputVal Input 16 bit data sent to the I O port Only the low WORD is valid gt Returns None PIODIO_InputWord This function is used to read 16 bits of data from the specified I O port gt Syntax WORD PIODIO InputWord DWORD wPortAddr Parameters wPortAddr Input I O port addresses Refer to PIODIO GetConfigAddressSpace function Only the low WORD is valid Returns 16 bits of data Only the low WORD is valid
36. your system to try again Error Code Error ID 0 PIODIO NoError 1 PIODIO DriverOpenError 2 PIODIO DriverNoOpen 3 PIODIO GetDriverVersionError 4 PIODIO_InstalllrqError 5 PIODIO ClearlntCountError 6 PIODIO_GetIntCountError 7 PIODIO_RegisterApcError 8 PIODIO_RemovelrqError 9 PIODIO_FindBoardError 10 PIODIO_ExceedBoardNumber 11 PIODIO_ResetError 12 PIODIO_IrqMaskError 13 PIODIO_ActiveModeError 14 PIODIO_GetActiveFlagError 15 PIODIO_ActiveFlagEndOfQueue Does the card conflicts with other device Close other applications to free the system resources Error String OK No Error Device driver can t be opened The PIODIO Driverlnit function must be called first Get driver version error Install IRQ error Clear counter value error Get interrupt counter error Get register APC error Remove IRQ error Cannot find board The board number exceeds the maximum board number 7 Can t reset the interrupt count Irq Mask is 1 2 4 8 or 1 to OxF Active Mode is 1 2 or 1 to 3 Can t get the interrupt active flag The flag queue is empty User Manual Ver 1 6 Jun 2014 Page 14 PIO DIO Series Classic Driver DLL Software Manual 2 2 Sub IDs Table PIO DIO Series Sub Vendor ID Sub_ Device ID Sub_AUX ID PIO D168 PIO D168A PIO D168U PIO D144 PIO D144 Rev 4 0 or above PIO D144U PIO D144LU PEX D144LS PIO D96 PIO D96 Rev 4 0 or above PIO D96U PIO D96SU PEX D96S PIO D6
Download Pdf Manuals
Related Search
Related Contents
Dons_Defauts_etiquetage_Comprendre - DRAAF Rhône HR-9016 - Jacobsen NEC NDA-24311 Answering Machine User Manual Copyright © All rights reserved.
Failed to retrieve file