for OV5642
Dependencies: EthernetInterface FATFileSystem GR-PEACH_video GraphicsFramework HttpServer_snapshot R_BSP mbed-rpc mbed-rtos mbed
Revision 5:34d84609dd60, committed 2015-10-23
- Comitter:
- 1050186
- Date:
- Fri Oct 23 11:03:49 2015 +0000
- Parent:
- 4:487e6c5bea1e
- Child:
- 6:7ec90cc47dc4
- Commit message:
- Update functions.
Changed in this revision
--- a/HttpServer_snapshot.lib Tue Oct 20 06:28:50 2015 +0000 +++ b/HttpServer_snapshot.lib Fri Oct 23 11:03:49 2015 +0000 @@ -1,1 +1,1 @@ -https://developer.mbed.org/teams/Renesas/code/HttpServer_snapshot/#d9e6379eefac +https://developer.mbed.org/teams/Renesas/code/HttpServer_snapshot/#a9fb8fe9b8a3
--- a/file_table.h Tue Oct 20 06:28:50 2015 +0000 +++ b/file_table.h Fri Oct 23 11:03:49 2015 +0000 @@ -595,67 +595,495 @@ ,0x3C,0x6D,0x65,0x74,0x61,0x20,0x68,0x74,0x74,0x70,0x2D,0x65,0x71,0x75,0x69,0x76 ,0x3D,0x22,0x43,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x2D,0x54,0x79,0x70,0x65,0x22,0x20 ,0x63,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x68,0x74 -,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66 -,0x2D,0x38,0x22,0x3E,0x20,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x6D,0x62 -,0x65,0x64,0x20,0x74,0x65,0x73,0x74,0x20,0x77,0x65,0x62,0x3C,0x2F,0x74,0x69,0x74 -,0x6C,0x65,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79,0x70 -,0x65,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72,0x69 -,0x70,0x74,0x22,0x20,0x73,0x72,0x63,0x3D,0x22,0x6D,0x62,0x65,0x64,0x52,0x50,0x43 -,0x2E,0x6A,0x73,0x22,0x20,0x6C,0x61,0x6E,0x67,0x75,0x61,0x67,0x65,0x3D,0x22,0x6A -,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74,0x22,0x20,0x63,0x68,0x61,0x72,0x73 -,0x65,0x74,0x3D,0x22,0x75,0x74,0x66,0x2D,0x38,0x22,0x3E,0x3C,0x2F,0x73,0x63,0x72 -,0x69,0x70,0x74,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79 -,0x70,0x65,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72 -,0x69,0x70,0x74,0x22,0x3E,0x6D,0x62,0x65,0x64,0x3D,0x6E,0x65,0x77,0x20,0x48,0x54 -,0x54,0x50,0x52,0x50,0x43,0x28,0x29,0x3B,0x6C,0x65,0x64,0x31,0x3D,0x6E,0x65,0x77 -,0x20,0x44,0x69,0x67,0x69,0x74,0x61,0x6C,0x4F,0x75,0x74,0x28,0x6D,0x62,0x65,0x64 -,0x2C,0x4C,0x45,0x44,0x31,0x29,0x3B,0x6C,0x65,0x64,0x32,0x3D,0x6E,0x65,0x77,0x20 -,0x44,0x69,0x67,0x69,0x74,0x61,0x6C,0x4F,0x75,0x74,0x28,0x6D,0x62,0x65,0x64,0x2C -,0x4C,0x45,0x44,0x32,0x29,0x3B,0x6C,0x65,0x64,0x33,0x3D,0x6E,0x65,0x77,0x20,0x44 +,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x20,0x75,0x74 +,0x66,0x2D,0x38,0x22,0x3E,0x20,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x4C +,0x45,0x44,0x20,0x54,0x6F,0x67,0x67,0x6C,0x65,0x3C,0x2F,0x74,0x69,0x74,0x6C,0x65 +,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79,0x70,0x65,0x3D +,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74 +,0x22,0x20,0x73,0x72,0x63,0x3D,0x22,0x6D,0x62,0x65,0x64,0x52,0x50,0x43,0x2E,0x6A +,0x73,0x22,0x20,0x6C,0x61,0x6E,0x67,0x75,0x61,0x67,0x65,0x3D,0x22,0x6A,0x61,0x76 +,0x61,0x73,0x63,0x72,0x69,0x70,0x74,0x22,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74 +,0x3D,0x22,0x75,0x74,0x66,0x2D,0x38,0x22,0x3E,0x3C,0x2F,0x73,0x63,0x72,0x69,0x70 +,0x74,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79,0x70,0x65 +,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70 +,0x74,0x22,0x3E,0x6D,0x62,0x65,0x64,0x3D,0x6E,0x65,0x77,0x20,0x48,0x54,0x54,0x50 +,0x52,0x50,0x43,0x28,0x29,0x3B,0x6C,0x65,0x64,0x31,0x3D,0x6E,0x65,0x77,0x20,0x44 ,0x69,0x67,0x69,0x74,0x61,0x6C,0x4F,0x75,0x74,0x28,0x6D,0x62,0x65,0x64,0x2C,0x4C -,0x45,0x44,0x33,0x29,0x3B,0x74,0x65,0x72,0x6D,0x3D,0x6E,0x65,0x77,0x20,0x52,0x50 -,0x43,0x46,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x28,0x6D,0x62,0x65,0x64,0x2C,0x22 -,0x54,0x65,0x72,0x6D,0x69,0x6E,0x61,0x6C,0x57,0x72,0x69,0x74,0x65,0x22,0x29,0x3B -,0x3C,0x2F,0x73,0x63,0x72,0x69,0x70,0x74,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x65,0x61 -,0x64,0x3E,0x0D,0x0A,0x3C,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x62,0x75,0x74 -,0x74,0x6F,0x6E,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x73,0x75,0x62,0x6D,0x69,0x74 -,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31,0x61,0x22 -,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65,0x64,0x31,0x2E,0x77 -,0x72,0x69,0x74,0x65,0x28,0x31,0x29,0x22,0x3E,0x4C,0x45,0x44,0x31,0x20,0x6F,0x6E -,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A -,0x3C,0x62,0x75,0x74,0x74,0x6F,0x6E,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x73,0x75 -,0x62,0x6D,0x69,0x74,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45 -,0x44,0x32,0x61,0x22,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65 -,0x64,0x32,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x31,0x29,0x22,0x3E,0x4C,0x45,0x44 -,0x32,0x20,0x6F,0x6E,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62 -,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x75,0x74,0x74,0x6F,0x6E,0x20,0x74,0x79,0x70,0x65 -,0x3D,0x22,0x73,0x75,0x62,0x6D,0x69,0x74,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74 -,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x61,0x22,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B -,0x3D,0x22,0x6C,0x65,0x64,0x33,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x31,0x29,0x22 -,0x3E,0x4C,0x45,0x44,0x33,0x20,0x6F,0x6E,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E -,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62 -,0x75,0x74,0x74,0x6F,0x6E,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x73,0x75,0x62,0x6D -,0x69,0x74,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31 -,0x62,0x22,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65,0x64,0x31 -,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x30,0x29,0x22,0x3E,0x4C,0x45,0x44,0x31,0x20 -,0x6F,0x66,0x66,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62,0x72 -,0x3E,0x0D,0x0A,0x3C,0x62,0x75,0x74,0x74,0x6F,0x6E,0x20,0x74,0x79,0x70,0x65,0x3D -,0x22,0x73,0x75,0x62,0x6D,0x69,0x74,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E -,0x5F,0x4C,0x45,0x44,0x32,0x62,0x22,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D -,0x22,0x6C,0x65,0x64,0x32,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x30,0x29,0x22,0x3E -,0x4C,0x45,0x44,0x32,0x20,0x6F,0x66,0x66,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E -,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x75,0x74,0x74,0x6F,0x6E,0x20 -,0x74,0x79,0x70,0x65,0x3D,0x22,0x73,0x75,0x62,0x6D,0x69,0x74,0x22,0x20,0x49,0x44 -,0x3D,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x62,0x22,0x20,0x6F,0x6E,0x63 -,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65,0x64,0x33,0x2E,0x77,0x72,0x69,0x74,0x65 -,0x28,0x30,0x29,0x22,0x3E,0x4C,0x45,0x44,0x33,0x20,0x6F,0x66,0x66,0x3C,0x2F,0x62 -,0x75,0x74,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72 -,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65 +,0x45,0x44,0x31,0x29,0x3B,0x6C,0x65,0x64,0x32,0x3D,0x6E,0x65,0x77,0x20,0x44,0x69 +,0x67,0x69,0x74,0x61,0x6C,0x4F,0x75,0x74,0x28,0x6D,0x62,0x65,0x64,0x2C,0x4C,0x45 +,0x44,0x32,0x29,0x3B,0x6C,0x65,0x64,0x33,0x3D,0x6E,0x65,0x77,0x20,0x44,0x69,0x67 +,0x69,0x74,0x61,0x6C,0x4F,0x75,0x74,0x28,0x6D,0x62,0x65,0x64,0x2C,0x4C,0x45,0x44 +,0x33,0x29,0x3B,0x0D,0x0A,0x3C,0x2F,0x73,0x63,0x72,0x69,0x70,0x74,0x3E,0x0D,0x0A +,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x74,0x65 +,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74,0x22,0x3E,0x0D +,0x0A,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x20,0x6C,0x65,0x64,0x31,0x5F,0x74 +,0x6F,0x67,0x67,0x6C,0x65,0x28,0x29,0x20,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x76,0x61,0x72,0x20,0x72,0x64,0x31,0x20,0x3D,0x20,0x6C,0x65,0x64 +,0x31,0x2E,0x72,0x65,0x61,0x64,0x28,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x72,0x64,0x31,0x20,0x3D,0x3D,0x20,0x31,0x29 +,0x20,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x6C,0x65,0x64,0x31,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x30 +,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31,0x2E,0x76,0x61,0x6C +,0x75,0x65,0x20,0x3D,0x20,0x27,0x4C,0x45,0x44,0x31,0x20,0x4F,0x66,0x66,0x27,0x3B +,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C +,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C +,0x45,0x44,0x31,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x62,0x61,0x63,0x6B +,0x67,0x72,0x6F,0x75,0x6E,0x64,0x43,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23 +,0x63,0x30,0x63,0x30,0x63,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65 +,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49 +,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31,0x22,0x29,0x2E,0x73,0x74 +,0x79,0x6C,0x65,0x2E,0x63,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23,0x30,0x30 +,0x30,0x30,0x30,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x7D,0x65,0x6C,0x73,0x65,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6C,0x65,0x64,0x31,0x2E,0x77,0x72,0x69 +,0x74,0x65,0x28,0x31,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31 +,0x2E,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20,0x27,0x4C,0x45,0x44,0x31,0x20,0x4F +,0x6E,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65 +,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74 +,0x6E,0x5F,0x4C,0x45,0x44,0x31,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x62 +,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64,0x43,0x6F,0x6C,0x6F,0x72,0x20,0x3D +,0x20,0x27,0x23,0x66,0x66,0x30,0x30,0x30,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63 +,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74 +,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x31,0x22,0x29 +,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x63,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27 +,0x23,0x66,0x66,0x66,0x66,0x66,0x66,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x7D,0x0D,0x0A,0x7D,0x0D,0x0A,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F +,0x6E,0x20,0x6C,0x65,0x64,0x32,0x5F,0x74,0x6F,0x67,0x67,0x6C,0x65,0x28,0x29,0x20 +,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x76,0x61,0x72,0x20,0x72 +,0x64,0x32,0x20,0x3D,0x20,0x6C,0x65,0x64,0x32,0x2E,0x72,0x65,0x61,0x64,0x28,0x29 +,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x72 +,0x64,0x32,0x20,0x3D,0x3D,0x20,0x31,0x29,0x20,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6C,0x65,0x64,0x32 +,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x30,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x74,0x6E,0x5F +,0x4C,0x45,0x44,0x32,0x2E,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20,0x27,0x4C,0x45 +,0x44,0x32,0x20,0x4F,0x66,0x66,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65 +,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49 +,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x32,0x22,0x29,0x2E,0x73,0x74 +,0x79,0x6C,0x65,0x2E,0x62,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64,0x43,0x6F +,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23,0x63,0x30,0x63,0x30,0x63,0x30,0x27,0x3B +,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C +,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C +,0x45,0x44,0x32,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x63,0x6F,0x6C,0x6F +,0x72,0x20,0x3D,0x20,0x27,0x23,0x30,0x30,0x30,0x30,0x30,0x30,0x27,0x3B,0x0D,0x0A +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7D,0x65,0x6C,0x73,0x65,0x7B,0x0D,0x0A +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x6C,0x65,0x64,0x32,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x31,0x29,0x3B,0x0D,0x0A +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x32,0x2E,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D +,0x20,0x27,0x4C,0x45,0x44,0x32,0x20,0x4F,0x6E,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63 +,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74 +,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x32,0x22,0x29 +,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x62,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E +,0x64,0x43,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23,0x30,0x30,0x38,0x30,0x30 +,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65 +,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74 +,0x6E,0x5F,0x4C,0x45,0x44,0x32,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x63 +,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23,0x66,0x66,0x66,0x66,0x66,0x66,0x27 +,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7D,0x0D,0x0A,0x7D,0x0D +,0x0A,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x20,0x6C,0x65,0x64,0x33,0x5F,0x74 +,0x6F,0x67,0x67,0x6C,0x65,0x28,0x29,0x20,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x76,0x61,0x72,0x20,0x72,0x64,0x33,0x20,0x3D,0x20,0x6C,0x65,0x64 +,0x33,0x2E,0x72,0x65,0x61,0x64,0x28,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x69,0x66,0x20,0x28,0x72,0x64,0x33,0x20,0x3D,0x3D,0x20,0x31,0x29 +,0x20,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x6C,0x65,0x64,0x33,0x2E,0x77,0x72,0x69,0x74,0x65,0x28,0x30 +,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x2E,0x76,0x61,0x6C +,0x75,0x65,0x20,0x3D,0x20,0x27,0x4C,0x45,0x44,0x33,0x20,0x4F,0x66,0x66,0x27,0x3B +,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C +,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C +,0x45,0x44,0x33,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x62,0x61,0x63,0x6B +,0x67,0x72,0x6F,0x75,0x6E,0x64,0x43,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23 +,0x63,0x30,0x63,0x30,0x63,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65 +,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49 +,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x22,0x29,0x2E,0x73,0x74 +,0x79,0x6C,0x65,0x2E,0x63,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27,0x23,0x30,0x30 +,0x30,0x30,0x30,0x30,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x7D,0x65,0x6C,0x73,0x65,0x7B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6C,0x65,0x64,0x33,0x2E,0x77,0x72,0x69 +,0x74,0x65,0x28,0x31,0x29,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33 +,0x2E,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20,0x27,0x4C,0x45,0x44,0x33,0x20,0x4F +,0x6E,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65 +,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74 +,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x22,0x29,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x62 +,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64,0x43,0x6F,0x6C,0x6F,0x72,0x20,0x3D +,0x20,0x27,0x23,0x30,0x30,0x30,0x30,0x63,0x63,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20 +,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x64,0x6F,0x63 +,0x75,0x6D,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74 +,0x42,0x79,0x49,0x64,0x28,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x22,0x29 +,0x2E,0x73,0x74,0x79,0x6C,0x65,0x2E,0x63,0x6F,0x6C,0x6F,0x72,0x20,0x3D,0x20,0x27 +,0x23,0x66,0x66,0x66,0x66,0x66,0x66,0x27,0x3B,0x0D,0x0A,0x20,0x20,0x20,0x20,0x20 +,0x20,0x20,0x20,0x7D,0x0D,0x0A,0x7D,0x0D,0x0A,0x3C,0x2F,0x73,0x63,0x72,0x69,0x70 +,0x74,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A,0x3C,0x62,0x6F +,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x70,0x3E,0x3C,0x66,0x6F,0x6E,0x74,0x20,0x73,0x69 +,0x7A,0x65,0x3D,0x22,0x38,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20,0x73,0x74,0x79 +,0x6C,0x65,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x38 +,0x30,0x22,0x3E,0x3C,0x62,0x3E,0x4C,0x45,0x44,0x20,0x54,0x6F,0x67,0x67,0x6C,0x65 +,0x20,0x53,0x77,0x69,0x74,0x63,0x68,0x3C,0x2F,0x62,0x3E,0x3C,0x2F,0x73,0x70,0x61 +,0x6E,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74,0x3E,0x3C,0x62,0x72,0x3E,0x3C,0x62,0x72 +,0x3E,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65,0x3D,0x22 +,0x62,0x75,0x74,0x74,0x6F,0x6E,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E,0x5F +,0x4C,0x45,0x44,0x31,0x22,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x46,0x4F,0x4E +,0x54,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54,0x61,0x68,0x6F,0x6D,0x61,0x3B +,0x46,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A,0x39,0x70,0x74,0x3B,0x63,0x6F +,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x30,0x30,0x3B,0x62,0x61,0x63,0x6B +,0x67,0x72,0x6F,0x75,0x6E,0x64,0x2D,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x63,0x30 +,0x63,0x30,0x63,0x30,0x3B,0x57,0x49,0x44,0x54,0x48,0x3A,0x20,0x37,0x30,0x70,0x78 +,0x3B,0x20,0x48,0x45,0x49,0x47,0x48,0x54,0x3A,0x20,0x34,0x30,0x70,0x78,0x22,0x20 +,0x6F,0x6E,0x43,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65,0x64,0x31,0x5F,0x74,0x6F +,0x67,0x67,0x6C,0x65,0x28,0x29,0x22,0x20,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20 +,0x22,0x4C,0x45,0x44,0x31,0x20,0x4F,0x66,0x66,0x22,0x3E,0x20,0x3C,0x62,0x72,0x3E +,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74 +,0x79,0x70,0x65,0x3D,0x22,0x62,0x75,0x74,0x74,0x6F,0x6E,0x22,0x20,0x49,0x44,0x3D +,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x32,0x22,0x20,0x73,0x74,0x79,0x6C,0x65 +,0x3D,0x22,0x46,0x4F,0x4E,0x54,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54,0x61 +,0x68,0x6F,0x6D,0x61,0x3B,0x46,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A,0x39 +,0x70,0x74,0x3B,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x30,0x30 +,0x3B,0x62,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64,0x2D,0x63,0x6F,0x6C,0x6F +,0x72,0x3A,0x23,0x63,0x30,0x63,0x30,0x63,0x30,0x3B,0x57,0x49,0x44,0x54,0x48,0x3A +,0x20,0x37,0x30,0x70,0x78,0x3B,0x20,0x48,0x45,0x49,0x47,0x48,0x54,0x3A,0x20,0x34 +,0x30,0x70,0x78,0x22,0x20,0x6F,0x6E,0x43,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x6C,0x65 +,0x64,0x32,0x5F,0x74,0x6F,0x67,0x67,0x6C,0x65,0x28,0x29,0x22,0x20,0x76,0x61,0x6C +,0x75,0x65,0x20,0x3D,0x20,0x22,0x4C,0x45,0x44,0x32,0x20,0x4F,0x66,0x66,0x22,0x3E +,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x69,0x6E +,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x62,0x75,0x74,0x74,0x6F,0x6E +,0x22,0x20,0x49,0x44,0x3D,0x22,0x62,0x74,0x6E,0x5F,0x4C,0x45,0x44,0x33,0x22,0x20 +,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x46,0x4F,0x4E,0x54,0x2D,0x46,0x41,0x4D,0x49 +,0x4C,0x59,0x3A,0x54,0x61,0x68,0x6F,0x6D,0x61,0x3B,0x46,0x4F,0x4E,0x54,0x2D,0x53 +,0x49,0x5A,0x45,0x3A,0x39,0x70,0x74,0x3B,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30 +,0x30,0x30,0x30,0x30,0x30,0x3B,0x62,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64 +,0x2D,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x63,0x30,0x63,0x30,0x63,0x30,0x3B,0x57 +,0x49,0x44,0x54,0x48,0x3A,0x20,0x37,0x30,0x70,0x78,0x3B,0x20,0x48,0x45,0x49,0x47 +,0x48,0x54,0x3A,0x20,0x34,0x30,0x70,0x78,0x22,0x20,0x6F,0x6E,0x43,0x6C,0x69,0x63 +,0x6B,0x3D,0x22,0x6C,0x65,0x64,0x33,0x5F,0x74,0x6F,0x67,0x67,0x6C,0x65,0x28,0x29 +,0x22,0x20,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20,0x22,0x4C,0x45,0x44,0x33,0x20 +,0x4F,0x66,0x66,0x22,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x2F +,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A +}; + +static const char i2c_set_htm_tbl[] = { + 0x3C,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x3C,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A +,0x3C,0x6D,0x65,0x74,0x61,0x20,0x68,0x74,0x74,0x70,0x2D,0x65,0x71,0x75,0x69,0x76 +,0x3D,0x22,0x43,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x2D,0x54,0x79,0x70,0x65,0x22,0x20 +,0x63,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x68,0x74 +,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66 +,0x2D,0x38,0x22,0x3E,0x20,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x53,0x65 +,0x74,0x74,0x69,0x6E,0x67,0x20,0x62,0x79,0x20,0x49,0x32,0x43,0x3C,0x2F,0x74,0x69 +,0x74,0x6C,0x65,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74,0x79 +,0x70,0x65,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63,0x72 +,0x69,0x70,0x74,0x22,0x20,0x73,0x72,0x63,0x3D,0x22,0x6D,0x62,0x65,0x64,0x52,0x50 +,0x43,0x2E,0x6A,0x73,0x22,0x20,0x6C,0x61,0x6E,0x67,0x75,0x61,0x67,0x65,0x3D,0x22 +,0x6A,0x61,0x76,0x61,0x73,0x63,0x72,0x69,0x70,0x74,0x22,0x20,0x63,0x68,0x61,0x72 +,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66,0x2D,0x38,0x22,0x3E,0x3C,0x2F,0x73,0x63 +,0x72,0x69,0x70,0x74,0x3E,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x20,0x74 +,0x79,0x70,0x65,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x6A,0x61,0x76,0x61,0x73,0x63 +,0x72,0x69,0x70,0x74,0x22,0x3E,0x6D,0x62,0x65,0x64,0x3D,0x6E,0x65,0x77,0x20,0x48 +,0x54,0x54,0x50,0x52,0x50,0x43,0x28,0x29,0x3B,0x74,0x65,0x72,0x6D,0x3D,0x6E,0x65 +,0x77,0x20,0x52,0x50,0x43,0x46,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x28,0x6D,0x62 +,0x65,0x64,0x2C,0x22,0x53,0x65,0x74,0x49,0x32,0x43,0x66,0x72,0x6F,0x6D,0x57,0x65 +,0x62,0x22,0x29,0x3B,0x3C,0x2F,0x73,0x63,0x72,0x69,0x70,0x74,0x3E,0x0D,0x0A,0x3C +,0x2F,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A,0x3C,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A +,0x3C,0x70,0x3E,0x3C,0x66,0x6F,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22,0x38 +,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x63 +,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C,0x62 +,0x3E,0x44,0x69,0x72,0x65,0x63,0x74,0x20,0x69,0x6E,0x70,0x75,0x74,0x3C,0x2F,0x62 +,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74,0x3E,0x3C +,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65 ,0x3D,0x22,0x74,0x65,0x78,0x74,0x22,0x20,0x69,0x64,0x3D,0x22,0x74,0x65,0x78,0x74 ,0x62,0x6F,0x78,0x22,0x3E,0x3C,0x2F,0x69,0x6E,0x70,0x75,0x74,0x3E,0x3C,0x62,0x75 -,0x74,0x74,0x6F,0x6E,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x74,0x65 -,0x72,0x6D,0x2E,0x72,0x75,0x6E,0x28,0x74,0x65,0x78,0x74,0x62,0x6F,0x78,0x2E,0x76 -,0x61,0x6C,0x75,0x65,0x29,0x3B,0x22,0x3E,0x73,0x65,0x6E,0x64,0x3C,0x2F,0x62,0x75 -,0x74,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x2F -,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A +,0x74,0x74,0x6F,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x46,0x4F,0x4E,0x54 +,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54,0x61,0x68,0x6F,0x6D,0x61,0x3B,0x46 +,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A,0x39,0x70,0x74,0x22,0x20,0x6F,0x6E +,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x73,0x6E,0x64,0x5F,0x74,0x65,0x78,0x74,0x62 +,0x6F,0x78,0x28,0x29,0x3B,0x22,0x3E,0x53,0x65,0x6E,0x64,0x3C,0x2F,0x62,0x75,0x74 +,0x74,0x6F,0x6E,0x3E,0x20,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D +,0x0A,0x0D,0x0A,0x3C,0x70,0x3E,0x3C,0x66,0x6F,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65 +,0x3D,0x22,0x38,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65 +,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x38,0x30,0x22 +,0x3E,0x3C,0x62,0x3E,0x46,0x69,0x6C,0x65,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6E +,0x63,0x65,0x3C,0x2F,0x62,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F,0x66 +,0x6F,0x6E,0x74,0x3E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74 +,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x66,0x69,0x6C,0x65,0x22,0x20,0x69,0x64,0x3D +,0x22,0x66,0x69,0x6C,0x55,0x70,0x6C,0x6F,0x61,0x64,0x22,0x20,0x73,0x74,0x79,0x6C +,0x65,0x3D,0x22,0x64,0x69,0x73,0x70,0x6C,0x61,0x79,0x3A,0x6E,0x6F,0x6E,0x65,0x22 +,0x20,0x6F,0x6E,0x43,0x68,0x61,0x6E,0x67,0x65,0x3D,0x22,0x74,0x78,0x74,0x46,0x69 +,0x6C,0x65,0x6E,0x61,0x6D,0x65,0x2E,0x76,0x61,0x6C,0x75,0x65,0x20,0x3D,0x20,0x74 +,0x68,0x69,0x73,0x2E,0x76,0x61,0x6C,0x75,0x65,0x3B,0x22,0x20,0x61,0x63,0x63,0x65 +,0x70,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x70,0x6C,0x61,0x69,0x6E,0x22,0x3E +,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x74 +,0x65,0x78,0x74,0x22,0x20,0x69,0x64,0x3D,0x22,0x74,0x78,0x74,0x46,0x69,0x6C,0x65 +,0x6E,0x61,0x6D,0x65,0x22,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x46,0x4F,0x4E +,0x54,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54,0x61,0x68,0x6F,0x6D,0x61,0x3B +,0x46,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A,0x39,0x70,0x74,0x22,0x20,0x73 +,0x69,0x7A,0x65,0x3D,0x22,0x32,0x35,0x22,0x20,0x44,0x49,0x53,0x41,0x42,0x4C,0x45 +,0x44,0x3E,0x0D,0x0A,0x3C,0x69,0x6E,0x70,0x75,0x74,0x20,0x74,0x79,0x70,0x65,0x3D +,0x22,0x62,0x75,0x74,0x74,0x6F,0x6E,0x22,0x20,0x69,0x64,0x3D,0x22,0x62,0x74,0x6E +,0x42,0x72,0x6F,0x77,0x73,0x65,0x22,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x46 +,0x4F,0x4E,0x54,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54,0x61,0x68,0x6F,0x6D +,0x61,0x3B,0x46,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A,0x39,0x70,0x74,0x22 +,0x20,0x6F,0x6E,0x43,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x66,0x69,0x6C,0x55,0x70,0x6C +,0x6F,0x61,0x64,0x2E,0x63,0x6C,0x69,0x63,0x6B,0x28,0x29,0x22,0x20,0x76,0x61,0x6C +,0x75,0x65,0x3D,0x22,0x43,0x68,0x6F,0x6F,0x73,0x65,0x20,0x61,0x20,0x74,0x65,0x78 +,0x74,0x20,0x46,0x69,0x6C,0x65,0x22,0x3E,0x0D,0x0A,0x3C,0x62,0x75,0x74,0x74,0x6F +,0x6E,0x20,0x74,0x79,0x70,0x65,0x3D,0x22,0x73,0x75,0x62,0x6D,0x69,0x74,0x22,0x20 +,0x69,0x64,0x3D,0x22,0x73,0x6E,0x64,0x62,0x6F,0x78,0x22,0x20,0x73,0x74,0x79,0x6C +,0x65,0x3D,0x22,0x46,0x4F,0x4E,0x54,0x2D,0x46,0x41,0x4D,0x49,0x4C,0x59,0x3A,0x54 +,0x61,0x68,0x6F,0x6D,0x61,0x3B,0x46,0x4F,0x4E,0x54,0x2D,0x53,0x49,0x5A,0x45,0x3A +,0x39,0x70,0x74,0x22,0x20,0x6F,0x6E,0x63,0x6C,0x69,0x63,0x6B,0x3D,0x22,0x73,0x6E +,0x64,0x5F,0x66,0x69,0x6C,0x65,0x62,0x6F,0x78,0x28,0x29,0x22,0x3E,0x53,0x65,0x6E +,0x64,0x3C,0x2F,0x62,0x75,0x74,0x74,0x6F,0x6E,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E +,0x0D,0x0A,0x0D,0x0A,0x3C,0x73,0x63,0x72,0x69,0x70,0x74,0x3E,0x0D,0x0A,0x66,0x75 +,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x20,0x73,0x6E,0x64,0x5F,0x74,0x65,0x78,0x74,0x62 +,0x6F,0x78,0x28,0x29,0x7B,0x0D,0x0A,0x09,0x74,0x65,0x72,0x6D,0x2E,0x72,0x75,0x6E +,0x28,0x74,0x65,0x78,0x74,0x62,0x6F,0x78,0x2E,0x76,0x61,0x6C,0x75,0x65,0x29,0x3B +,0x0D,0x0A,0x7D,0x0D,0x0A,0x0D,0x0A,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x20 +,0x73,0x6E,0x64,0x5F,0x66,0x69,0x6C,0x65,0x62,0x6F,0x78,0x28,0x29,0x7B,0x0D,0x0A +,0x09,0x76,0x61,0x72,0x20,0x6F,0x62,0x6A,0x20,0x3D,0x20,0x64,0x6F,0x63,0x75,0x6D +,0x65,0x6E,0x74,0x2E,0x67,0x65,0x74,0x45,0x6C,0x65,0x6D,0x65,0x6E,0x74,0x42,0x79 +,0x49,0x64,0x28,0x22,0x66,0x69,0x6C,0x55,0x70,0x6C,0x6F,0x61,0x64,0x22,0x29,0x2E +,0x66,0x69,0x6C,0x65,0x73,0x5B,0x30,0x5D,0x3B,0x0D,0x0A,0x09,0x76,0x61,0x72,0x20 +,0x72,0x65,0x61,0x64,0x65,0x72,0x20,0x3D,0x20,0x6E,0x65,0x77,0x20,0x46,0x69,0x6C +,0x65,0x52,0x65,0x61,0x64,0x65,0x72,0x28,0x29,0x3B,0x0D,0x0A,0x09,0x72,0x65,0x61 +,0x64,0x65,0x72,0x2E,0x6F,0x6E,0x6C,0x6F,0x61,0x64,0x20,0x3D,0x20,0x66,0x75,0x6E +,0x63,0x74,0x69,0x6F,0x6E,0x28,0x65,0x76,0x74,0x29,0x20,0x7B,0x0D,0x0A,0x09,0x09 +,0x76,0x61,0x72,0x20,0x73,0x74,0x72,0x20,0x3D,0x20,0x65,0x76,0x74,0x2E,0x74,0x61 +,0x72,0x67,0x65,0x74,0x2E,0x72,0x65,0x73,0x75,0x6C,0x74,0x3B,0x0D,0x0A,0x09,0x09 +,0x76,0x61,0x72,0x20,0x64,0x61,0x74,0x61,0x20,0x3D,0x20,0x73,0x74,0x72,0x2E,0x73 +,0x70,0x6C,0x69,0x74,0x28,0x22,0x5C,0x72,0x5C,0x6E,0x22,0x29,0x3B,0x0D,0x0A,0x09 +,0x09,0x76,0x61,0x72,0x20,0x63,0x6E,0x74,0x20,0x3D,0x20,0x30,0x3B,0x0D,0x0A,0x09 +,0x09,0x77,0x68,0x69,0x6C,0x65,0x20,0x28,0x64,0x61,0x74,0x61,0x5B,0x63,0x6E,0x74 +,0x5D,0x20,0x21,0x3D,0x20,0x6E,0x75,0x6C,0x6C,0x29,0x20,0x7B,0x0D,0x0A,0x09,0x09 +,0x09,0x74,0x65,0x72,0x6D,0x2E,0x72,0x75,0x6E,0x28,0x64,0x61,0x74,0x61,0x5B,0x63 +,0x6E,0x74,0x5D,0x29,0x3B,0x0D,0x0A,0x09,0x09,0x09,0x63,0x6E,0x74,0x2B,0x2B,0x3B +,0x0D,0x0A,0x09,0x09,0x7D,0x0D,0x0A,0x09,0x7D,0x0D,0x0A,0x09,0x72,0x65,0x61,0x64 +,0x65,0x72,0x2E,0x72,0x65,0x61,0x64,0x41,0x73,0x54,0x65,0x78,0x74,0x28,0x6F,0x62 +,0x6A,0x29,0x3B,0x0D,0x0A,0x7D,0x0D,0x0A,0x0D,0x0A,0x3C,0x2F,0x73,0x63,0x72,0x69 +,0x70,0x74,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x2F,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A +,0x3C,0x2F,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A +}; + +static const char web_top_htm_tbl[] = { + 0x3C,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x3C,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A +,0x3C,0x6D,0x65,0x74,0x61,0x20,0x68,0x74,0x74,0x70,0x2D,0x65,0x71,0x75,0x69,0x76 +,0x3D,0x22,0x43,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x2D,0x54,0x79,0x70,0x65,0x22,0x20 +,0x63,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x68,0x74 +,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66 +,0x2D,0x38,0x22,0x3E,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x54,0x6F,0x70 +,0x20,0x50,0x61,0x67,0x65,0x3C,0x2F,0x74,0x69,0x74,0x6C,0x65,0x3E,0x0D,0x0A,0x3C +,0x2F,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A,0x3C,0x66,0x72,0x61,0x6D,0x65,0x73,0x65 +,0x74,0x20,0x63,0x6F,0x6C,0x73,0x3D,0x22,0x32,0x30,0x25,0x2C,0x38,0x30,0x25,0x22 +,0x3E,0x0D,0x0A,0x3C,0x66,0x72,0x61,0x6D,0x65,0x20,0x73,0x72,0x63,0x3D,0x22,0x6D +,0x65,0x6E,0x75,0x2E,0x68,0x74,0x6D,0x22,0x3E,0x0D,0x0A,0x3C,0x66,0x72,0x61,0x6D +,0x65,0x20,0x73,0x72,0x63,0x3D,0x22,0x77,0x69,0x6E,0x64,0x6F,0x77,0x2E,0x68,0x74 +,0x6D,0x22,0x20,0x6E,0x61,0x6D,0x65,0x3D,0x22,0x6B,0x69,0x72,0x69,0x6B,0x61,0x65 +,0x22,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x6E,0x6F,0x66,0x72,0x61,0x6D,0x65,0x73,0x3E +,0x0D,0x0A,0x3C,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x70,0x3E,0x59,0x6F,0x75 +,0x20,0x63,0x61,0x6E,0x20,0x6E,0x6F,0x74,0x20,0x76,0x69,0x65,0x77,0x20,0x74,0x68 +,0x69,0x73,0x20,0x73,0x61,0x6D,0x70,0x6C,0x65,0x20,0x73,0x69,0x6E,0x63,0x65,0x20 +,0x74,0x68,0x65,0x20,0x66,0x72,0x61,0x6D,0x65,0x20,0x6F,0x66,0x20,0x75,0x6E,0x73 +,0x75,0x70,0x70,0x6F,0x72,0x74,0x65,0x64,0x20,0x62,0x72,0x6F,0x77,0x73,0x65,0x72 +,0x2E,0x3C,0x2F,0x70,0x3E,0x0D,0x0A,0x3C,0x2F,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A +,0x3C,0x2F,0x6E,0x6F,0x66,0x72,0x61,0x6D,0x65,0x73,0x3E,0x0D,0x0A,0x3C,0x2F,0x66 +,0x72,0x61,0x6D,0x65,0x73,0x65,0x74,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x74,0x6D,0x6C +,0x3E,0x0D,0x0A }; + +static const char menu_htm_tbl[] = { + 0x3C,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x3C,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A +,0x3C,0x6D,0x65,0x74,0x61,0x20,0x68,0x74,0x74,0x70,0x2D,0x65,0x71,0x75,0x69,0x76 +,0x3D,0x22,0x43,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x2D,0x54,0x79,0x70,0x65,0x22,0x20 +,0x63,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x68,0x74 +,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66 +,0x2D,0x38,0x22,0x3E,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x47,0x52,0x2D +,0x50,0x45,0x41,0x43,0x48,0x20,0x4D,0x65,0x6E,0x75,0x3C,0x2F,0x74,0x69,0x74,0x6C +,0x65,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A,0x3C,0x62,0x6F +,0x64,0x79,0x20,0x62,0x67,0x63,0x6F,0x6C,0x6F,0x72,0x3D,0x22,0x23,0x46,0x46,0x46 +,0x41,0x46,0x41,0x22,0x3E,0x0D,0x0A,0x3C,0x43,0x45,0x4E,0x54,0x45,0x52,0x3E,0x0D +,0x0A,0x3C,0x50,0x3E,0x3C,0x66,0x6F,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22 +,0x34,0x22,0x3E,0x3C,0x42,0x3E,0x4D,0x65,0x6E,0x75,0x3C,0x2F,0x42,0x3E,0x3C,0x2F +,0x66,0x6F,0x6E,0x74,0x3E,0x3C,0x2F,0x50,0x3E,0x0D,0x0A,0x3C,0x2F,0x43,0x45,0x4E +,0x54,0x45,0x52,0x3E,0x0D,0x0A,0x0D,0x0A,0x3C,0x70,0x3E,0x0D,0x0A,0x3C,0x66,0x6F +,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22,0x34,0x22,0x3E,0x3C,0x73,0x70,0x61 +,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23 +,0x30,0x30,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C,0x61,0x20,0x68,0x72,0x65,0x66,0x3D +,0x22,0x77,0x69,0x6E,0x64,0x6F,0x77,0x2E,0x68,0x74,0x6D,0x22,0x20,0x74,0x61,0x72 +,0x67,0x65,0x74,0x3D,0x22,0x6B,0x69,0x72,0x69,0x6B,0x61,0x65,0x22,0x3E,0x54,0x6F +,0x70,0x20,0x50,0x61,0x67,0x65,0x3C,0x2F,0x61,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E +,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74,0x3E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62 +,0x72,0x3E,0x0D,0x0A,0x3C,0x66,0x6F,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22 +,0x34,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22 +,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C +,0x61,0x20,0x68,0x72,0x65,0x66,0x3D,0x22,0x63,0x61,0x6D,0x65,0x72,0x61,0x2E,0x68 +,0x74,0x6D,0x22,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x3D,0x22,0x6B,0x69,0x72,0x69 +,0x6B,0x61,0x65,0x22,0x3E,0x57,0x65,0x62,0x20,0x43,0x61,0x6D,0x65,0x72,0x61,0x3C +,0x2F,0x61,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74 +,0x3E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x66,0x6F +,0x6E,0x74,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22,0x34,0x22,0x3E,0x3C,0x73,0x70,0x61 +,0x6E,0x20,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23 +,0x30,0x30,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C,0x61,0x20,0x68,0x72,0x65,0x66,0x3D +,0x22,0x69,0x32,0x63,0x5F,0x73,0x65,0x74,0x2E,0x68,0x74,0x6D,0x22,0x20,0x74,0x61 +,0x72,0x67,0x65,0x74,0x3D,0x22,0x6B,0x69,0x72,0x69,0x6B,0x61,0x65,0x22,0x3E,0x53 +,0x65,0x74,0x74,0x69,0x6E,0x67,0x20,0x62,0x79,0x20,0x49,0x32,0x43,0x3C,0x2F,0x61 +,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74,0x3E,0x3C +,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x66,0x6F,0x6E,0x74 +,0x20,0x73,0x69,0x7A,0x65,0x3D,0x22,0x34,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20 +,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30 +,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C,0x61,0x20,0x68,0x72,0x65,0x66,0x3D,0x22,0x6C +,0x65,0x64,0x2E,0x68,0x74,0x6D,0x22,0x20,0x74,0x61,0x72,0x67,0x65,0x74,0x3D,0x22 +,0x6B,0x69,0x72,0x69,0x6B,0x61,0x65,0x22,0x3E,0x4C,0x45,0x44,0x20,0x4F,0x6E,0x2F +,0x4F,0x66,0x66,0x3C,0x2F,0x61,0x3E,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F +,0x66,0x6F,0x6E,0x74,0x3E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x2F,0x62,0x6F,0x64 +,0x79,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x0D,0x0A +}; + +static const char window_htm_tbl[] = { + 0x3C,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x3C,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A +,0x3C,0x6D,0x65,0x74,0x61,0x20,0x68,0x74,0x74,0x70,0x2D,0x65,0x71,0x75,0x69,0x76 +,0x3D,0x22,0x43,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x2D,0x54,0x79,0x70,0x65,0x22,0x20 +,0x63,0x6F,0x6E,0x74,0x65,0x6E,0x74,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x68,0x74 +,0x6D,0x6C,0x3B,0x20,0x63,0x68,0x61,0x72,0x73,0x65,0x74,0x3D,0x22,0x75,0x74,0x66 +,0x2D,0x38,0x22,0x3E,0x0D,0x0A,0x3C,0x74,0x69,0x74,0x6C,0x65,0x3E,0x47,0x52,0x2D +,0x50,0x45,0x41,0x43,0x48,0x20,0x57,0x69,0x6E,0x64,0x6F,0x77,0x3C,0x2F,0x74,0x69 +,0x74,0x6C,0x65,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x65,0x61,0x64,0x3E,0x0D,0x0A,0x3C +,0x62,0x6F,0x64,0x79,0x3E,0x0D,0x0A,0x3C,0x70,0x3E,0x3C,0x66,0x6F,0x6E,0x74,0x20 +,0x73,0x69,0x7A,0x65,0x3D,0x22,0x31,0x35,0x22,0x3E,0x3C,0x73,0x70,0x61,0x6E,0x20 +,0x73,0x74,0x79,0x6C,0x65,0x3D,0x22,0x63,0x6F,0x6C,0x6F,0x72,0x3A,0x23,0x30,0x30 +,0x30,0x30,0x38,0x30,0x22,0x3E,0x3C,0x62,0x3E,0x47,0x52,0x2D,0x50,0x45,0x41,0x43 +,0x48,0x20,0x41,0x75,0x64,0x69,0x6F,0x2F,0x43,0x61,0x6D,0x65,0x72,0x61,0x20,0x53 +,0x68,0x69,0x65,0x6C,0x64,0x20,0x53,0x61,0x6D,0x70,0x6C,0x65,0x3C,0x2F,0x62,0x3E +,0x3C,0x2F,0x73,0x70,0x61,0x6E,0x3E,0x3C,0x2F,0x66,0x6F,0x6E,0x74,0x3E,0x3C,0x62 +,0x72,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x54,0x68 +,0x69,0x73,0x20,0x73,0x61,0x6D,0x70,0x6C,0x65,0x20,0x70,0x72,0x6F,0x67,0x72,0x61 +,0x6D,0x20,0x75,0x73,0x69,0x6E,0x67,0x20,0x47,0x52,0x2D,0x50,0x45,0x41,0x43,0x48 +,0x20,0x61,0x6E,0x64,0x20,0x41,0x75,0x64,0x69,0x6F,0x2F,0x43,0x61,0x6D,0x65,0x72 +,0x61,0x20,0x53,0x68,0x69,0x65,0x6C,0x64,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x57 +,0x68,0x65,0x6E,0x20,0x79,0x6F,0x75,0x20,0x70,0x72,0x65,0x73,0x73,0x20,0x74,0x68 +,0x65,0x20,0x4D,0x65,0x6E,0x75,0x20,0x6F,0x6E,0x20,0x74,0x68,0x65,0x20,0x6C,0x65 +,0x66,0x74,0x2C,0x20,0x69,0x74,0x20,0x77,0x69,0x6C,0x6C,0x20,0x62,0x65,0x20,0x64 +,0x69,0x73,0x70,0x6C,0x61,0x79,0x65,0x64,0x20,0x69,0x6E,0x20,0x74,0x68,0x69,0x73 +,0x20,0x77,0x69,0x6E,0x64,0x6F,0x77,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62 +,0x72,0x3E,0x0D,0x0A,0x49,0x74,0x20,0x73,0x68,0x6F,0x77,0x73,0x20,0x74,0x68,0x65 +,0x20,0x6F,0x76,0x65,0x72,0x76,0x69,0x65,0x77,0x20,0x6F,0x66,0x20,0x65,0x61,0x63 +,0x68,0x20,0x6C,0x69,0x6E,0x6B,0x20,0x62,0x65,0x6C,0x6F,0x77,0x2E,0x3C,0x62,0x72 +,0x3E,0x0D,0x0A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x73,0x74,0x79,0x6C,0x65,0x20 +,0x74,0x79,0x70,0x65,0x3D,0x22,0x74,0x65,0x78,0x74,0x2F,0x63,0x73,0x73,0x22,0x3E +,0x0D,0x0A,0x2E,0x74,0x61,0x62,0x6C,0x65,0x20,0x74,0x68,0x20,0x7B,0x0D,0x0A,0x20 +,0x20,0x62,0x61,0x63,0x6B,0x67,0x72,0x6F,0x75,0x6E,0x64,0x2D,0x63,0x6F,0x6C,0x6F +,0x72,0x3A,0x20,0x23,0x65,0x36,0x66,0x66,0x65,0x39,0x3B,0x0D,0x0A,0x7D,0x0D,0x0A +,0x3C,0x2F,0x73,0x74,0x79,0x6C,0x65,0x3E,0x0D,0x0A,0x3C,0x74,0x61,0x62,0x6C,0x65 +,0x20,0x63,0x6C,0x61,0x73,0x73,0x3D,0x22,0x74,0x61,0x62,0x6C,0x65,0x22,0x20,0x62 +,0x6F,0x72,0x64,0x65,0x72,0x3D,0x31,0x3E,0x0D,0x0A,0x3C,0x74,0x72,0x3E,0x0D,0x0A +,0x3C,0x74,0x68,0x3E,0x4C,0x69,0x6E,0x6B,0x73,0x3C,0x2F,0x74,0x68,0x3E,0x3C,0x74 +,0x68,0x3E,0x4F,0x76,0x65,0x72,0x76,0x69,0x65,0x77,0x3C,0x2F,0x74,0x68,0x3E,0x0D +,0x0A,0x3C,0x2F,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74 +,0x64,0x3E,0x54,0x6F,0x70,0x20,0x50,0x61,0x67,0x65,0x3C,0x2F,0x74,0x64,0x3E,0x3C +,0x74,0x64,0x3E,0x49,0x74,0x20,0x77,0x69,0x6C,0x6C,0x20,0x72,0x65,0x74,0x75,0x72 +,0x6E,0x20,0x74,0x6F,0x20,0x74,0x68,0x65,0x20,0x74,0x6F,0x70,0x20,0x70,0x61,0x67 +,0x65,0x2E,0x3C,0x62,0x72,0x3E,0x3C,0x2F,0x74,0x64,0x3E,0x0D,0x0A,0x3C,0x2F,0x74 +,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x64,0x3E,0x57,0x65 +,0x62,0x20,0x43,0x61,0x6D,0x65,0x72,0x61,0x3C,0x2F,0x74,0x64,0x3E,0x3C,0x74,0x64 +,0x3E,0x49,0x74,0x20,0x69,0x6E,0x64,0x69,0x63,0x61,0x74,0x65,0x73,0x20,0x74,0x68 +,0x65,0x20,0x69,0x6D,0x61,0x67,0x65,0x20,0x61,0x63,0x71,0x75,0x69,0x72,0x65,0x64 +,0x20,0x62,0x79,0x20,0x74,0x68,0x65,0x20,0x63,0x61,0x6D,0x65,0x72,0x61,0x20,0x6F +,0x6E,0x20,0x74,0x68,0x65,0x20,0x77,0x65,0x62,0x20,0x62,0x72,0x6F,0x77,0x73,0x65 +,0x72,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x49,0x74,0x20,0x63,0x61,0x6E,0x20,0x62 +,0x65,0x20,0x63,0x68,0x61,0x6E,0x67,0x65,0x64,0x20,0x61,0x74,0x20,0x61,0x20,0x73 +,0x6C,0x69,0x64,0x65,0x72,0x20,0x62,0x61,0x72,0x20,0x69,0x6E,0x20,0x22,0x57,0x61 +,0x69,0x74,0x20,0x74,0x69,0x6D,0x65,0x22,0x20,0x61,0x74,0x20,0x74,0x68,0x65,0x20 +,0x74,0x69,0x6D,0x69,0x6E,0x67,0x20,0x6F,0x66,0x20,0x61,0x20,0x72,0x65,0x6E,0x65 +,0x77,0x61,0x6C,0x20,0x6F,0x66,0x20,0x61,0x20,0x63,0x61,0x6D,0x65,0x72,0x61,0x20 +,0x70,0x69,0x63,0x74,0x75,0x72,0x65,0x2E,0x20,0x28,0x44,0x65,0x66,0x61,0x75,0x6C +,0x74,0x73,0x20,0x61,0x72,0x65,0x20,0x35,0x30,0x30,0x6D,0x73,0x2E,0x29,0x3C,0x2F +,0x74,0x64,0x3E,0x0D,0x0A,0x3C,0x2F,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x72,0x3E +,0x0D,0x0A,0x3C,0x74,0x64,0x3E,0x53,0x65,0x74,0x74,0x69,0x6E,0x67,0x20,0x62,0x79 +,0x20,0x49,0x32,0x43,0x3C,0x2F,0x74,0x64,0x3E,0x3C,0x74,0x64,0x3E,0x49,0x74,0x20 +,0x69,0x6E,0x64,0x69,0x63,0x61,0x74,0x65,0x73,0x20,0x49,0x32,0x43,0x20,0x73,0x65 +,0x74,0x74,0x69,0x6E,0x67,0x20,0x6F,0x6E,0x20,0x74,0x68,0x65,0x20,0x77,0x65,0x62 +,0x20,0x62,0x72,0x6F,0x77,0x73,0x65,0x72,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x49 +,0x6E,0x20,0x49,0x32,0x43,0x20,0x63,0x6F,0x6D,0x6D,0x75,0x6E,0x69,0x63,0x61,0x74 +,0x69,0x6F,0x6E,0x2C,0x20,0x47,0x52,0x2D,0x50,0x45,0x41,0x43,0x48,0x20,0x65,0x78 +,0x65,0x63,0x75,0x74,0x65,0x73,0x20,0x74,0x68,0x65,0x20,0x73,0x65,0x74,0x74,0x69 +,0x6E,0x67,0x73,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x64,0x65,0x76,0x69,0x63 +,0x65,0x73,0x20,0x63,0x6F,0x6E,0x6E,0x65,0x63,0x74,0x65,0x64,0x20,0x74,0x6F,0x20 +,0x49,0x32,0x43,0x5F,0x53,0x43,0x41,0x20,0x74,0x65,0x72,0x6D,0x69,0x6E,0x61,0x6C +,0x20,0x61,0x6E,0x64,0x20,0x49,0x32,0x43,0x5F,0x53,0x43,0x4C,0x20,0x74,0x65,0x72 +,0x6D,0x69,0x6E,0x61,0x6C,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x4F,0x6E,0x20,0x74 +,0x68,0x65,0x20,0x62,0x61,0x73,0x69,0x73,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20 +,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x2C,0x20,0x47,0x52,0x2D,0x50,0x45,0x41,0x43 +,0x48,0x20,0x61,0x63,0x63,0x65,0x73,0x73,0x65,0x73,0x20,0x74,0x6F,0x20,0x72,0x65 +,0x67,0x69,0x73,0x74,0x65,0x72,0x73,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x64 +,0x65,0x76,0x69,0x63,0x65,0x73,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x59,0x6F,0x75 +,0x20,0x63,0x61,0x6E,0x20,0x73,0x65,0x6E,0x64,0x20,0x74,0x68,0x65,0x20,0x63,0x6F +,0x6D,0x6D,0x61,0x6E,0x64,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x73,0x70,0x65 +,0x63,0x69,0x66,0x69,0x65,0x64,0x20,0x66,0x6F,0x72,0x6D,0x61,0x74,0x20,0x69,0x6E +,0x20,0x6F,0x6E,0x65,0x20,0x6F,0x66,0x20,0x74,0x77,0x6F,0x20,0x70,0x61,0x74,0x74 +,0x65,0x72,0x6E,0x73,0x20,0x62,0x65,0x6C,0x6F,0x77,0x2E,0x3C,0x62,0x72,0x3E,0x0D +,0x0A,0x26,0x6E,0x62,0x73,0x70,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B,0x22,0x44,0x69 +,0x72,0x65,0x63,0x74,0x6C,0x20,0x69,0x6E,0x70,0x75,0x74,0x22,0x20,0x6F,0x72,0x20 +,0x22,0x46,0x69,0x6C,0x65,0x20,0x72,0x65,0x66,0x65,0x72,0x65,0x6E,0x63,0x65,0x22 +,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x50,0x6C,0x65,0x61,0x73,0x65,0x20,0x63,0x72 +,0x65,0x61,0x74,0x65,0x20,0x61,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E,0x64,0x20,0x61 +,0x6C,0x6F,0x6E,0x67,0x20,0x74,0x68,0x65,0x20,0x66,0x6F,0x72,0x6D,0x61,0x74,0x20 +,0x61,0x66,0x74,0x65,0x72,0x20,0x79,0x6F,0x75,0x20,0x63,0x68,0x65,0x63,0x6B,0x20 +,0x74,0x68,0x65,0x20,0x73,0x70,0x65,0x63,0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6F +,0x6E,0x73,0x20,0x6F,0x66,0x20,0x65,0x61,0x63,0x68,0x20,0x64,0x65,0x76,0x69,0x63 +,0x65,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x54,0x68,0x65,0x20,0x66,0x6F,0x72,0x6D +,0x61,0x74,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x63,0x6F,0x6D,0x6D,0x61,0x6E +,0x64,0x20,0x69,0x73,0x3A,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x26,0x6E,0x62,0x73,0x70 +,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B,0x4D,0x65,0x74,0x68,0x6F,0x64,0x3A,0x49,0x32 +,0x43,0x20,0x61,0x64,0x64,0x72,0x2C,0x64,0x61,0x74,0x61,0x20,0x6C,0x65,0x6E,0x67 +,0x74,0x68,0x2C,0x64,0x61,0x74,0x61,0x31,0x2C,0x64,0x61,0x74,0x61,0x32,0x2C,0x64 +,0x61,0x74,0x61,0x33,0x2C,0x2E,0x2E,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x3C,0x62 +,0x72,0x3E,0x0D,0x0A,0x4D,0x65,0x74,0x68,0x6F,0x64,0x20,0x69,0x73,0x20,0x62,0x65 +,0x6C,0x6F,0x77,0x2E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x26,0x6E,0x62,0x73,0x70,0x3B +,0x26,0x6E,0x62,0x73,0x70,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B,0x22,0x57,0x72,0x22 +,0x69,0x73,0x20,0x57,0x72,0x69,0x74,0x65,0x20,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F +,0x6E,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x26,0x6E,0x62,0x73,0x70,0x3B,0x26,0x6E,0x62 +,0x73,0x70,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B,0x22,0x52,0x64,0x22,0x20,0x69,0x73 +,0x20,0x52,0x65,0x61,0x64,0x20,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x3C,0x62 +,0x72,0x3E,0x0D,0x0A,0x26,0x6E,0x62,0x73,0x70,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B +,0x26,0x6E,0x62,0x73,0x70,0x3B,0x22,0x57,0x72,0x4E,0x6F,0x70,0x22,0x20,0x69,0x73 +,0x20,0x57,0x72,0x69,0x74,0x65,0x20,0x66,0x75,0x6E,0x63,0x74,0x69,0x6F,0x6E,0x28 +,0x4E,0x6F,0x20,0x53,0x54,0x4F,0x50,0x20,0x63,0x6F,0x6E,0x64,0x69,0x74,0x69,0x6F +,0x6E,0x29,0x3C,0x62,0x72,0x3E,0x0D,0x0A,0x26,0x6E,0x62,0x73,0x70,0x3B,0x26,0x6E +,0x62,0x73,0x70,0x3B,0x26,0x6E,0x62,0x73,0x70,0x3B,0x22,0x52,0x64,0x4E,0x6F,0x70 +,0x22,0x20,0x69,0x73,0x20,0x52,0x65,0x61,0x64,0x20,0x66,0x75,0x6E,0x63,0x74,0x69 +,0x6F,0x6E,0x28,0x4E,0x6F,0x20,0x53,0x54,0x4F,0x50,0x20,0x63,0x6F,0x6E,0x64,0x69 +,0x74,0x69,0x6F,0x6E,0x29,0x3C,0x62,0x72,0x3E,0x3C,0x2F,0x74,0x64,0x3E,0x0D,0x0A +,0x3C,0x2F,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x74,0x64 +,0x3E,0x4C,0x45,0x44,0x20,0x4F,0x6E,0x2F,0x4F,0x66,0x66,0x3C,0x2F,0x74,0x64,0x3E +,0x3C,0x74,0x64,0x3E,0x49,0x74,0x20,0x69,0x6E,0x64,0x69,0x63,0x61,0x74,0x65,0x73 +,0x20,0x4C,0x45,0x44,0x31,0x2C,0x20,0x4C,0x45,0x44,0x32,0x20,0x61,0x6E,0x64,0x20 +,0x4C,0x45,0x44,0x33,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x74,0x6F,0x67,0x67 +,0x6C,0x65,0x20,0x73,0x77,0x69,0x74,0x63,0x68,0x20,0x6F,0x6E,0x20,0x74,0x68,0x65 +,0x20,0x77,0x65,0x62,0x20,0x62,0x72,0x6F,0x77,0x73,0x65,0x72,0x2E,0x3C,0x62,0x72 +,0x3E,0x0D,0x0A,0x45,0x61,0x63,0x68,0x20,0x73,0x77,0x69,0x74,0x63,0x68,0x20,0x69 +,0x6E,0x64,0x69,0x63,0x61,0x74,0x65,0x73,0x20,0x74,0x68,0x65,0x20,0x63,0x75,0x72 +,0x72,0x65,0x6E,0x74,0x20,0x4C,0x45,0x44,0x20,0x73,0x74,0x61,0x74,0x65,0x2E,0x3C +,0x62,0x72,0x3E,0x0D,0x0A,0x4C,0x45,0x44,0x20,0x4F,0x4E,0x20,0x61,0x6E,0x64,0x20 +,0x4F,0x46,0x46,0x20,0x73,0x77,0x69,0x74,0x63,0x68,0x65,0x73,0x20,0x77,0x68,0x65 +,0x6E,0x20,0x79,0x6F,0x75,0x20,0x70,0x72,0x65,0x73,0x73,0x20,0x74,0x68,0x65,0x20 +,0x73,0x77,0x69,0x74,0x63,0x68,0x2E,0x20,0x57,0x68,0x65,0x6E,0x20,0x74,0x68,0x65 +,0x20,0x4C,0x45,0x44,0x20,0x69,0x73,0x20,0x4F,0x4E,0x2C,0x20,0x74,0x68,0x65,0x20 +,0x63,0x6F,0x6C,0x6F,0x72,0x20,0x6F,0x66,0x20,0x74,0x68,0x65,0x20,0x73,0x77,0x69 +,0x74,0x63,0x68,0x20,0x77,0x69,0x6C,0x6C,0x20,0x63,0x68,0x61,0x6E,0x67,0x65,0x20 +,0x74,0x68,0x65,0x20,0x4C,0x45,0x44,0x20,0x63,0x6F,0x6C,0x6F,0x72,0x2E,0x3C,0x2F +,0x74,0x64,0x3E,0x0D,0x0A,0x3C,0x2F,0x74,0x72,0x3E,0x0D,0x0A,0x3C,0x2F,0x74,0x61 +,0x62,0x6C,0x65,0x3E,0x0D,0x0A,0x0D,0x0A,0x0D,0x0A,0x3C,0x2F,0x62,0x6F,0x64,0x79 +,0x3E,0x0D,0x0A,0x3C,0x2F,0x68,0x74,0x6D,0x6C,0x3E,0x0D,0x0A,0x0D,0x0A +};
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/i2c_setting.cpp Fri Oct 23 11:03:49 2015 +0000 @@ -0,0 +1,222 @@ +/* +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +#include "mbed.h" +#include "i2c_setting.h" + +I2C i2c(I2C_SDA, I2C_SCL); +Serial terminal(USBTX, USBRX); + +static char recv_term_buffer[RECV_BUF_SIZE]; +static char reg_req_buffer[REG_REQ_BUF_SIZE]; +static char reg_arg_buf[ARG_MAX_NUM]; +static char wr_data[DATA_MAX_SIZE]; +static char rd_data[DATA_MAX_SIZE]; +static char recv_data; +static int32_t term_buf_offset = 0; + +static char hex_to_char_tbl[] = { + '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', + 'A', 'B', 'C', 'D', 'E', 'F' +}; + +static int str_to_hex(char * psrcbuf, char * pdestbuf, int cnt) { + int retval = false; + int32_t tmp_hex; + + if ((psrcbuf != NULL) && (pdestbuf != NULL)) { + retval = true; + if ((((int32_t)*psrcbuf) >= '0') && (((int32_t)*psrcbuf) <= '9')) { + tmp_hex = NUM_STR_TO_HEX; + } else if ((((int32_t)*psrcbuf) >= 'A') && (((int32_t)*psrcbuf) <= 'F')) { + tmp_hex = BIG_STR_TO_HEX; + } else if ((((int32_t)*psrcbuf) >= 'a') && (((int32_t)*psrcbuf) <= 'f')) { + tmp_hex = SMA_STR_TO_HEX; + } else { + retval = false; + } + if (retval == true) { + *pdestbuf += ((int32_t)*psrcbuf) - tmp_hex; + if (cnt == 0) { + *pdestbuf *= MASK_HEX10; + } + } + } + + return retval; +} + +static void char_to_16char(char * pdestbuf, char * psrcbuf, int length) { + if ((pdestbuf != NULL) && (psrcbuf != NULL)) { + while(length != 0) { + *pdestbuf = hex_to_char_tbl[((int32_t)*psrcbuf) / MASK_HEX10]; + pdestbuf++; + *pdestbuf = hex_to_char_tbl[((int32_t)*psrcbuf) % MASK_HEX10]; + pdestbuf++; + + psrcbuf++; + length--; + } + *pdestbuf = CODE_NULL; + } +} +static int receive_term(void) { + int ret = false; + + recv_data = terminal.getc(); + /* echo back */ + printf("%c", recv_data); + switch ((int32_t)recv_data) { + case 0x0A : + recv_term_buffer[term_buf_offset] = CODE_NULL; + term_buf_offset = 0; + ret = true; + break; + case 0x0D : + /* Do Nothing */ + break; + default : + /* check data_buffer size */ + if (term_buf_offset < RECV_BUF_SIZE) { + recv_term_buffer[term_buf_offset] = recv_data; + term_buf_offset++; + } + break; + } + + return ret; + +} + +static int analysis_cmd(char * buf) { + int arg_cnt; + int byte_cnt; + int retval; + char * psrcbuf; + char * pdestbuf; + + arg_cnt = 0; + byte_cnt = 0; + /* get reg req */ + memset(®_req_buffer[0], 0, REG_REQ_BUF_SIZE); + psrcbuf = buf; + pdestbuf = ®_req_buffer[0]; + while (((int32_t)*psrcbuf) != ':') { + if (byte_cnt >= REG_REQ_BUF_SIZE) { + arg_cnt = DATA_ANALY_ERROR; + goto err_out; + } else { + *pdestbuf = *psrcbuf; + byte_cnt++; + pdestbuf++; + psrcbuf++; + } + } + *pdestbuf = *psrcbuf; + if ((strncmp(®_req_buffer[0], "Wr:", REG_REQ_BUF_SIZE) == 0) || (strncmp(®_req_buffer[0], "Rd:", REG_REQ_BUF_SIZE) == 0) || + (strncmp(®_req_buffer[0], "WrNoP:", REG_REQ_BUF_SIZE) == 0) || (strncmp(®_req_buffer[0], "RdNoP:", REG_REQ_BUF_SIZE) == 0)) { + /* get argument(I2C addr, len, data1, data2, data3, ...) */ + byte_cnt = 0; + memset(®_arg_buf[0], 0, sizeof(reg_arg_buf)); + psrcbuf++; + while (((int32_t)*psrcbuf) != CODE_NULL) { + retval = str_to_hex(psrcbuf, ®_arg_buf[arg_cnt], byte_cnt); + if (retval == true) { + byte_cnt++; + psrcbuf++; + if (byte_cnt >= ARG_MAX_SIZE) { + if ((arg_cnt + 1) >= ARG_MAX_NUM) { + arg_cnt = DATA_ANALY_ERROR; + goto err_out; + } else { + arg_cnt++; + byte_cnt = 0; + } + } + } else { + psrcbuf++; + } + } + } else { + arg_cnt = DATA_ANALY_ERROR; + goto err_out; + } + +err_out: + + return arg_cnt; +} + +static void execute_cmd(void) { + char convert_data[(DATA_MAX_SIZE * 2) + NULL_SIZE]; + + /* check length */ + if (reg_arg_buf[1] >= DATA_MAX_SIZE) { + reg_arg_buf[1] = DATA_MAX_SIZE; + } + /* check request */ + if (strncmp(®_req_buffer[0], "Wr:", REG_REQ_BUF_SIZE) == 0) { + /* write */ + memcpy(&wr_data[0], ®_arg_buf[2], reg_arg_buf[1]); + (void)i2c.write(reg_arg_buf[0], wr_data, reg_arg_buf[1], 0); // write(I2C Addr, write data, len, restart flg(=0)) + } else if (strncmp(®_req_buffer[0], "Rd:", REG_REQ_BUF_SIZE) == 0) { + /* read */ + memset(&rd_data[0], 0, reg_arg_buf[1]); + (void)i2c.read(reg_arg_buf[0], rd_data, reg_arg_buf[1], 0); // read(I2C Addr, read data, len, restart flg(=0)) + + char_to_16char(&convert_data[0], &rd_data[0], reg_arg_buf[1]); + DEBUGPRINT(" Read Data is %s\r\n", &convert_data[0]); + } else if (strncmp(®_req_buffer[0], "WrNoP:", REG_REQ_BUF_SIZE) == 0) { + /* write(non stop condition) */ + memcpy(&wr_data[0], ®_arg_buf[2], reg_arg_buf[1]); + (void)i2c.write(reg_arg_buf[0], wr_data, reg_arg_buf[1], 1); // write(I2C Addr, write data, len, restart flg(=1)) + } else if (strncmp(®_req_buffer[0], "RdNoP:", REG_REQ_BUF_SIZE) == 0) { + /* read(non stop condition) */ + memset(&rd_data[0], 0, reg_arg_buf[1]); + (void)i2c.read(reg_arg_buf[0], rd_data, reg_arg_buf[1], 1); // read(I2C Addr, read data, len, restart flg(=1)) + + char_to_16char(&convert_data[0], &rd_data[0], reg_arg_buf[1]); + DEBUGPRINT(" Read Data is %s\r\n", &convert_data[0]); + } +} + +void analy_and_exe(char * buf) { + int reg_arg_cnt; + + /* analysis command */ + reg_arg_cnt = analysis_cmd(buf); + if (reg_arg_cnt != DATA_ANALY_ERROR) { + /* execute command */ + execute_cmd(); + } +} + +void SetI2CfromTerm(void const *argument) { + int ret; + + while (1) { + ret = receive_term(); + if (ret == true) { + /* command analysis and execute */ + analy_and_exe(&recv_term_buffer[0]); + } + } +} +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/i2c_setting.h Fri Oct 23 11:03:49 2015 +0000 @@ -0,0 +1,49 @@ +/* +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +#ifndef I2C_SETTING_H +#define I2C_SETTING_H + +//#define DEBUGPRINT_CFG + +#ifdef DEBUGPRINT_CFG +#define DEBUGPRINT printf +#else +#define DEBUGPRINT +#endif + + +#define RECV_BUF_SIZE (1024) +#define DATA_ANALY_ERROR (-1) +#define REG_REQ_BUF_SIZE (7) +#define DATA_MAX_SIZE (32) +#define ARG_MAX_NUM (DATA_MAX_SIZE + 2) // I2C addr, len, data1, data2, data3, ... +#define ARG_MAX_SIZE (2) // upper bit + lower bit +#define NULL_SIZE (1) +#define CODE_NULL (0x00) +#define NUM_STR_TO_HEX (0x30) +#define BIG_STR_TO_HEX (0x37) +#define SMA_STR_TO_HEX (0x57) +#define MASK_HEX10 (0x10) + +extern void analy_and_exe(char * buf); +extern void SetI2CfromTerm(void const *argument); + +#endif
--- a/main.cpp Tue Oct 20 06:28:50 2015 +0000 +++ b/main.cpp Fri Oct 23 11:03:49 2015 +0000 @@ -1,5 +1,5 @@ #if defined(__CC_ARM) -#pragma Ospace +#pragma O0 #endif #include "mbed.h" #include "DisplayBace.h" @@ -10,6 +10,7 @@ #include "mbed_rpc.h" #include "RomRamFileSystem.h" #include "file_table.h" //Binary data of web pages +#include "i2c_setting.h" RomRamFileSystem romramfs("romram"); EthernetInterface eth; @@ -62,6 +63,8 @@ static int jcu_buf_index_write_done = 0; static int jcu_buf_index_read = 0; static int jcu_encoding = 0; +static char recv_web_buffer[RECV_BUF_SIZE]; +static int32_t web_buf_offset; static void JcuEncodeCallBackFunc(JPEG_Converter::jpeg_conv_error_t err_code) { jcu_buf_index_write_done = jcu_buf_index_write; @@ -290,11 +293,59 @@ fp = fopen("/romram/led.htm", "w"); fwrite(led_htm_tbl, sizeof(char), sizeof(led_htm_tbl), fp); fclose(fp); + + //i2c_set.htm + fp = fopen("/romram/i2c_set.htm", "w"); + fwrite(i2c_set_htm_tbl, sizeof(char), sizeof(i2c_set_htm_tbl), fp); + fclose(fp); + + //web_top.htm + fp = fopen("/romram/web_top.htm", "w"); + fwrite(web_top_htm_tbl, sizeof(char), sizeof(web_top_htm_tbl), fp); + fclose(fp); + + //menu.htm + fp = fopen("/romram/menu.htm", "w"); + fwrite(menu_htm_tbl, sizeof(char), sizeof(menu_htm_tbl), fp); + fclose(fp); + + //window.htm + fp = fopen("/romram/window.htm", "w"); + fwrite(window_htm_tbl, sizeof(char), sizeof(window_htm_tbl), fp); + fclose(fp); +} + +static void SetI2CfromWeb(Arguments* arg, Reply* r) { + size_t len_arg[2]; + + if (*(arg->argv[0]) != 0) { + if (*(arg->argv[1]) != 0) { + DEBUGPRINT("%s,%s\n", arg->argv[0], arg->argv[1]); + } else { + DEBUGPRINT("%s\n", arg->argv[0]); + } + + len_arg[0] = strlen(arg->argv[0]); + len_arg[1] = strlen(arg->argv[1]); + + web_buf_offset = 0; + memcpy(&recv_web_buffer[0], arg->argv[0], len_arg[0]); + web_buf_offset = len_arg[0]; + memset(&recv_web_buffer[web_buf_offset], ',', 1); + web_buf_offset++; + memcpy(&recv_web_buffer[web_buf_offset], arg->argv[1], len_arg[1]); + web_buf_offset += len_arg[1]; + /* command analysis and execute */ + analy_and_exe(&recv_web_buffer[0]); + } } int main(void) { printf("********* PROGRAM START ***********\r\n"); + /* Please enable this line when performing the setting from the Terminal side. */ +// Thread thread(SetI2CfromTerm, NULL, osPriorityBelowNormal, DEFAULT_STACK_SIZE); + mount_romramfs(); //RomRamFileSystem Mount camera_start(); //Camera Start @@ -303,10 +354,11 @@ RPC::construct<RpcDigitalOut, PinName, const char*>(LED2, "led2"); RPC::construct<RpcDigitalOut, PinName, const char*>(LED3, "led3"); RPCFunction rpcFunc(TerminalWrite, "TerminalWrite"); + RPCFunction rpcSetI2C(SetI2CfromWeb, "SetI2CfromWeb"); printf("EthernetInterface Setting up...\r\n"); - if (eth.init() != 0) { //for DHCP Server -// if (eth.init("192.168.0.2","255.255.255.0","192.168.0.3") != 0) { //for Static IP Address (IPAddress, NetMasks, Gateway) +// if (eth.init() != 0) { //for DHCP Server + if (eth.init("192.168.0.2","255.255.255.0","192.168.0.3") != 0) { //for Static IP Address (IPAddress, NetMasks, Gateway) printf("EthernetInterface Initialize Error \r\n"); return -1; }