Programming 1-Wire EPROM and EEPROM Memory Devices Using a PC
IntroductionDallas Semiconductor offers hardware/software solutions for programming DS243x series EEPROM and DS250x series EPROM devices (or the DS197x and DS198x iButton form factors) in a PC-based environment. While these devices are commonly programmed in an embedded application, it is often desirable or necessary to preprogram devices with data for prototyping purposes. An easy-to-use PCbased platform simplifies this task and is the scope of this document.
Hardware RequirementsShown in Figure 1 is a typical PC based Hardware configuration for 1-Wire EEPROM and EPROM programming. Required items include a Windows™ (98, 95, ME, 2K) based PC with a spare serial (COM) port, a Dallas Semiconductor serial to 1-Wire port adapter, and cabling to attach 1-Wire devices for programming.
Figure 1. PC-Based Programming Configuration.
Dallas Semiconductor offers a variety of adapters that convert Serial COM port communication to 1-Wire waveforms and protocol. See Table 1 for a comparison of port adapter capabilities relative to EEPROM/EPROM reading and programming. The DS9097U are the current generation adapters. The DS9097U-009 and the DS9097U-S09 are the recommended models for EEPROM programming. The DS9097U-E25 is the recommended model for EPROM programming. Figure 2 shows the DS9097U-E25 package and the connector pinouts. The RJ-11 pinout applies to all port adapters in Table 1.
Table 1. 1-Wire Serial Port Adapters
|Adapter||EEPROM R/W||EPROM Read||EPROM Program|
*Not recommended for new projects
Figure 2. DS9097U-E25 1-Wire Serial Port Adapter And +12V Pinouts.
12VDC Power for EPROM ProgrammingProgramming EPROMs requires the application of a +12VDC programming pulse. The DS9097U-E25 provides this capability when supplied with +12VDC power. As shown in Figure 2, a 2.1mm power jack is used to attach either power from a bench supply or common AC wall adapter. Power jack polarity must be observed: center contact is ground and outer contact is +12V. See EPROM data sheets for voltage tolerance and current levels required to program devices. The following +12VDC wall adapter has been successfully used to program devices:
- Stancor # STA-300R
- Allied (Stock #928-9895)
- Newark (Stock #84F2081)
Figure 3. Reference Schematic For Serial Port 1-Wire Adapter
CablingA cable is required to apply adapter 1-Wire signals to the parts that are to be programmed or read. The cable must have a RJ-11 on one end and an appropriate interface to the 1-Wire device or mounting board on the other. The pinout for the RJ-11 is shown in Figure 2.
Important Note:When using the DS9097E adapter, the 1-Wire return must be isolated from any other grounds or return paths. Failure to follow this requirement may damage the DS9097E adapter and possibly the 1-Wire device.
Software RequirementsDallas Semiconductor provides several software utilities for programming 1-Wire devices; these are all based on installation of the TMEX RunTime Environment (RTE). All Software, including TMEX, is free of charge and available for download.
An easy to use GUI application called iButton Viewer is automatically installed when the TMEX RTE is installed. When configured and launched this application provides a display as shown in Figure 4.
Figure 4. Screen print of iButton viewer opening screen.
As 1-Wire devices are attached to the serial port adapter their 64-bit ROM values are displayed by the viewer. Double clicking the ROM value launches device read/write utilities. The iButton Viewer supports two formats for read/write EPROM/EEPROM data: 1-Wire File Structure and raw/user defined. The 1- Wire File Structure format, defined in Application Note 114, stores data in a fashion similar to that found in disk operating systems: directories with files of data. In the 1-Wire File Structure mode, data can be programmed and read using the iButton Viewer. The raw/user-defined format is unconstrained and data is written to individual byte locations. Operating in the raw/user-defined mode requires the iButton Viewer to be set to debug mode. This is set from the menu tool bar by selecting File→Options→Debug Enable. At the time of this writing the debug mode of the iButton Viewer supports only reading raw EPROM data. A future update to the iButton Viewer may support raw data programming.
In order to program EPROM devices with a raw data format, the utility TMEPROM.EXE needs to be used. This program and the source code can be downloaded from our site.
Before TMEPROM can be run the TMEX-RTE must be installed with a DS9097U-E25 attached during the installation process of the default 1-Wire port. This ensures that the correct COM Port and adapter type are configured for TMEPROM operation. The utility will automatically exit if there is no DS9097UE25 and EPROM device attached. When configured and launched with a DS1982/DS2502 attached this application provides a display as shown in Figure 5.
Figure 5. Screen Print of TMEPROM Program.
Two additional utilities for EPROM programming are available at the links listed below:
- Copy hex file into EPROM 1-Wire devices (console, C, 32-bit) 1.03
- iButton Copy Machine (GUI, Delphi, 32-bit) 3.11Beta9
Using a NVRAM iButton (the DS1992, DS1993, DS1995, or DS1996) and the iButton Viewer, it is possible to program the raw data into the NVRAM device and then using the iButton Copy Machine to copy from the NVRAM device to an EPROM device. These programs are not suitable to gang program EPROM devices. Due to the 12V programming pulse, there must not be any non-EPROM devices on the line when programming EPROM devices.
SummaryDallas Semiconductor enables pre-programming of 1-Wire EPROM/EEPROM devices with easy-to-use serial port adapters and PC-based software. Using one of these low cost adapters and free software enables the end-user to quickly setup a programming station to configure a device with the data necessary for prototyping or for easy evaluation of changes to device data sets.