bwltc-commands.h 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. /*auto_address*/
  2. static const unsigned char *cmd_auto_address[]={
  3. (unsigned char []) {0x09,0x3C, 0xFF, 0xF8, 0x78, 0x10, 0x00, 0x00, 0xC0, 0xC3},
  4. NULL
  5. };
  6. static const unsigned char *cmd_set_384M[]={
  7. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  8. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0xF4, 0x00, 0xFF},
  9. NULL
  10. };
  11. static const unsigned char *cmd_set_450M[]={
  12. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  13. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0xB4, 0x00, 0xDE},
  14. NULL
  15. };
  16. static const unsigned char *cmd_set_480M[]={
  17. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  18. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0xB4, 0x00, 0xEF},
  19. NULL
  20. };
  21. static const unsigned char *cmd_set_540M[]={
  22. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  23. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x94, 0x00, 0xE1},
  24. NULL
  25. };
  26. static const unsigned char *cmd_set_576M[]={
  27. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  28. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xBF},
  29. NULL
  30. };
  31. static const unsigned char *cmd_set_600M[]={
  32. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF,0xB7, 0x00, 0x00},
  33. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x94, 0x00, 0xFA},
  34. NULL
  35. };
  36. static const unsigned char *cmd_set_612M[]={
  37. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb5, 0x00, 0x00},
  38. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xcb},
  39. NULL
  40. };
  41. static const unsigned char *cmd_set_625M[]={
  42. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  43. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xcf},
  44. NULL
  45. };
  46. static const unsigned char *cmd_set_636M[]={
  47. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb5, 0x00, 0x00},
  48. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xd3},
  49. NULL
  50. };
  51. static const unsigned char *cmd_set_648M[]={
  52. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  53. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xd7},
  54. NULL
  55. };
  56. static const unsigned char *cmd_set_660M[]={
  57. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  58. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xdb},
  59. NULL
  60. };
  61. static const unsigned char *cmd_set_672M[]={
  62. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  63. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xDF},
  64. NULL
  65. };
  66. static const unsigned char *cmd_set_684M[]={
  67. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  68. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xe3},
  69. NULL
  70. };
  71. static const unsigned char *cmd_set_700M[]={
  72. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB7, 0x00, 0x00},
  73. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xE7},
  74. NULL
  75. };
  76. static const unsigned char *cmd_set_720M[]={
  77. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  78. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x54, 0x00, 0xB3},
  79. NULL
  80. };
  81. static const unsigned char *cmd_set_744M[]={
  82. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  83. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xf7},
  84. NULL
  85. };
  86. static const unsigned char *cmd_set_756M[]={
  87. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  88. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xfb},
  89. NULL
  90. };
  91. static const unsigned char *cmd_set_768M[]={
  92. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xdf, 0xb7, 0x00, 0x00},
  93. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x74, 0x00, 0xff},
  94. NULL
  95. };
  96. static const unsigned char *cmd_set_800M[]={
  97. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  98. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x54, 0x00, 0xC7},
  99. NULL
  100. };
  101. static const unsigned char *cmd_set_912M[]={
  102. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  103. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x97},
  104. NULL
  105. };
  106. static const unsigned char *cmd_set_1020M[]={
  107. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  108. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0xA9},
  109. NULL
  110. };
  111. #define ARRAY_LEN 21
  112. struct frequency
  113. {
  114. int freq;
  115. unsigned char *cmd;
  116. }fre_array[ARRAY_LEN]={{384, cmd_set_384M},
  117. {450, cmd_set_450M},
  118. {480, cmd_set_480M},
  119. {540, cmd_set_540M},
  120. {576, cmd_set_576M},
  121. {600, cmd_set_600M},
  122. {612, cmd_set_612M},
  123. {625, cmd_set_625M},
  124. {636, cmd_set_636M},
  125. {648, cmd_set_648M},
  126. {660, cmd_set_660M},
  127. {672, cmd_set_672M},
  128. {684, cmd_set_684M},
  129. {700, cmd_set_700M},
  130. {720, cmd_set_720M},
  131. {744, cmd_set_744M},
  132. {756, cmd_set_756M},
  133. {768, cmd_set_768M},
  134. {800, cmd_set_800M},
  135. {912, cmd_set_912M},
  136. {1020,cmd_set_1020M}};
  137. /* reset gcp */
  138. static const unsigned char *gcp_cmd_reset[] = {
  139. //(unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  140. (unsigned char[]) {0x09, 0x3c,0xff, 0xf8, 0x1e,0x02,0x00,0x00,0x00,0xc3}, //reset core
  141. (unsigned char[]) {0x09, 0x3c,0xff, 0xf8, 0x1e,0x03,0x00,0x00,0x00,0xc3}, //reset core
  142. NULL
  143. };
  144. /* commands for single LTC mode */
  145. static const unsigned char *single_cmd_init[] = {
  146. /* set # of chips to 5 */
  147. (unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  148. /* disable btc cores */
  149. (unsigned char[]) {0x18, 0x3c, 0xff, 0xef, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
  150. /* enable ltc */
  151. (unsigned char[]) {0x08, 0x3c, 0xff, 0xef, 0x30, 0x20, 0x00, 0x00, 0x00},
  152. NULL
  153. };
  154. static const unsigned char *single_cmd_reset[] = {
  155. /* reset ltc calculation unit */
  156. (unsigned char[]) {0x08, 0x3c, 0xff, 0x1f, 0x28, 0x16, 0x00, 0x00, 0x00},
  157. /* clear reset */
  158. (unsigned char[]) {0x08, 0x3c, 0xff, 0x1f, 0x28, 0x17, 0x00, 0x00, 0x00},
  159. NULL
  160. };
  161. static const unsigned char *firmware_request_cmd[] = {
  162. (unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0x90, 0x90, 0x90, 0x90, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  163. NULL
  164. };