Index: format/app_shutter.format
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/format/app_shutter.format	(revision 1031)
+++ /branch/Shutter/Ble shutter/AB Shutter3/format/app_shutter.format	(working copy)
@@ -159,6 +159,7 @@
 1 mem_shutter_power_off_timeout
 1 mem_shutter_power_off_timer
 
+2 mem_key_value_copy
 )
 
 
Index: output/eeprom.dat
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/output/eeprom.dat	(revision 1031)
+++ /branch/Shutter/Ble shutter/AB Shutter3/output/eeprom.dat	(working copy)
@@ -290,8 +290,8 @@
 00
 68
 01
-4f
-fe
+48
+ed
 60
 01
 0b
@@ -306,8 +306,8 @@
 14
 60
 01
-4f
-fe
+48
+ed
 20
 60
 00
@@ -328,8 +328,8 @@
 20
 74
 bd
-64
-91
+b3
+6e
 aa
 55
 01
Index: program/patch.prog
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/program/patch.prog	(revision 1031)
+++ /branch/Shutter/Ble shutter/AB Shutter3/program/patch.prog	(working copy)
@@ -1,5 +1,4 @@
 
-//define USB
 
 ifdef PATCH
 	bbit1 8,pf_patch_ext
@@ -110,11 +109,11 @@
 	rtn
 
 p_keyscan_key_process:
-	fetch 2,0x4ffe
+	fetch 2,mem_key_value_copy
 	store 2,mem_key_value
 	call keyscan_key_process + 9
 	fetch 2,mem_key_value
-	store 2,0x4ffe
+	store 2,mem_key_value_copy
 	rtn
 
 p_keyscan_send_key_data:
Index: readme.txt
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/readme.txt	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/readme.txt	(working copy)
@@ -0,0 +1,11 @@
+
+update文件夹：
+
+1、eeprom.dat为程序编译且加密后的文件；每次更新固件后必须更新到update文件夹内；
+2、otpdata.dat为1021w原本烧录的otp文件，且更改了头两个字节offset：00 ab;该文件一定不能修改；
+3、eeprom_final.dat为otpdata.dat和eeprom.dat的拼接文件，文件长度为2000字节，剩余空间填充0xff，最后两个字节为crc；
+
+4、使用方法：
+(1) do eep编译生成的eeprom.dat文件交给王龙加密；
+(2) 将加密后的eeprom.dat文件复制到update文件夹中；每次更新固件后都必须重新更新；
+(3) 在update文件夹下cmd，执行updat.bat就可生成最终OTP烧录固件eeprom_final.dat；
\ No newline at end of file
Index: update/crc16.pl
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/crc16.pl	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/crc16.pl	(working copy)
@@ -0,0 +1,27 @@
+$debug = 0;
+$crc = 0xffff;
+$i = 0;
+$offset = 0xffff;
+$source_file = $ARGV[0];
+$offset = $ARGV[1];
+
+open(EEP,"$source_file") or die $!;
+
+while (<EEP>) {    
+	$c = hex();
+
+  if($i >= $offset){
+  	if($debug){printf "%02x\t", $c;}
+  	$crc  = ($crc >> 8) | ($crc << 8);
+		$crc ^= $c & 0xff;
+		$crc ^= ($crc & 0xff) >> 4;
+		$crc ^= $crc << 12;
+		$crc ^= ($crc & 0xff) << 5;
+		$crc &= 0xffff;
+  }
+  $i ++;
+  if($debug){printf "%02x\t", $crc;}
+  printf "%02x\n", $c;
+}
+
+printf "%02x\n%02x\n", (($crc >> 8) & 0xff),($crc & 0xff);
Index: update/eeprom.dat
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/eeprom.dat	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/eeprom.dat	(working copy)
@@ -0,0 +1,1171 @@
+e0
+02
+92
+6e
+c1
+f2
+00
+3d
+70
+98
+7e
+b3
+e4
+b5
+2c
+0f
+f3
+ee
+aa
+55
+50
+01
+c0
+f2
+4f
+18
+31
+9a
+10
+64
+85
+b8
+0b
+c9
+63
+6c
+b7
+46
+80
+c9
+f1
+2f
+12
+ac
+a3
+69
+ce
+4b
+c8
+c0
+97
+00
+7c
+4c
+18
+6d
+36
+56
+0e
+a8
+cf
+51
+d6
+5e
+b5
+96
+de
+ba
+b3
+f8
+96
+ba
+bc
+13
+92
+6d
+cc
+a8
+9d
+5d
+34
+2d
+ca
+dd
+2c
+4c
+67
+fb
+8c
+48
+da
+60
+ee
+81
+c8
+a5
+61
+f1
+7d
+4f
+10
+e6
+49
+1c
+43
+c0
+48
+5c
+46
+ef
+59
+c2
+17
+82
+7f
+1b
+8b
+f7
+7a
+06
+ee
+86
+d1
+8b
+4c
+bc
+76
+10
+8b
+85
+49
+8e
+1c
+02
+5e
+f9
+47
+e9
+e2
+b7
+ea
+9b
+a2
+ef
+dd
+45
+46
+e9
+ed
+ca
+b6
+2b
+36
+ba
+82
+e3
+38
+a4
+04
+d3
+ed
+dd
+a2
+d3
+2c
+77
+4a
+cb
+0b
+b6
+98
+18
+0c
+49
+fd
+7b
+6c
+6e
+02
+95
+29
+4d
+51
+02
+c5
+3c
+55
+2c
+b4
+e4
+8b
+e3
+6d
+98
+cc
+a3
+fa
+cf
+e3
+de
+0c
+5c
+57
+e3
+94
+2c
+be
+fb
+69
+36
+ca
+dd
+b1
+07
+6a
+83
+88
+7e
+45
+fa
+ca
+88
+c8
+7b
+b7
+0a
+5d
+34
+39
+31
+ad
+3d
+13
+82
+5e
+d9
+91
+cb
+a6
+2a
+44
+2a
+04
+6f
+7d
+2b
+b0
+a7
+0a
+85
+5f
+fd
+45
+31
+40
+84
+f6
+95
+08
+7f
+c9
+fc
+6b
+40
+df
+e1
+12
+da
+83
+6a
+e2
+d2
+ed
+70
+45
+97
+1b
+e3
+78
+c6
+eb
+cd
+1e
+66
+73
+c6
+f5
+2c
+d2
+ea
+00
+14
+52
+4a
+11
+72
+48
+74
+03
+e5
+75
+71
+2a
+ac
+b3
+e4
+fe
+b0
+99
+7b
+20
+73
+fd
+1e
+c4
+ec
+a8
+40
+b9
+7d
+7c
+31
+0d
+24
+4e
+d2
+1a
+39
+30
+38
+f5
+f7
+28
+1e
+ca
+9a
+8b
+be
+0a
+08
+66
+80
+85
+bc
+de
+55
+20
+6e
+7f
+6b
+19
+6c
+a1
+49
+23
+66
+09
+b0
+aa
+55
+01
+00
+9a
+46
+01
+aa
+55
+06
+00
+a0
+44
+72
+31
+20
+98
+07
+2a
+aa
+55
+0c
+00
+af
+43
+0b
+41
+42
+20
+53
+68
+75
+74
+74
+65
+72
+33
+aa
+55
+06
+00
+a0
+40
+21
+00
+24
+00
+20
+00
+aa
+55
+0c
+00
+15
+45
+0b
+5a
+52
+50
+20
+53
+68
+75
+74
+74
+65
+72
+aa
+55
+02
+00
+ae
+46
+30
+00
+aa
+55
+02
+00
+a4
+46
+00
+00
+aa
+55
+04
+00
+9b
+46
+00
+fb
+05
+20
+aa
+55
+02
+00
+a2
+46
+00
+00
+aa
+55
+02
+00
+f1
+46
+01
+00
+aa
+55
+02
+00
+19
+47
+06
+00
+aa
+55
+02
+00
+f6
+46
+01
+00
+aa
+55
+02
+00
+1e
+47
+06
+00
+aa
+55
+02
+00
+fb
+46
+07
+00
+aa
+55
+02
+00
+23
+47
+08
+00
+aa
+55
+01
+00
+86
+46
+ff
+aa
+55
+02
+00
+dd
+46
+00
+08
+aa
+55
+02
+00
+3f
+42
+df
+46
+aa
+55
+03
+00
+df
+46
+00
+14
+20
+aa
+55
+01
+00
+91
+40
+01
+aa
+55
+03
+00
+54
+41
+00
+01
+08
+aa
+55
+02
+00
+72
+41
+05
+02
+aa
+55
+03
+00
+9f
+46
+09
+0a
+0b
+aa
+55
+04
+00
+e3
+41
+30
+00
+01
+00
+aa
+55
+01
+00
+5a
+45
+0a
+aa
+55
+08
+00
+b9
+46
+96
+00
+96
+00
+96
+00
+3a
+07
+aa
+55
+08
+00
+c9
+46
+10
+00
+20
+00
+02
+00
+2c
+01
+aa
+55
+01
+00
+14
+42
+ff
+aa
+55
+03
+00
+1a
+42
+01
+c9
+48
+aa
+55
+16
+00
+c9
+48
+00
+00
+1a
+a0
+01
+a0
+01
+00
+00
+00
+00
+01
+07
+1a
+a0
+03
+a0
+03
+00
+00
+00
+00
+aa
+55
+04
+00
+b1
+46
+10
+00
+40
+01
+aa
+55
+02
+00
+82
+44
+40
+01
+aa
+55
+02
+00
+b5
+46
+50
+00
+aa
+55
+01
+00
+92
+40
+09
+aa
+55
+01
+00
+8d
+44
+07
+aa
+55
+01
+00
+6e
+43
+00
+aa
+55
+08
+00
+d1
+46
+00
+ff
+00
+ff
+b8
+0b
+b8
+0b
+aa
+55
+02
+00
+18
+42
+fa
+47
+aa
+55
+02
+00
+fa
+47
+01
+20
+aa
+55
+0c
+00
+6f
+43
+1f
+02
+01
+05
+03
+02
+12
+18
+03
+19
+c1
+03
+aa
+55
+20
+00
+8f
+43
+1f
+0d
+09
+56
+30
+2d
+53
+68
+75
+74
+74
+65
+72
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+02
+00
+3d
+42
+e6
+46
+aa
+55
+01
+00
+e6
+46
+02
+aa
+55
+03
+00
+e9
+46
+17
+05
+0d
+aa
+55
+01
+00
+07
+42
+17
+aa
+55
+03
+00
+15
+42
+1f
+48
+05
+aa
+55
+02
+00
+aa
+40
+40
+25
+aa
+55
+03
+00
+5b
+46
+03
+00
+04
+aa
+55
+01
+00
+62
+46
+03
+aa
+55
+01
+00
+5a
+46
+01
+aa
+55
+01
+00
+84
+46
+01
+aa
+55
+01
+00
+5a
+41
+00
+aa
+55
+08
+00
+98
+40
+ff
+ff
+8f
+f8
+9b
+9d
+59
+83
+aa
+55
+02
+00
+bc
+44
+3a
+91
+aa
+55
+01
+00
+d1
+40
+01
+aa
+55
+0e
+00
+77
+45
+06
+03
+11
+00
+00
+01
+02
+10
+24
+11
+00
+12
+01
+00
+aa
+55
+01
+00
+8d
+45
+00
+aa
+55
+02
+00
+75
+45
+b8
+92
+aa
+55
+40
+00
+00
+40
+01
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+02
+00
+00
+00
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+24
+00
+00
+00
+0c
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+00
+aa
+55
+01
+00
+de
+41
+00
+aa
+55
+03
+00
+75
+41
+8f
+1e
+ca
+aa
+55
+04
+00
+79
+41
+0a
+0b
+ef
+07
+aa
+55
+01
+00
+57
+41
+00
+aa
+55
+08
+00
+a1
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+02
+00
+bd
+40
+02
+24
+aa
+55
+08
+00
+ad
+40
+24
+00
+00
+02
+24
+00
+00
+02
+aa
+55
+02
+00
+bb
+40
+20
+00
+aa
+55
+04
+00
+b7
+40
+20
+00
+00
+20
+aa
+55
+04
+00
+bf
+40
+80
+04
+00
+08
+aa
+55
+05
+00
+78
+41
+00
+0a
+1b
+ef
+07
+aa
+55
+05
+00
+10
+45
+08
+0e
+05
+04
+00
+aa
+55
+02
+00
+03
+42
+30
+1f
+aa
+55
+01
+00
+11
+42
+20
+aa
+55
+01
+00
+df
+41
+01
+aa
+55
+01
+00
+e1
+41
+ff
+aa
+55
+02
+00
+c3
+40
+e1
+41
+e2
+29
Index: update/eeprom_final.dat
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/eeprom_final.dat	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/eeprom_final.dat	(working copy)
@@ -0,0 +1,2000 @@
+00
+ab
+aa
+55
+82
+00
+20
+80
+00
+00
+20
+40
+29
+6c
+20
+40
+00
+18
+78
+54
+7c
+00
+20
+40
+66
+6a
+58
+00
+00
+00
+da
+20
+01
+f3
+d8
+40
+00
+02
+20
+40
+66
+b3
+68
+01
+01
+f3
+79
+20
+7e
+04
+60
+01
+01
+f3
+c3
+03
+e4
+9b
+70
+80
+50
+25
+58
+00
+07
+f0
+da
+20
+02
+06
+d8
+40
+00
+10
+20
+40
+66
+b3
+70
+80
+06
+08
+79
+20
+00
+2b
+d8
+c0
+02
+06
+20
+40
+74
+84
+78
+34
+7c
+00
+20
+20
+64
+9b
+da
+20
+00
+40
+20
+40
+69
+a6
+da
+20
+00
+00
+da
+40
+00
+00
+58
+00
+00
+01
+20
+40
+69
+be
+58
+00
+00
+05
+20
+20
+69
+d5
+32
+1b
+aa
+55
+01
+00
+00
+40
+01
+aa
+55
+03
+00
+75
+41
+8f
+10
+ca
+aa
+55
+01
+00
+e1
+41
+ff
+aa
+55
+02
+00
+c3
+40
+e1
+41
+15
+72
+e0
+02
+92
+6e
+c1
+f2
+00
+3d
+70
+98
+7e
+b3
+e4
+b5
+2c
+0f
+f3
+ee
+aa
+55
+50
+01
+c0
+f2
+4f
+18
+31
+9a
+10
+64
+85
+b8
+0b
+c9
+63
+6c
+b7
+46
+80
+c9
+f1
+2f
+12
+ac
+a3
+69
+ce
+4b
+c8
+c0
+97
+00
+7c
+4c
+18
+6d
+36
+56
+0e
+a8
+cf
+51
+d6
+5e
+b5
+96
+de
+ba
+b3
+f8
+96
+ba
+bc
+13
+92
+6d
+cc
+a8
+9d
+5d
+34
+2d
+ca
+dd
+2c
+4c
+67
+fb
+8c
+48
+da
+60
+ee
+81
+c8
+a5
+61
+f1
+7d
+4f
+10
+e6
+49
+1c
+43
+c0
+48
+5c
+46
+ef
+59
+c2
+17
+82
+7f
+1b
+8b
+f7
+7a
+06
+ee
+86
+d1
+8b
+4c
+bc
+76
+10
+8b
+85
+49
+8e
+1c
+02
+5e
+f9
+47
+e9
+e2
+b7
+ea
+9b
+a2
+ef
+dd
+45
+46
+e9
+ed
+ca
+b6
+2b
+36
+ba
+82
+e3
+38
+a4
+04
+d3
+ed
+dd
+a2
+d3
+2c
+77
+4a
+cb
+0b
+b6
+98
+18
+0c
+49
+fd
+7b
+6c
+6e
+02
+95
+29
+4d
+51
+02
+c5
+3c
+55
+2c
+b4
+e4
+8b
+e3
+6d
+98
+cc
+a3
+fa
+cf
+e3
+de
+0c
+5c
+57
+e3
+94
+2c
+be
+fb
+69
+36
+ca
+dd
+b1
+07
+6a
+83
+88
+7e
+45
+fa
+ca
+88
+c8
+7b
+b7
+0a
+5d
+34
+39
+31
+ad
+3d
+13
+82
+5e
+d9
+91
+cb
+a6
+2a
+44
+2a
+04
+6f
+7d
+2b
+b0
+a7
+0a
+85
+5f
+fd
+45
+31
+40
+84
+f6
+95
+08
+7f
+c9
+fc
+6b
+40
+df
+e1
+12
+da
+83
+6a
+e2
+d2
+ed
+70
+45
+97
+1b
+e3
+78
+c6
+eb
+cd
+1e
+66
+73
+c6
+f5
+2c
+d2
+ea
+00
+14
+52
+4a
+11
+72
+48
+74
+03
+e5
+75
+71
+2a
+ac
+b3
+e4
+fe
+b0
+99
+7b
+20
+73
+fd
+1e
+c4
+ec
+a8
+40
+b9
+7d
+7c
+31
+0d
+24
+4e
+d2
+1a
+39
+30
+38
+f5
+f7
+28
+1e
+ca
+9a
+8b
+be
+0a
+08
+66
+80
+85
+bc
+de
+55
+20
+6e
+7f
+6b
+19
+6c
+a1
+49
+23
+66
+09
+b0
+aa
+55
+01
+00
+9a
+46
+01
+aa
+55
+06
+00
+a0
+44
+72
+31
+20
+98
+07
+2a
+aa
+55
+0c
+00
+af
+43
+0b
+41
+42
+20
+53
+68
+75
+74
+74
+65
+72
+33
+aa
+55
+06
+00
+a0
+40
+21
+00
+24
+00
+20
+00
+aa
+55
+0c
+00
+15
+45
+0b
+5a
+52
+50
+20
+53
+68
+75
+74
+74
+65
+72
+aa
+55
+02
+00
+ae
+46
+30
+00
+aa
+55
+02
+00
+a4
+46
+00
+00
+aa
+55
+04
+00
+9b
+46
+00
+fb
+05
+20
+aa
+55
+02
+00
+a2
+46
+00
+00
+aa
+55
+02
+00
+f1
+46
+01
+00
+aa
+55
+02
+00
+19
+47
+06
+00
+aa
+55
+02
+00
+f6
+46
+01
+00
+aa
+55
+02
+00
+1e
+47
+06
+00
+aa
+55
+02
+00
+fb
+46
+07
+00
+aa
+55
+02
+00
+23
+47
+08
+00
+aa
+55
+01
+00
+86
+46
+ff
+aa
+55
+02
+00
+dd
+46
+00
+08
+aa
+55
+02
+00
+3f
+42
+df
+46
+aa
+55
+03
+00
+df
+46
+00
+14
+20
+aa
+55
+01
+00
+91
+40
+01
+aa
+55
+03
+00
+54
+41
+00
+01
+08
+aa
+55
+02
+00
+72
+41
+05
+02
+aa
+55
+03
+00
+9f
+46
+09
+0a
+0b
+aa
+55
+04
+00
+e3
+41
+30
+00
+01
+00
+aa
+55
+01
+00
+5a
+45
+0a
+aa
+55
+08
+00
+b9
+46
+96
+00
+96
+00
+96
+00
+3a
+07
+aa
+55
+08
+00
+c9
+46
+10
+00
+20
+00
+02
+00
+2c
+01
+aa
+55
+01
+00
+14
+42
+ff
+aa
+55
+03
+00
+1a
+42
+01
+c9
+48
+aa
+55
+16
+00
+c9
+48
+00
+00
+1a
+a0
+01
+a0
+01
+00
+00
+00
+00
+01
+07
+1a
+a0
+03
+a0
+03
+00
+00
+00
+00
+aa
+55
+04
+00
+b1
+46
+10
+00
+40
+01
+aa
+55
+02
+00
+82
+44
+40
+01
+aa
+55
+02
+00
+b5
+46
+50
+00
+aa
+55
+01
+00
+92
+40
+09
+aa
+55
+01
+00
+8d
+44
+07
+aa
+55
+01
+00
+6e
+43
+00
+aa
+55
+08
+00
+d1
+46
+00
+ff
+00
+ff
+b8
+0b
+b8
+0b
+aa
+55
+02
+00
+18
+42
+fa
+47
+aa
+55
+02
+00
+fa
+47
+01
+20
+aa
+55
+0c
+00
+6f
+43
+1f
+02
+01
+05
+03
+02
+12
+18
+03
+19
+c1
+03
+aa
+55
+20
+00
+8f
+43
+1f
+0d
+09
+56
+30
+2d
+53
+68
+75
+74
+74
+65
+72
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+02
+00
+3d
+42
+e6
+46
+aa
+55
+01
+00
+e6
+46
+02
+aa
+55
+03
+00
+e9
+46
+17
+05
+0d
+aa
+55
+01
+00
+07
+42
+17
+aa
+55
+03
+00
+15
+42
+1f
+48
+05
+aa
+55
+02
+00
+aa
+40
+40
+25
+aa
+55
+03
+00
+5b
+46
+03
+00
+04
+aa
+55
+01
+00
+62
+46
+03
+aa
+55
+01
+00
+5a
+46
+01
+aa
+55
+01
+00
+84
+46
+01
+aa
+55
+01
+00
+5a
+41
+00
+aa
+55
+08
+00
+98
+40
+ff
+ff
+8f
+f8
+9b
+9d
+59
+83
+aa
+55
+02
+00
+bc
+44
+3a
+91
+aa
+55
+01
+00
+d1
+40
+01
+aa
+55
+0e
+00
+77
+45
+06
+03
+11
+00
+00
+01
+02
+10
+24
+11
+00
+12
+01
+00
+aa
+55
+01
+00
+8d
+45
+00
+aa
+55
+02
+00
+75
+45
+b8
+92
+aa
+55
+40
+00
+00
+40
+01
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+02
+00
+00
+00
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+24
+00
+00
+00
+0c
+00
+00
+00
+00
+20
+00
+00
+00
+00
+00
+00
+aa
+55
+01
+00
+de
+41
+00
+aa
+55
+03
+00
+75
+41
+8f
+1e
+ca
+aa
+55
+04
+00
+79
+41
+0a
+0b
+ef
+07
+aa
+55
+01
+00
+57
+41
+00
+aa
+55
+08
+00
+a1
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+02
+00
+bd
+40
+02
+24
+aa
+55
+08
+00
+ad
+40
+24
+00
+00
+02
+24
+00
+00
+02
+aa
+55
+02
+00
+bb
+40
+20
+00
+aa
+55
+04
+00
+b7
+40
+20
+00
+00
+20
+aa
+55
+04
+00
+bf
+40
+80
+04
+00
+08
+aa
+55
+05
+00
+78
+41
+00
+0a
+1b
+ef
+07
+aa
+55
+05
+00
+10
+45
+08
+0e
+05
+04
+00
+aa
+55
+02
+00
+03
+42
+30
+1f
+aa
+55
+01
+00
+11
+42
+20
+aa
+55
+01
+00
+df
+41
+01
+aa
+55
+01
+00
+e1
+41
+ff
+aa
+55
+02
+00
+c3
+40
+e1
+41
+e2
+29
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+f5
+47
Index: update/otpdata.dat
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/otpdata.dat	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/otpdata.dat	(working copy)
@@ -0,0 +1,169 @@
+00
+ab
+aa
+55
+82
+00
+20
+80
+00
+00
+20
+40
+29
+6c
+20
+40
+00
+18
+78
+54
+7c
+00
+20
+40
+66
+6a
+58
+00
+00
+00
+da
+20
+01
+f3
+d8
+40
+00
+02
+20
+40
+66
+b3
+68
+01
+01
+f3
+79
+20
+7e
+04
+60
+01
+01
+f3
+c3
+03
+e4
+9b
+70
+80
+50
+25
+58
+00
+07
+f0
+da
+20
+02
+06
+d8
+40
+00
+10
+20
+40
+66
+b3
+70
+80
+06
+08
+79
+20
+00
+2b
+d8
+c0
+02
+06
+20
+40
+74
+84
+78
+34
+7c
+00
+20
+20
+64
+9b
+da
+20
+00
+40
+20
+40
+69
+a6
+da
+20
+00
+00
+da
+40
+00
+00
+58
+00
+00
+01
+20
+40
+69
+be
+58
+00
+00
+05
+20
+20
+69
+d5
+32
+1b
+aa
+55
+01
+00
+00
+40
+01
+aa
+55
+03
+00
+75
+41
+8f
+10
+ca
+aa
+55
+01
+00
+e1
+41
+ff
+aa
+55
+02
+00
+c3
+40
+e1
+41
+15
+72
Index: update/update.bat
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/update.bat	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/update.bat	(working copy)
@@ -0,0 +1,3 @@
+perl update_eeprom.pl otpdata.dat eeprom.dat eeprom2.dat
+perl crc16.pl eeprom2.dat 2 > eeprom_final.dat
+del eeprom2.dat
\ No newline at end of file
Index: update/update_eeprom.pl
===================================================================
--- /branch/Shutter/Ble shutter/AB Shutter3/update/update_eeprom.pl	(nonexistent)
+++ /branch/Shutter/Ble shutter/AB Shutter3/update/update_eeprom.pl	(working copy)
@@ -0,0 +1,42 @@
+
+#ļһļ
+
+if(@ARGV < 3) {
+	printf "less files\n";
+	exit;
+}
+else{
+	open(otpfile, $ARGV[0]) or die "Can't open  file  : $!"; 
+	open(eepromfile, $ARGV[1]) or die "Can't open  file  : $!"; 
+	open(file_out, ">$ARGV[2]")or die "Can't open out file  : $!"; 
+	
+	#copy from otpdata
+	@otplines = <otpfile>;
+	$otplength = @otplines;
+	my $i=0;
+	while($i<$otplength){
+			print file_out "$otplines[$i]";
+			$i++;
+	}
+	close(otpfile);
+
+	#copy from eeprom.dat
+	@eepromlines = <eepromfile>;
+	$eepromlength = @eepromlines;
+	my $j=0;
+	my $valuelength = $otplength + $eepromlength;
+	while($j<$valuelength){
+			print file_out "$eepromlines[$j]";
+			$j++;
+	}
+	close(eepromfile);
+
+	#filled with 0xff
+	my $k= 0;	
+	my $totallength = 1998 - $valuelength;
+	while($k<$totallength){
+			print file_out "ff\n";
+			$k++;
+	}
+	close(file_out);
+}
