/************************************************/ /* EEPROM location for 7188/8000 Modbus library */ /* */ /* First update [2006/Jul/04] by Kevin */ /* Latest update [2006/Aug/15] by Kevin */ /************************************************/ /* [2006/Jul/17] by Kevin 1. Add block1, offset 0x50~0x51 2. Add block4, all 3. Add block5, offset 0x00~0x3F [2006/Aug/16] by Kevin 1. Add block1, offset 0x07~0x08 */ Following EEPROM location are applied to Modbus library 1.6.6 or later I/O library 1.5.3 or later ====== Block 0 ===================================================== //Store COM port function (for 7188/8000) ====== Block 1 ===================================================== // System (for 7188/8000) 0x00~0x01: Modbus Lib version=123~nnn: version 1.2.3 0x02: NetID=0x00~0xFF 0x03: Station Per COM port=0x00~0xFF 0x04: Freeze I/O Config=0 or <>0 0x05~0x06 I/O scan Lib version=123~nnn: version 1.2.3 0x07~0x08 CPU reset events (0~65535) 0x09~0x0F //COM port configuration (for 7188/8000) [Enable mode] [Timeout] [Reserved] 0x10: 0x11~0x12 0x13 (COM1) 0x14: 0x15~0x16 0x17 (COM2) 0x18: 0x19~0x1A 0x1B (COM3) 0x1C: 0x1D~0x1E 0x1F (COM4) 0x20: 0x21~0x22 0x23 (COM5) 0x24: 0x15~0x26 0x27 (COM6) 0x28: 0x19~0x2A 0x2B (COM7) 0x2C: 0x1D~0x2E 0x2F (COM8) // I/O Module Basic information (for I-8000 only) [ModuleType] [NameOfModule] [Reserved] [Reserved] 0x30 0x31 0x32 0x33 (Slot0) 0x34 0x35 0x36 0x37 (Slot1) 0x38 0x39 0x3A 0x3B (Slot2) 0x3C 0x3D 0x3E 0x3F (Slot3) 0x40 0x41 0x42 0x43 (Slot4) 0x44 0x45 0x46 0x47 (Slot5) 0x48 0x49 0x4A 0x4B (Slot6) 0x4C 0x4D 0x4E 0x4F (Slot7) // 0x50~0X51: Watch dog timer for AO and DO safe value. Range=0~65535 <5 : Disable safe value 5~65535: Enable safe value unit: second. ====== Block 2 ===================================================== // I/O Module Range Code (for I-8000 only) Each channel uses 1 bytes(0x00~0x7F) 0x00~0x0F: Ch0~Ch15 (Slot0) 0x10~0x1F: Ch0~Ch15 (Slot1) 0x20~0x2F: Ch0~Ch15 (Slot2) 0x30~0x3F: Ch0~Ch15 (Slot3) 0x40~0x4F: Ch0~Ch15 (Slot4) 0x50~0x5F: Ch0~Ch15 (Slot5) 0x60~0x6F: Ch0~Ch15 (Slot6) 0x70~0x7F: Ch0~Ch15 (Slot7) // 87K DI counter enable/disable (for I-8000 only) Each channel uses 1 bytes(True or False) 0x80~0x8F: Ch0~Ch15 (Slot0) 0x90~0x9F: Ch0~Ch15 (Slot1) 0xA0~0xAF: Ch0~Ch15 (Slot2) 0xB0~0xBF: Ch0~Ch15 (Slot3) 0xC0~0xCF: Ch0~Ch15 (Slot4) 0xD0~0xDF: Ch0~Ch15 (Slot5) 0xE0~0xEF: Ch0~Ch15 (Slot6) 0xF0~0xFF: Ch0~Ch15 (Slot7) ====== Block 3 ===================================================== // AI/AO offset value (for I-8000 only) Each channel uses 2 bytes(-32768~+32767) 0x00~0x1F: Ch0~Ch15 (Slot0) 0x20~0x3F: Ch0~Ch15 (Slot1) 0x40~0x5F: Ch0~Ch15 (Slot2) 0x60~0x7F: Ch0~Ch15 (Slot3) 0x80~0x9F: Ch0~Ch15 (Slot4) 0xA0~0xBF: Ch0~Ch15 (Slot5) 0xC0~0xDF: Ch0~Ch15 (Slot6) 0xE0~0xFF: Ch0~Ch15 (Slot7) ====== Block 4 ===================================================== //AO Power on value (128 bytes) 0x00~0x0F: Ch0~Ch15 (Slot0) 0x10~0x1F: Ch0~Ch15 (Slot1) 0x20~0x2F: Ch0~Ch15 (Slot2) 0x30~0x3F: Ch0~Ch15 (Slot3) 0x40~0x4F: Ch0~Ch15 (Slot4) 0x50~0x5F: Ch0~Ch15 (Slot5) 0x60~0x6F: Ch0~Ch15 (Slot6) 0x70~0x7F: Ch0~Ch15 (Slot7) //AO Safe value (128 bytes) 0x80~0x8F: Ch0~Ch15 (Slot0) 0x90~0x9F: Ch0~Ch15 (Slot1) 0xA0~0xAF: Ch0~Ch15 (Slot2) 0xB0~0xBF: Ch0~Ch15 (Slot3) 0xC0~0xCF: Ch0~Ch15 (Slot4) 0xD0~0xDF: Ch0~Ch15 (Slot5) 0xE0~0xEF: Ch0~Ch15 (Slot6) 0xF0~0xFF: Ch0~Ch15 (Slot7) ====== Block 5 ===================================================== //DO Power on value (32 bytes) 0x00~0x03: Ch0~Ch31 (Slot0) 0x04~0x07: Ch0~Ch31 (Slot1) 0x08~0x0B: Ch0~Ch31 (Slot2) 0x0C~0x0F: Ch0~Ch31 (Slot3) 0x10~0x13: Ch0~Ch31 (Slot4) 0x14~0x17: Ch0~Ch31 (Slot5) 0x18~0x1B: Ch0~Ch31 (Slot6) 0x1C~0x1F: Ch0~Ch31 (Slot7) //DO Power on value (32 bytes) 0x20~0x23: Ch0~Ch31 (Slot0) 0x24~0x27: Ch0~Ch31 (Slot1) 0x28~0x2B: Ch0~Ch31 (Slot2) 0x2C~0x2F: Ch0~Ch31 (Slot3) 0x30~0x33: Ch0~Ch31 (Slot4) 0x34~0x37: Ch0~Ch31 (Slot5) 0x38~0x3B: Ch0~Ch31 (Slot6) 0x3C~0x3F: Ch0~Ch31 (Slot7) not used ====== Block 6 ===================================================== not used ====== Block 7 ===================================================== //Store IP, Mask, Gateway (for 7188E/8000E only) */ /* ====== Register Mapping ============================================ === iMemory_IO_DO === 0x13C: Write DO Power on value to EEPROM 0x13D: Write DO Safe value to EEPROM 0x13E: Write AO Power on value to EEPROM 0x13F: Write AO Safe value to EEPROM //DO Power on value (320~575) 0x140~0x15F: Ch0~Ch31 (Slot0) 0x160~0x17F: Ch0~Ch31 (Slot1) 0x180~0x19F: Ch0~Ch31 (Slot2) 0x1A0~0x1BF: Ch0~Ch31 (Slot3) 0x1C0~0x1DF: Ch0~Ch31 (Slot4) 0x1E0~0x1FF: Ch0~Ch31 (Slot5) 0x200~0x21F: Ch0~Ch31 (Slot6) 0x220~0x23F: Ch0~Ch31 (Slot7) //DO Safe value (576~831) 0x240~0x25F: Ch0~Ch31 (Slot0) 0x260~0x27F: Ch0~Ch31 (Slot1) 0x280~0x29F: Ch0~Ch31 (Slot2) 0x2A0~0x2BF: Ch0~Ch31 (Slot3) 0x2C0~0x2DF: Ch0~Ch31 (Slot4) 0x2E0~0x2FF: Ch0~Ch31 (Slot5) 0x300~0x31F: Ch0~Ch31 (Slot6) 0x320~0x33F: Ch0~Ch31 (Slot7) === iMemory_IO_AO === //AO Power on value (320~383) 0x140~0x147: Ch0~Ch7 (Slot0) 0x148~0x14F: Ch0~Ch7 (Slot1) 0x150~0x157: Ch0~Ch7 (Slot2) 0x158~0x15F: Ch0~Ch7 (Slot3) 0x160~0x167: Ch0~Ch7 (Slot4) 0x168~0x16F: Ch0~Ch7 (Slot5) 0x170~0x177: Ch0~Ch7 (Slot6) 0x178~0x17F: Ch0~Ch7 (Slot7) //AO Safe value (384~447) 0x180~0x187: Ch0~Ch7 (Slot0) 0x188~0x18F: Ch0~Ch7 (Slot1) 0x190~0x197: Ch0~Ch7 (Slot2) 0x198~0x19F: Ch0~Ch7 (Slot3) 0x1A0~0x1A7: Ch0~Ch7 (Slot4) 0x1A8~0x1AF: Ch0~Ch7 (Slot5) 0x1B0~0x1B7: Ch0~Ch7 (Slot6) 0x1B8~0x1BF: Ch0~Ch7 (Slot7) */