Dallas Semiconductor DS2490X, DS2490S-T-R, DS2490S Datasheet

1 of 50 033199
FEATURES
§ Communicates at regular and Overdrive 1-
Wire speeds
§ Supports 12V EPROM programming and stiff
5V pullup for crypto iButton, sensors and EEPROM
§ Slew rate controlled 1-Wire timing and active
§ Programmable 1-Wire timing and driver
characteristics accommodate a wide range of MicroLAN configurations at regular speed
§ Smart 1-Wire protocol combines data and
control information without requiring extra pins
§ High-speed 12 Mbps USB interface
§ Integrated USB-compliant transceiver
§ Supports USB remote wakeup to resume a
suspended host system
PIN ASSIGNMENT
16-Pin SOIC
300-Mil
ORDERING INFORMATION
DS2490S 16-Pin SOIC
DESCRIPTION
The DS2490 is a bridge chip that enables communication between the Universal Serial Bus (USB) and a 1-Wire bus. It provides regular, overdrive and flexible 1-Wire communication speeds and a full-speed 12 Mbps connection to USB. USB vendor-specific commands defined in this specification are used to control the DS2490 and communicate with attached 1-Wire devices. A functional block diagram of the DS2490 is shown in Figure 1.
DS2490
USB to 1-WireTM Bridge Chip
www.dalsemi.com
PRELIMINARY
DS2490
2 of 50 033199
SIGNAL SUMMARY Table 1
SIGNAL NAME TYPE FUNCTION
VD PWR
Power supply input for digital and 1-Wire functions. Range: 5.0±10%
VPP PWR Power supply input for 1-Wire EPROM programming. Range:
12V±0.25V
VB PWR
Power supply input for USB functions. Range: 3.3V±10% supply
regulated from USB supplied VBUS. D+ I/O USB data - non-inverted of differential data pair. D- I/O USB data - inverted signal of differential data pair. 1-Wire I/O 1-Wire Input/Output. PMOD I Reserved for future use. Must be tied to GND.
SUSO
O
Suspend Output - buffered USB suspend state output from USB device
controller. When LOW the USB is in an active non-suspended state,
when HIGH the USB has entered a suspended state. This is an open
drain output and requires an external pullup. XI I Crystal input. Use a 12.0 MHz, fundamental mode, parallel resonant
crystal. A 12.0 MHz CMOS clock source may also be used. XO O Crystal output. Connect to other side of crystal 1 if used. GND PWR Ground reference and ground return for 1-Wire bus. NC No connect. For factory use or reserved, do not connect to these pins.
RELATED DOCUMENTS
This specification uses terms from and references or complies with the Universal Serial Bus Specification, which may be obtained from the USB Implementers Forum web site: www.usb.org. The
USB specification is considered to be part of the DS2490 specification.
This specification uses several terms and acronyms associated with Dallas Semiconductor 1-Wire products and technologies. For a detailed description of iButton technology and terms download the Book of iButton Standards from the Dallas Semiconductor iButton web site: www.ibutton.com.
DOCUMENT ORGANIZATION
The remainder of this document is organized into the following major sections:
SECTION Summary
OVERVIEW Device functional summary and application examples 1-WIRE I/F CONTROLLER Edge control and timing diagrams of 1-Wire signals USB COMMUNICATION Configuration model, core and vendor-specific command
summaries
MODE COMMANDS Commands used to configure 1-Wire interface operational
characteristics
CONTROL COMMANDS Commands used to control 1-Wire communication
command processing
COMMUNICATION COMMANDS Commands used to communicate with an attached 1-Wire
device
DEVICE FEEDBACK Technique to obtain device status information
DS2490
3 of 50 033199
USB TRANSCEIVER Transceiver connection requirements OSCILLATOR Oscillator connection requirements SUSPEND OUTPUT
SUSOsignal operation and purpose
ELECTRICAL CHARACTERISTICS DC and AC specifications APPLICATION INFORMATION HW and SW application information APPENDIX 1 CONTROL COMMANDS – USB setup packet encoding APPENDIX 2 COMMUNICATION COMMANDS - USB setup packet
encoding APPENDIX 3 MODE COMMANDS - USB setup packet encoding APPENDIX 4 USB command and command type constant codes
OVERVIEW
The DS2490 directly interfaces a USB port to a 1-Wire bus. As shown in Figure 1, the DS2490 incorporates a USB physical interface, a USB device controller coupled with a 1-Wire specific USB function core, and a 1-Wire bus interface controller. The 1-Wire interface controller shapes the slopes of the 1-Wire wave-forms, applies programming pulses or strong pullup to 5V, and reads the 1-Wire bus using a non-TTL threshold to maximize the noise margin for best performance on large 1-Wire MicroLAN networks. 1-Wire waveform timing is accurately controlled with a crystal-based oscillator.
The DS2490 also supports USB remote wakeup which enables the DS2490 based USB peripheral to send resume signaling to a suspended host system. If the remote wakeup function is enabled and the host system is in a suspended state, a 1-Wire device attachment will cause the DS2490 to perform a host system wakeup and allow the 1-Wire device to be serviced.
DS2490 FUNCTIONAL BLOCK DIAGRAM Figure 1
USB
XCVR
USB
DEVICE
CONTROLLER
PWR
CNTL
USB
1-WIRE
FUNCTION
CORE
EP
FIFOS
OSC
CLK
GEN
USB
DESC
ROM
1-WIRE
I/F
CONTROLLER
1-WIRE
XI
VPP
XO
D+ D-
VB
VD
GND
SUSO
Typical application examples of the DS2490 are shown in Figure 2 (a-c). As shown in all the examples, all host control and communication with the device is accomplished over a USB communication link. A USB vendor-specific command set, as defined in this document, is used to select operational modes (MODE commands), control command processing (CONTROL commands), and communicate over the 1-Wire interface (COMMUNICATION commands). Shown in Figure 2 example (a) is a DS2490 based USB peripheral application. The peripheral function is a USB to 1-Wire adapter and provides both USB and 1-Wire I/O connections. In this example the peripheral is attached to the USB enabled host computer
DS2490
4 of 50 033199
either directly at a root port or through a USB HUB. The 1-Wire bus interface provided by the DS2490 supports all 1-Wire devices manufactured by Dallas Semiconductor as well as the various 1-Wire bus topologies simple multi-drop to complex MicroLAN. Example (b) and (c) in Figure 2 are variations of example (a) in which the DS2490 is embedded in the host computer or a USB HUB.
DS2490 Application Examples Figure 2
1-WIRE INTERFACE CONTROLLER
1-Wire communication commands sent to the DS2490 are ultimately processed by the 1-Wire interface controller. One of the tasks of the interface controller is to actively shape the edges of the 1-Wire communication waveforms. This speeds up the recharging of the 1-Wire bus (rising edges) and reduces ringing of long lines (falling edges). The circuitry for shaping rising edges is always active. The slew rate of falling edges is actively controlled only at flexible speed and requires the parameter for slew rate control being different from its power-on default value. See the MODE COMMANDS section for parameter control and power-on defaults.
All Rising Edges
The active pullup of the rising edges reduces the rise time on the 1-Wire bus significantly compared to a simple resistive pullup. Figure 3 shows how the DS2490 is involved in shaping a rising edge.
DS2490
5 of 50 033199
ACTIVE PULLUP Figure 3
5V
0V
1-Wire bus is discharged
V
IAPO
V
IAPTO
t
APUOT
t
1
t
2t3
The circuit operates as follows: At t1 the pulldown (induced by the DS2490 or a device on the bus) ends. From this point on the 1-Wire bus is pulled high by the weak pullup current I
WEAKPU
provided by the DS2490. The slope is determined by the load on the bus and the value of the pullup current. At t2 the voltage crosses the threshold voltage V
IAPO
. Now the DS2490 switches over from the weak pullup
current I
WEAKPU
to the higher current I
ACTPU
. As a consequence, the voltage on the bus now rises faster.
As the voltage on the bus crosses the threshold V
IAPTO
at t3, a timer is started. As long as this timer is on
(t
APUOT
), the I
ACTPU
current will continue to flow. After the timer is expired, the DS2490 will switch back
to the weak pullup current.
Falling Edges (DS2490-initiated)
Whenever the DS2490 begins pulling the 1-Wire bus low to initiate a time slot, for example, it first turns off the weak pullup current I
WEAKPU
. Then, at regular and Overdrive speed it will generate a falling edge at a slew rate of typically 15 V/µs. This value is acceptable for short 1-Wire busses and adequate for communication at Overdrive speed. For MicroLAN networks of more than roughly 30 meters length, flexible speed should always be used. One of the parameters that is adjustable at flexible speed is the slew rate of DS2490-initiated falling edges. The effect of the slew rate control is shown in Figure 4.
SLEW RATE CONTROL Figure 4
5V
0V
0.8 V
t
F
low slew rate
high slew rate
pull-down begins
weak pull-up ends,
1-Wire bus is pulled up
Target for long lines: 4 ± 0.5 µs
t
1
As extensive tests have shown, MicroLAN networks at a length of up to 300 meters will perform best if the fall time tF is in the range of 4 ± 0.5 µs. This translates into a slew rate of approximately 1 V/µs. This slew rate is typically achieved by selecting a PULLDOWN SLEW RATE parameter code of 0x4 (see MODE COMMANDS). If the actual measured fall time is longer than the target value, a parameter code of 0x3 or lower should be used. If the fall time is shorter, a parameter code of 0x5 or higher should be
DS2490
6 of 50 033199
used. Once determined, the value code for the Pulldown Slew Rate Control parameter should be stored in the host and always be loaded into the DS2490 after a power-on or master reset cycle.
1-WIRE TIMING DIAGRAMS
This section explains the waveforms generated by the DS2490 on the 1-Wire bus in detail. First the communication wave forms such as the Reset/Presence Detect Sequence and the time slots are discussed. After that follows a detailed description of the pulse function under various conditions. The wave forms generated by the DS2490 may deviate slightly from specifications found in the “Book of DS19xx iButton Standards” or in data sheets of 1-Wire slave devices. However, the DS2490 has been designed to ensure that the timing requirements are met.
1-Wire Communication Wave Forms
One of the major features of the DS2490 is that it relieves the host from generating the timing of the 1­Wire signals and sampling the 1-Wire bus at the appropriate times. The reset/presence detect sequence is shown in Figure 5. This sequence is composed of four timing segments: the reset low time t
RSTL
, the
short/interrupt sampling offset tSI, the presence detect sampling offset t
PDT
and a delay time t
FILL
. The
timing segments tSI, t
PDT
and t
FILL
comprise the reset high time t
RSTH
where 1-Wire slave devices assert their presence or interrupt pulse. During this time the DS2490 pulls the 1-Wire bus high with its weak pullup current.
The values of all timing segments for all 1-Wire speed options are shown in the table. Since the reset/presence sequence is slow compared to the time slots, the values for regular and flexible speed are the same. Except for the falling edge of the presence pulse, all edges are controlled by the DS2490. The shape of the uncontrolled falling edge is determined by the capacitance of the 1-Wire bus and the number, speed and sink capability of the slave devices connected.
RESET/PRESENCE DETECT Figure 5
Speed t
RSTL
t
SI
t
PDT
t
FILL
t
RSTH
Regular
512 µs 8 µs 64 µs 512 µs 584 µs
Overdrive
64 µs 2 µs 8 µs 64 µs 74 µs
Flexible
512 µs 8 µs 64 µs 512 µs 584 µs
Upon executing a 1-WIRE RESET command (see COMMUNICATION COMMANDS), the DS2490 pulls the 1-Wire bus low for t
RSTL
and then lets it go back to 5V. The DS2490 will now wait for the short/interrupt sampling offset tSI to expire and then test the voltage on the 1-Wire bus to determine if there is a short or an interrupt signal. If there is no short or interrupt (as shown in the picture), the
DS2490
7 of 50 033199
DS2490 will wait for t
PDT
and test the voltage on the 1-Wire bus for a presence pulse. Regardless of the
result of the presence test, the DS2490 will then wait for t
FILL
to expire and then send the command
response byte to the host.
If the test for interrupt or short reveals a logic 0, the DS2490 will wait for 4096 µs and then test the 1­Wire bus again. If a logic 0 is detected, the 1-Wire bus is shorted and the DS2490 feedback response for the 1-WIRE RESET Communication Command will indicate a short detection. If a logic 1 is detected, the device will wait for t
FILL
to expire, after which it will load the feedback response value for the 1­WIRE RESET command with an Alarming Presence Pulse detect value. No additional testing for a presence pulse will be done. The DS2490 will perform the short/interrupt testing as described also at Overdrive speed, although interrupt signaling is only defined for regular speed.
A Write-1 and Read Data time slot is comprised of the segments t
LOW1
, t
DSO
and t
HIGH
. During Write-1
time slots, after the Write-1 low time t
LOW1
is over, the DS2490 waits for the duration of the data sample offset and then samples the voltage at the 1-Wire bus to read the response. After this, the waiting time t
HIGH1
must expire before the time slot is complete. A Write-0 time slot only consists of the two segments
t
LOW0
and t
REC0
.
If the network is large or heavily loaded, flexible speed should be selected and the Write-1 low time (t
LOW1
) should be extended to more than 8 µs to allow the 1-Wire bus to completely discharge. Since a large or heavily loaded network needs more time to recharge, it is also recommended to delay sampling the bus for reading. A higher Data Sample Offset value (t
DSO
) will increase the voltage margin and also provide extra energy to the slave devices when generating a long series of Write-0 time slots. However, the total of t
LOW1
+ t
DSO
should not exceed 22 µs. Otherwise the slave device responding may have
stopped pulling the bus low when transmitting a logic 0.
WRITE 1 AND READ DATA TIME SLOT Figure 6
Speed t
LOW1
t
DSO
t
HIGH1
t
SLOT
Regular
8 µs 6 µs 54 µs 68 µs
Overdrive
1 µs 1 µs 8 µs 10 µs
Flexible*
8 to 15 µs 3 to 10 µs 54 µs 65 to 79 µs
*Power-up defaults for Flexible speed: t
LOW1
=12µs, t
DSO
=7µs
DS2490
8 of 50 033199
WRITE 0 TIME SLOT Figure 7
Speed t
LOW0
t
REC0
t
SLOT
Regular
62 µs 6 µs 68 µs
Overdrive
7 µs 3 µs 10 µs
Flexible
62 µs 3 to 10
µs
65 to 72 µs
*Power-up defaults for Flexible speed: t
REC0
=7µs
Pulse Wave Forms
The PULSE Communication Command can be used to generate either a strong pullup to 5V or 12V programming pulse. The duration of the pulses are specified with the STRONG PULLUP DURATION and PROG PULSE DURATION mode registers. Figure 8 and Figure 9 show timing of the two pulse types. For predefined pulse durations, t
SPU
and tPP are known values, for semi-infinite and infinite durations these pulse times vary and depend on the characteristics of attached 1-Wire devices and/or host computer intervention. See the MODE COMMAND section for details on duration times. The processing of a PULSE command is essentially the same, regardless if a strong pullup or a programming pulse is specified. As shown in the figures, at t1 processing of the PULSE command begins, at t2 the “pulse” ends.
For EPROM programming, only a single slave device should be connected to the 1-Wire bus and the cable must be short, not to exceed a few meters. The slew rate of the rising and falling edge of the programming pulse (“steep slopes”) is actively controlled by DS2490 as shown in Figure 9. Do not attempt to generate a programming pulse with a non-EPROM device on the bus; this may damage the device as well as the DS2490. In addition, a correct programming pulse can only be generated if the 12V programming voltage is available at the VPP pin of the DS2490.
Certain applications may require a duration for a strong pullup or programming pulse that cannot be realized using one of the predefined values (see MODE COMMANDS section for values). Selecting infinite duration allows the host to generate pulses of any length. As a consequence, however, the host becomes responsible to actively control the duration of the pulse. Failing to do so may require a power­on reset or master reset cycle of the DS2490. For this reason, infinite duration should only be used if absolutely necessary. The HALT EXECUTION WHEN DONE or HALT EXECUTION WHEN IDLE Control commands are used to terminate an infinite duration pulse. As before, processing the command is essentially the same, regardless if it is for a strong pullup or a programming pulse.
DS2490
9 of 50 033199
STRONG PULLUP TO 5V, PREDEFINED DURATION Figure 8
12V PROGRAMMING PULSE, PREDEFINED DURATION Figure 9
USB COMMUNICATION
Communication with the DS2490 is performed using USB standard requests, also referred to as core commands or requests in this document, and DS2490 vendor specific USB commands. All command communication with the DS2490 is performed over the default control pipe. Non-command communication, including 1-Wire device data I/O and DS2490 status information, occurs in a vendor­specific fashion over bulk and interrupt pipes. Configuration of the DS2490 USB controller is shown in Figure 10. As shown, a Dallas Semiconductor vendor-specific 1-Wire device exists with a single 1-Wire interface. The USB vendor-specific 1-Wire function of the DS2490 will be implemented and controlled by the device driver at the device level of the device class hierarchy, i.e, vendor-specific commands will be directed to the device level. Within the 1-Wire interface, four endpoints exist to control and communicate with the device. Four alternate settings of the 1-Wire interface exist which correspond to different operating modes for the endpoints. Endpoint and interface descriptions are summarized in the following paragraphs.
The DS2490 provides USB remote wakeup capability. Per the USB specification, if a device supports remote wakeup, it must also provide the ability to enable or disable the remote wakeup function. In addition, the remote wakeup feature must be disabled as the power up default or device reset state. When the remote wakeup feature is enabled, the DS2490 will send USB resume signaling to a suspended host system upon detecting a 1-Wire device attachment. It then becomes the responsibility of host system software to resume operation and to determine what servicing is required for the 1-Wire device.
DS2490
10 of 50 033199
USB CONFIGURATION Figure 10
1-WIRE CLIENT
USB HOST
SYSTEM
SW
DS2490 USB 1-WIRE DEVICE
1-WIRE INTERFACE
TOUCH DETECTION
DEVICE STATE
1-WIRE DATA I/O
EP2
EP3
EP1
USB ENUMERATION
USB CONTROL
1-WIRE CONTROL
EP0
default pipe
interrupt pipe
bulk pipe
bulk pipe
USB PHYSICAL I/F
1-WIRE COMMUNICATION
1-WIRE MODE
Endpoint (EP) Summary Description
EP0 is the endpoint for the bi-directional default control pipe. It is used for the USB enumeration process, USB core request communication, and all DS2490 specific command communication.
EP1 is the endpoint for an interrupt pipe (Device to Host) and is used to relay DS2490 status register data and specific command execution completion and/or error information to the host. It is also used to inform the host of 1-Wire device-attach detection. The polling period requested for EP1 is either 10 mS or 1 mS, depending on the alternate interface setting of the 1-Wire interface. The default polling period for EP1 is 10 mS.
EP2 is an endpoint for a bulk data out pipe (Data from Host) and is used to transmit 1-Wire device data from the host to the DS2490. The information received at this endpoint will be transmitted as data on the 1-Wire bus.
EP3 is an endpoint for a bulk data in pipe (Data to Host) and is used to send data received by the DS2490 from the 1-Wire bus back to the host for processing.
1-Wire Interface Summary Description
The interface is the USB collection point for the four endpoints. Four alternate settings exist for the 1­Wire interface which correspond to different operational modes for the pipes to EP1, EP2, and EP3. As shown in Table 2, the alternate settings specify different polling periods for the interrupt pipe and different maximum packet sizes for the two bulk pipes.
DS2490
11 of 50 033199
1-Wire Interface Alternate Setting Summary Table 2
Alt Setting
EP1
poll interval
EP2/EP3
max packet size
Alternate Setting Description
0 10mS 16 bytes Long interrupt polling interval, small packet size for
bulk pipes
1 10mS 64 bytes Long interrupt polling interval, large packet size for
bulk pipes
2 1mS 16 bytes Short interrupt polling interval, small packet size
for bulk pipes
3 1mS 64 bytes Short interrupt polling interval, large packet size for
bulk pipes
Endpoint Feature Summary Table 3
Endpoint
#
Transaction
Type
Direction
1
Max. Packet Size
0 CONTROL IN/OUT ALT I/F-0..3: 8 bytes 1 INTERRUPT IN ALT I/F-0..3 32 bytes
ALT I/F-0: 16 bytes ALT I/F-1: 64 bytes ALT I/F-2: 16 bytes
2 BULK OUT
ALT I/F-3: 64 bytes ALT I/F-0: 16 bytes ALT I/F-1: 64 bytes ALT I/F-2: 16 bytes
3 BULK IN
ALT I/F-3: 64 bytes
1. Direction in this table is in reference to the Host
USB Core Commands Table 4
Standard Device Requests Target Element Range Notes
SET_ADDRESS Device 0x01 - 0xFF SET_CONFIGURATION Device 0x00 - 0x01 1 GET_CONFIGURATION Device 0x00 - 0x01 GET_DESCIPTOR Device 2 GET_INTERFACE Interface 0 Interface 0: 0x00 - 0x03 3 SET_INTERFACE Interface 0 Interface 0: 0x00 - 0x03 3 SET_FEATURE Device 4 CLEAR_FEATURE Device 4 GET_STATUS
Device, Interfaces, Endpoints 0-3
5, 6
DS2490
12 of 50 033199
Notes:
1. The only valid configuration values are 0 and 1 for the SET_CONFIGURATION request.
Configuration value 0 corresponds to the non-configured state.
2. Only the DEVICE and CONFIGURATION descriptor types are supported for the
GET_DESCRIPTOR request.
3. Interface 0 is the only valid interface value for the DS2490.
4. The only valid feature selector for the command is DEVICE_REMOTE_WAKEUP.
5. The DS2490 is intended, at a minimum, to be partially bus powered. Remote wakeup can be enabled
or disabled. GET_STATUS requests to the device will return a logic 0 for the self-powered bit field and the current state value for the remote wakeup bit.
6. There is no USB core level status information defined for interfaces. The DS2490 will always return
0 value data for GET_STATUS requests to interfaces.
DS2490 Vendor Specific USB Commands
Three different vendor-specific command types exist to control and communicate with the DS2490: Control, Communication, and Mode. Control commands are used to manage various device functions including the processing of communication commands, buffer clearing, and SW reset. Communication commands are used for 1-Wire data and command I/O. Mode commands are used to establish the 1-Wire operational characteristics of the DS2490 such as slew rate, low time, strong pullup, etc. Control, Communication and Mode commands, like USB core requests, are communicated over the default control pipe at EP0. With one exception as noted below, each command and any associated parameter data are individually formatted into the 8-byte control transfer setup packet as follows:
bmRequestType bRequest wValue* wIndex wLength
Request type bit map (1 byte)
Command Type (1 byte)
Command (2 bytes)
Command Parameters (2 bytes)
0x0000 (not used)
*The one exception to wValue formatting is for the READ STRAIGHT Communication command. This
command requires three parameter bytes which exceeds the 2-byte parameter encoding space available in the wIndex field. For this command only, the wValue field will be formatted as 1 command byte and 1 parameter byte. See the command description in Appendix 2 for details.
The bit-mapped bmRequestType field identifies the characteristics of the USB command per Chapter 9 of the USB Specification. Fields included in this command describe the direction of the transfer, type of request (core, class, or vendor specific) and the target of the command recipient (device, interface, or endpoint). The only variation on the bmRequestType field for the different DS2490 vendor-specific command will be for the transfer direction: host to device, or device to host; the recipient for all commands will be the “device”.
The bRequest field contains a 1-byte constant identifying which of the three supported DS2490 command types is being sent. The command constants are defined in Appendix 4 and are summarized as follows:
Command Type Description CONTROL_CMD 1-Wire interface control commands COMM_CMD 1-Wire interface communication commands MODE_CMD 1-Wire interface operational mode commands
The 2-byte wValue field is encoded with the specific command. For Control and Mode commands, the field value corresponds to a specific command constant as defined in Appendix 4. For Communication
DS2490
13 of 50 033199
commands, the field has additional embedded command parameters as indicated in Appendix 2. The exception is the READ STRAIGHT command as described previously.
The 2-byte wIndex is used to hold additional command parameter data when required by the specific command.
The wLength field is used in the control transfer setup packet to specify the number of bytes to be sent during the data stage of a control transfer. The “GET COMM CMDS” control command is the only DS2490 command that uses the data stage of the control transfer. Typically all command data is embedded in the setup stage. Except for the GET COMM CMDS, this field must be set to 0x0000.
DS2490 Control, Communication, and Mode vendor-specific command descriptions and formatting are defined in Appendices 1, 2, and 3. Vendor-specific commands not defined in the appendices are not supported by the DS2490 and the device will respond with a STALL if an unsupported command is received.
MODE COMMANDS
DS2490 1-Wire characteristics and features (speed, durations, slew rate, etc.) are controlled with discrete Mode commands and/or embedded Communication command parameters. Parameter values and enable/disable settings are used for characteristic control. Mode settings are stored in the DS2490 State Registers and can be read at any time or at the polling interval of EP1. See the section “DEVICE FEEDBACK” for State Register details.
Enable/disable settings are used to control three global features:
§ Strong pullup to +5V
§ +12V EPROM programming pulse
§ Dynamic 1-Wire bus communication speed change through a communication command
The setting for these three global controls are accessible only through Mode commands; the features are either enabled or disabled with the appropriate Mode command. Specific Communication commands exist which can be used to issue a strong pullup, programming pulse, or speed change. When the corresponding setting is enabled the feature is usable as part of a communication command when disabled the feature is not usable.
Parameter values and codes are used to specify and control 1-Wire bus characteristics:
§ 1-Wire bus communication speed
§ +5V strong pullup duration
§ +12V programming pulse duration
§ Pulldown slew rate
§ Write-1 low time
§ Data sample offset/ Write-0 Recovery time
These six settings are controllable with discrete Mode commands or as embedded command/parameter values in Communications commands.
As listed in Table 5 and summarized previously, there are eight Mode commands. The USB control transfer setup packet coding to transmit these commands is detailed in Appendix 3. Mode commands are immediately processed by the DS2490 when they are received. The DS2490 power-on default values for
DS2490
14 of 50 033199
these parameters are as listed in Table 10. Each command and parameter control is detailed in the following paragraphs.
Mode Command Set Summary Table 5
Command Function
ENABLE PULSE Enable/disable 1-Wire strong pullup pulse to 5V and/or +12V programming
pulse.
ENABLE SPEED CHANGE
Enable/disable dynamic change of the 1-Wire speed through a
communication command. 1-WIRE SPEED Communication speed of the 1-Wire bus. STRONG PULLUP
DURATION
Duration of 1-Wire strong pullup.
PULLDOWN SLEW RATE
Slew rate of 1-Wire pulldown.
PROG PULSE DURATION
Duration of 1-Wire VPP EPROM programming pulse.
WRITE-1 LOW TIME Duration of 1-Wire Write-1 low time. DSOW0 RECOVERY
TIME
Recovery time for the 1-Wire data sample offset / Write-0 transaction.
Mode Command Set Descriptions:
ENABLE PULSE – This command is used to enable or disable a 1-Wire strong pullup pulse to 5V and/or +12V EPROM programming pulse. Two bit positions in the parameter byte are used to control the enabled/disabled state for each pulse type. The specific pulse is enabled when the respective bit is set to a 1 and disabled when set to a 0. The DS2490 power-up default state for both strong pullup and programming pulse is disabled.
ENABLE SPEED CHANGE - This command is used to enable or disable a 1-Wire communication speed change. Enabled when a TRUE parameter value is passed with the command, disabled with a FALSE. The DS2490 power-up default state for speed change is disabled.
1-WIRE SPEED - This command is used to set the speed of 1-Wire communication; three settings are possible. The parameter codes to select the desired or required speed are as listed in Table 6. As shown, speed codes 0x3..0xF are undefined. The DS2490 decodes the 3 LSBs of the 1-Wire speed code. Sending a code other than the defined values in Table 6 will result in undefined behavior. The DS2490 power-up default communication speed is regular.
1-Wire Bus Speed Codes Table 6
Code Speed Data Rate
0x0 Regular
65 µs time slot (15.4 kbps)
0x1 Flexible
65- 72 µs time slot (13.9 to
15.4 kbps)
0x2 Overdrive
10 µs time slot (100 kbps)
0x3..0xF reserved undefined
DS2490
15 of 50 033199
STRONG PULLUP DURATION - This command is used to set the time duration of a 1-Wire strong Pullup. The time is controlled with an unsigned 8-bit binary number between 0x00 and 0xFE which specifies the duration in multiples of 16 ms. A value of 0x01 specifies 16 ms, 0x02 equals 32 ms, etc. A value of 0x00 specifies infinite duration. To terminate an infinite duration pullup use either the HALT EXECUTION WHEN DONE or HALT EXECUTION WHEN IDLE Control commands as described in Appendix 1. A value of 0xFF specifies semi-indefinite duration. For a semi-indefinite duration, the strong pullup will end as soon as the current has dropped below 500 µA ± 50%. The current is sensed every 16 ms. The DS2490 power-up default strong pullup duration register value is 512 ms.
PROG PULSE DURATION - This command is used to set the time duration of a 1-Wire Programming Pulse. The time is controlled with a an unsigned 8-bit binary number between 0x00 and 0xFE specifying the duration in multiples of 8 µs. A value of 0x00 stands for infinite duration. To terminate an infinite duration programming pulse use the HALT EXECUTION WHEN DONE or HALT EXECUTION WHEN IDLE command. A value of 0xFF stands for semi-indefinite duration. The pulse will end as soon as the current has dropped below 500 µA ± 50%. The current is sensed every 8 µs. The pulse will also terminate if the voltage sensed on the 1-Wire bus remains too low. The DS2490 power-up default strong pullup duration register value is 512 µS.
PULLDOWN SLEW RATE - This command is used to select the pulldown slew rate for 1-Wire bus Flexible Speed operation; eight pulldown slew rates are possible. The parameter codes to select the desired or required slew rate are as listed in Table 7. The slew rate numbers in the table represent typical values. The pulldown slew rate for Regular speed is 0.83 V/µs and for Overdrive speeds it is 15 V/µs. The DS2490 decodes the 3 LSBs of the slew rate code. Sending a code other than the defined values in Table 7 will result in undefined behavior. The DS2490 pulldown slew rate power-up default value for Flexible speed is 0.83 V/µs.
Flexible Speed PullDown Slew Rate Codes Table 7
Code Pulldown slew rate
0x0
15 V/µs
0x1
2.20 V/µs
0x2
1.65 V/µs
0x3
1.37 V/µs
0x4
1.10 V/µs
0x5
0.83 V/µs
0x6
0.70 V/µs
0x7
0.55 V/µs
0x8..0xF reserved
WRITE-1 LOW TIME - This command is used to select the Write-1 low time for 1-Wire bus Flexible speed operation; eight Write-1 low time durations are possible. The parameter codes to select the desired or required low time are as listed in Table 8. The low time numbers in the table represent exact values. The Write-1 Low Time for Regular speed is 8 µs, at Overdrive speed it is 1 µs. The DS2490 decodes the 3 LSBs of the low time code. Sending a code other than the defined values in Table 8 will result in undefined behavior. The DS2490 Write-1 Low Time power-up default value for Flexible speed is 12 µs.
Loading...
+ 35 hidden pages