Page 1
ETH-TTL-64 Hardware-Description Juli 2019...
Page 2
2.2.2. Step 2 - Connecting of the module 2.2.3. Step 3 - Testing the connection and the module 2.2.4. DIP-Switches 2.3. Technical data 2.4. Overview screen ETH-TTL-64 2.5. Power supply 2.6. Configuration of the voltage level of TTL-I/O's 2.7. Pin assignment 2.7.1.
Page 3
INDEX 3.2.1.1. Program under diverse operating systems 3.2.1.2. Program with diverse programming languages 3.2.1.3. Program independent of the interface 3.2.1.4. SDK-Kit for Programmer 3.2.2. Supported operating systems 3.2.3. Supported programming languages 3.2.4. Installation DELIB driver library 3.2.5. DELIB Configuration Utility 3.3.
Page 6
1.1. General remarks First of all, we would like to congratulate you to the purchase of a high quality DEDITEC product. Our products are being developed by our engineers according to quality requirements of high standard. Already during design and development we take care that our products have -besides quality- a long availability and an optimal flexibility.
Page 8
2.1. Introduction ETH-Interface with 64 TTL channels The ETH-TTL-64 provides a ethernet interface with 100/10Mbit and 64 TTL I/ Os. The high-grade case is suited for din rail mounting. Two 37 pin d-sub sockets grants access to the I/Os. Dip switches allowing a quick configuration of network settings.
Connect the ETH-TTL-64 via ethernet cable with your network or PC. 2.2.3. Step 3 - Testing the connection and the module In the Start menu, see "Start -> All Programs -> DEDITEC -> DELIB -> Sample Programs" you will find some example programs to test your module.
Page 10
2.2.4. DIP-Switches DHCP and EEPROM settings can be configured via DIP-Switches. The DIP- Switches are located on the small daughterboard with the ethernet port. Attention: You need to reconnect the power supply to apply the settings. DIP Switch 1 Mode / Description DHCP is active The network settings (ip, subnet mask, DNS-Domain and Gateway) will be received from a DHCP-Server.
Page 11
DIP Switch 2 Mode / Description EEPROM write protection is active If the write protection is active you can not configure the network settings using the DELIB Configuration Utility. EEPROM write protection is not active DIP Switch 3 Mode / Description The module starts with the parameters stored in the EEPROM.
2.3. Technical data Power 7V to 24V DC (two pin plug-in screw terminal) Supply Interface Ethernet 100/10Mbit Input/ 64*TTL I/O (adjustable in 8- blocks as input or output) Outputs TTL-Level 5V to 3.3V via jumper 5V to 1.5V via own power supply Maximum 5mA for each channel output...
Page 14
2.5. Power supply The input-power-supply-range lies between +7V and +24V DC.The power supply can be realized with a standard AC/DC adaptor with 1A output current. A suitable plug-in connector is included in each shipment. 2.6. Configuration of the voltage level of TTL-I/O's TTL level of 1.8 V to 5 V: By default, you can select the TTL level of 3.3 V or 5V via jumper.
Page 15
were significantly increased. If you want to apply your own voltage, this is done via the VIN pin see chapter Pin assignment. The TTL-I/O's of the module can be configured in a 16 blocks. Hardware description | Seite 15...
Page 20
These protocols can be used without our DELIB driver library on devices with the appropriate interface. The way through our protocols are operating system independent. You can find our manuals Protocols & Tabs here: Download PDF: http://www.deditec.de/pdf/manual_d_deditec_communication_protocols.pdf Online HTML-Manual: http://manuals.deditec.de/de/manual_deditec_communication_protocols/index. html Software | Seite 20...
Page 21
This manual provides a complete overview of the required register addresses of our modules as well as the structure of the different communication protocols. Software | Seite 21...
Page 22
3.1.4. Access via provided test programs With our DELIB Module Demo, you can test our control and control technology products for functionality without any major configuration effort. For detailed information see chapter DELIB Module Demo Software | Seite 22...
Page 23
3.2. DELIB driver library 3.2.1. Overview The following figure explains the structure of the DELIB driver library The DELIB driver library allows an uniform response of DEDITEC hardware with particular consideration of the following viewpoints: Independent of operating system Independent of programming language...
Page 24
3.2.1.1. Program under diverse operating systems 3.2.1.2. Program with diverse programming languages 3.2.1.3. Program independent of the interface 3.2.1.4. SDK-Kit for Programmer Integrate the DELIB into your application. On request, you will receive free of charge installation scripts, which allow you to integrate the DELIB installation into your application.
Page 25
3.2.2. Supported operating systems The following operating systems are compatible with our DELIB driver library: 32-Bit: Windows 10 Windows 8 Windows 7 Windows Vista Windows XP Windows 2000 Windows Server 2012 Windows Server 2008 Linux 64-Bit: Windows 10 x64 Windows 8 x64 Windows 7 x64 Windows XP x64 Windows Vista x64...
Page 26
If provided by the programming language / development environment, we support both 32-bit and 64-bit projects. Software | Seite 26...
Page 27
3.2.4. Installation DELIB driver library 3.2.5. DELIB Configuration Utility 3.3. Integration of the DELIB 3.3.1. Integration of the delib.h in Visual-C/C++ 3.3.2. Integration of the delib.cs in Visual-C# 3.3.3. Integration of the delib.cs in Visual-C# unter Windows 64bit 3.3.4. Integration of the delib.pas in Delphi 3.3.5.
Page 28
Description of the delib.dll integration in LabVIEW Version 11 - You can find the needed files for LabVIEW in the directorys "C:\Windows\System32\delib.dll" "C: \Programme\DEDITEC\DELIB\include\ delib.h" - Start LabVIEW and open the menu "Tools -> Import -> DLL ..." Software | Seite 28...
Page 29
- Choose the option "create VIs for DLL" and press continue Software | Seite 29...
Page 30
- In the next window, choose the path to the delib.h and delib.dll and press continue Software | Seite 30...
Page 31
- Press continue again - The Header-File will now be analized. Afterwards press continue. Software | Seite 31...
Page 32
- Follow the instructions and configurate the name and the saving location for the VIs. Software | Seite 32...
Page 33
- In the new window choose "Easy error correction" in the drop-down menu and press continue. Software | Seite 33...
Page 34
- VIs which are working with 64-bit values must be edited. The display must be changed from "unsigned long" to "unsigned quad". - The following VIs must be edited: -> DapiCNT48CounterGet48 (function return) -> DapiDIGet64 (function return) -> DapiDOSet64 (data) ->...
Page 35
- In addition for some VIs you need to change the elementype to "numeric". - The following VIs must be edited: -> DapiWriteLongLong (value) -> DapiReadLongLong (function return) - Afterwards press continue. Software | Seite 35...
Page 36
- You recive a summary of the executed steps. - Press continue - The VIs will now be created and are ready to use. Software | Seite 36...
Page 37
In the delib.h file can you read the hexadecimal values to determine the modes. The hex values must be convertet to decimal. After the installation of the DELIB-library, the delib.h file is located in the following directory: C:\Programs\Deditec\DELIB\Include\delib.h Software | Seite 37...
Page 38
The function could look like this in LabVIEW: The channel and mode are passed as unsigned long Software | Seite 38...
Page 41
4. Hardware 4.1. LED blinking behavior Erläuterung 1.) Bootvorgang Der Bootvorgang startet direkt nach dem Stecken der Spannungsversorgung. Die Bootvorgang-Sequenz wird einmalig durchlaufen. Hardware | Seite...
Page 42
2.) Applikation oder Bootloader 2.1 Applikation Der Bootvorgang wurde erfolgreich durchlaufen und das Produkt befindet sich in der Applikation. Das Produkt ist nun Einsatzbereit. Die Status-LED leuchtet 5 Sekunden und erlischt für etwa 300ms. Die Applikation-Sequenz wiederholt sich. Bei Modulen mit Ethernet-Schnittstelle (nicht RO-ETH und RO-CPU-800) Status-LED erlischt einmal: Statische IP Status-LED erlischt zweimal: IP über DHCP erfolgreich bezogen Status-LED erlischt dreimal: IP über DHCP nicht erfolgreich bezogen...
Page 43
2.2. Bootloader Das Produkt befindet sich nach dem Bootvorgang im Bootloader. Dies deutet auf einen Fehler in der Firmware hin. Eine Aktualisierung der Firmware kann das Problem in den meisten Fällen beheben. aktuellsten Firmware Versionen können über DT-Flasher heruntergeladen werden ( -> siehe Firmware Update durchführen) Die Status-LED leuchtet 2 Sekunden und erlischt für etwa 300ms.
4.2. DIP-Switches Einige Einstellungen lassen sich einfach mit Hilfe von DIP Schaltern konfigurieren. Es lassen sich die DHCP- und EEPROM-Einstellungen konfigurieren. Achtung: Alle Änderungen an den DIP-Schaltern werden nur nach Trennung und Wiederherstellung der Spannungsversorgung übernommen. Modus / Erklärung Schalter 1 DHCP ist aktiviert Die Netzwerkseinstellungen (IP, Subnetzmaske, DNS-Domain sowie Gateway) werden über einen DHCP-Server aus Ihrem...
Page 45
Modus / Erklärung Schalter 2 EEPROM Schreibschutz aktiviert Ist der Schreibschutz aktiv, kann keine Konfiguration der Netzwerkeinstellungen über das DELIB-Configuration Utility vorgenommen werden. EEPROM Schreibschutz deaktiviert Modus / Erklärung Schalter 3 Das Modul startet mit den im EEPROM gespeicherten Parametern. Die im EEPROM gespeicherten Werte (IP-Adresse, Gateway, Subnetzmaske, DHCP) werden beim Modulstart ignoriert.
Page 46
Geben Sie hier den Text ein. Hardware | Seite...
Page 47
DELIB API reference DELIB API reference | Seite...
5. DELIB API reference 5.1. Management functions 5.1.1. DapiOpenModule Description This function opens a particular module. Definition ULONG DapiOpenModule(ULONG moduleID, ULONG nr); Parameters moduleID=Specifies the module, which is to be opened (see delib.h) nr=Indicates No of module which is to be opened. nr=0 ->...
Page 49
5.1.2. DapiCloseModule Description This command closes an opened module. Definition ULONG DapiCloseModule(ULONG handle); Parameters handle=This is the handle of an opened module Return value none Example program // Close the module DapiCloseModule(handle); DELIB API reference | Seite...
Page 50
5.1.3. DapiGetDELIBVersion Description This function returns the installed DELIB version. Definition ULONG DapiGetDELIBVersion(ULONG mode, ULONG par); Parameters mode=Mode, with which the version is readout (must be 0). par=This parameter is not defined (must be 0). Return value version=Version number of the installed DELIB version [hex]. Example program version = DapiGetDELIBVersion(0, 0);...
Page 51
5.1.4. DapiSpecialCMDGetModuleConfig Description This command returns the hardware equipment (number of in-/output channels) of the module. Definition ULONG DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_GET_MODULE_CONFIG, par, 0, 0); Parameters handle=This is the handle of an open module. Get number of digital input channels par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DI Get number of digital output channels par=DAPI_SPECIAL_GET_MODULE_CONFIG_PAR_DO Get number of digital in-/output channels...
Page 52
Return value Get number of digital input channels return=Number of digital input channels Get number of digital output channels return=Number of digital output channels Get number of digital in-/output channels return=Number of digital in-/output channels Get number of analog input channels return=Number of analog input channels Get number of analog output channels return=Number of analog output channels...
Page 53
5.1.5. DapiOpenModuleEx Description This function opens a specific module with ethernet interface. The particularity of this command is, that parameters like IP-address, portnumber and timeout can be specified. Definition ULONG DapiOpenModuleEx(ULONG moduleID, ULONG nr, unsigned char* exbuffer, Parameters moduleID = Specifies the module, which is to be opened (see delib.h) nr = Indicates No of module which is to be opened.
5.2. Error handling 5.2.1. DapiGetLastError Description This function returns the last registered error. If an error has occurred, it must be deleted with DapiClearLastError(), otherwise any call of DapiGetLastError() will return the "old" error. If multiple modules are used, the use of DapiGetLastErrorByHandle() is recommended.
Page 55
5.2.2. DapiGetLastErrorText Description This function reads the text of the last registered error. If an error has occurred, it must be cleared with DapiClearLastError(), otherwise every call of DapiGetLastErrorText() returns the "old" error. Definition ULONG DapiGetLastErrorText(unsigned char * msg, unsigned long msg_length); Parameters msg = text buffer msg_length = length of the buffer...
5.3. Reading Digital inputs 5.3.1. DapiDIGet1 Description This command reads a single digit input. Definition ULONG DapiDIGet1(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module. ch=Specifies the number of input that is to be read (0 ..). Return value State of the input (0 / 1).
Page 57
5.3.2. DapiDIGet8 Description This command reads 8 digital inputs simultaneously. Definition ULONG DapiDIGet8(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module. ch=Specifies the number of the input, from which it begins to read from (0, 8, 16, 24, 32, ..) Return value State of the read inputs.
Page 58
5.3.3. DapiDIGet16 Description This command reads 16 digital inputs simultaneously. Definition ULONG DapiDIGet16(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module. ch=Specifies the number of the input, from which it begins to read from (0, 16, 32, ..) Return value State of the read inputs.
Page 59
5.3.4. DapiDIGet32 Description This command reads 32 digital inputs simultaneously. Definition ULONG DapiDIGet32(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module. ch=Specifies the number of the input, from which it begins to read from (0, 32, 64, ..) Return value State of the read inputs.
Page 60
5.3.5. DapiDIGet64 Description This command reads 64 digital inputs simultaneously. Definition ULONGLONG DapiDIGet64(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module. ch=Specifies the number of the input,from which it begins to read from (0, 64, ..) Return value State of the read inputs.
Page 61
5.3.6. DapiDIGetFF32 Description This command reads the flip-flops from the inputs and resets them. (Input state change). Definition ULONG DapiDIGetFF32(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module . ch=Specifies the number of the input, from which it begins to read from (0, 32, Return value State of 32 input change states DELIB API reference | Seite 61...
Page 62
5.3.7. DapiDIGetCounter Description This command reads the counter of a digital input Definition ULONG DapiDIGetCounter(ULONG handle, ULONG ch, ULONG mode); Parameters handle=This is the handle of an opened module. ch=Specifies the digital input,from which the counter will be read. mode=0 (Normal counter function) mode=DAPI_CNT_MODE_READ_WITH_RESET (Reading and resetting the counter) mode=DAPI_CNT_MODE_READ_LATCHED (Reading the latched counter)
Page 63
5.3.8. DapiSpecialCounterLatchAll Description This command saves the counters of all digital inputs simultaneously into a temporary storage (latch). So, after that, the counter of the latch can be read successively. Here, the speciality is, that it is possible to "freeze" simultaneously the counter and the frozen counter (latch) can be read one by one.
Page 64
5.3.9. DapiSpecialCounterLatchAllWithReset Description This command saves the counters of all digital inputs simultaneously into a temporary storage (latch). In addition, the counters of the digital inputs will be reset. Definition void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_COUNTER, DAPI_SPECIAL_COUNTER_LATCH_ALL_WITH_RESET, 0, 0); Parameters None Return-value None Remarks This command is only supported by our O8-R8 time modules!
Page 65
5.3.10. Dapi_Special_DI_FF_Filter_Value_Get Description This command sets a filter [ms], in which time interval digital input channels are scanned. Definition void DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_SET, ULONG time_ms, 0); Parameters handle=This is the handle of an opened module. Time_ms = Time interval [ms] by scanning digital input channels. Return value None Remarks...
Page 66
5.3.11. Dapi_Special_DI_FF_Filter_Value_Set Description This command sets a filter [ms], in which time interval the digital inputs are sampled. Definition ULONG DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_GET, 0, 0); Parameters handle=This is the handle of an opened module. Return value Time [ms] Remarks This command is only supported by modules with ethernet interface. Example program value = DapiSpecialCommand(handle, DAPI_SPECIAL_CMD_DI, DAPI_SPECIAL_DI_FF_FILTER_VALUE_GET, 0, 0);...
5.4. Setting Digital outputs 5.4.1. DapiDOSet1_WithTimer Description This function sets a digital output (ch) to a value (data - 0 or 1) for a specified time in msec. Definition void DapiDOSet1_WithTimer(ULONG handle, ULONG ch, ULONG data, ULONG time_ms); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output, from which it begins to write to (0, 32, 64, ..) data=Specifies the data values, to write to the outputs...
Page 68
5.4.2. DapiDOSet1 Description This is the command to set a single output. Definition void DapiDOSet1(ULONG handle, ULONG ch, ULONG data); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output to be set to (0 ..) data=Specifies the data value that is to be written (0 / 1) Return value None...
Page 69
5.4.3. DapiDOSet8 Description This command sets 8 digital outputs simultaneously. Definition void DapiDOSet8(ULONG handle, ULONG ch, ULONG data); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output, from which it begins to write to (0, 8, 16, 24, 32, ..) data=Specifies the data values, to write to the outputs Return value...
Page 70
5.4.4. DapiDOSet16 Description This command sets 16 digital outputs simultaneously. Definition void DapiDOSet16(ULONG handle, ULONG ch, ULONG data); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output, from which it begins to write to (0, 16, 32, ..) data=Specifies the data values, to write to the outputs Return value...
Page 71
5.4.5. DapiDOSet32 Description This command sets 32 digital outputs simultaneously. Definition void DapiDOSet32(ULONG handle, ULONG ch, ULONG data); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output, from which it begins to write to (0, 32, 64, ..) data=Specifies the data values, to write to the outputs Return value...
Page 72
5.4.6. DapiDOSet64 Description This command is to set 64 digital outputs. Definition void DapiDOSet64(ULONG handle, ULONG ch, ULONG data); Parameters handle=This is the handle of an opened module ch=Specifies the number of the output, from which it begins to write to (0, 64, ..) data=Specifies the data values, to write to the outputs Return value None...
Page 73
5.4.7. DapiDOReadback32 Description This command reads back the 32 digital outputs. Definition ULONG DapiDOReadback32(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module ch=Specifies the number of the input, from which it begins to read from (0, 32, Return value Status of 32 outputs.
Page 74
5.4.8. DapiDOReadback64 Description This command reads back the 64 digital outputs. Definition ULONGLONG DapiDOReadback64(ULONG handle, ULONG ch); Parameters handle=This is the handle of an opened module ch=Specifies the number of the input, from which it begins to read from (0, 64, Return value Status of 64 outputs.
Page 75
5.5. Set TTL-In-/Outputs direction with DapiSpecialCommand 5.5.1. DAPI_SPECIAL_CMD_SET_DIR_DX_1 Description This command sets the direction of 8 consecutive TTL-In/Outputs (1-bit wise). Definition void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_SET_DIR_DX_1, ULONG ch, ULONG dir, 0); Parameters handle = This is the handle of an opened module. ch = Must be 0.
Page 76
5.5.2. DAPI_SPECIAL_CMD_SET_DIR_DX_8 Description This command sets the direction of up to 64 consecutive TTL-In/Outputs (8-bit wise). 1-bit case represents 8 TTL-In/Outputs Definition void DapiSpecialCommand(ULONG handle, DAPI_SPECIAL_CMD_SET_DIR_DX_8, ULONG ch, ULONG dir, 0); Parameters handle = This is the handle of an opened module. ch = Must be 0.
Page 80
6. Appendix 6.1. Revisions Rev 2.00 First DEDITEC issue Rev 2.01 Added chapters "Firmware update" and "Integration of the DELIB" Rev 2.02 Added index Appendix | Seite 80...
Page 81
6.2. Copyrights and trademarks Linux is registered trade-mark of Linus Torvalds. Windows CE is registered trade-mark of Microsoft Corporation. USB is registered trade-mark of USB Implementers Forum Inc. LabVIEW is registered trade-mark of National Instruments. Intel is registered trade-mark of Intel Corporation AMD is registered trade-mark of Advanced Micro Devices, Inc.
Need help?
Do you have a question about the ETH-TTL-64 and is the answer not in the manual?
Questions and answers