bwltc-commands.h 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  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, 0x34, 0x00, 0x32},
  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_796M[]={
  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_832M[]={
  102. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xDF, 0xB5, 0x00, 0x00},
  103. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x54, 0x00, 0xD0},
  104. NULL
  105. };
  106. static const unsigned char *cmd_set_852M[]={
  107. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  108. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x8E},
  109. NULL
  110. };
  111. static const unsigned char *cmd_set_876M[]={
  112. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  113. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x92},
  114. NULL
  115. };
  116. static const unsigned char *cmd_set_900M[]={
  117. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  118. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x96},
  119. NULL
  120. };
  121. static const unsigned char *cmd_set_924M[]={
  122. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  123. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x9A},
  124. NULL
  125. };
  126. static const unsigned char *cmd_set_954M[]={
  127. (unsigned char []) {0x08, 0x3F, 0xFF, 0xF8, 0x30, 0xCF, 0xB3, 0x00, 0x00},
  128. (unsigned char []) {0x08, 0x3C, 0xFF, 0xF8, 0x00, 0x05, 0x34, 0x00, 0x9F},
  129. NULL
  130. };
  131. #define ARRAY_LEN 26
  132. struct frequency
  133. {
  134. int freq;
  135. unsigned char *cmd;
  136. }fre_array[ARRAY_LEN]={{384, cmd_set_384M},
  137. {450, cmd_set_450M},
  138. {480, cmd_set_480M},
  139. {540, cmd_set_540M},
  140. {576, cmd_set_576M},
  141. {600, cmd_set_600M},
  142. {612, cmd_set_612M},
  143. {625, cmd_set_625M},
  144. {636, cmd_set_636M},
  145. {648, cmd_set_648M},
  146. {660, cmd_set_660M},
  147. {672, cmd_set_672M},
  148. {684, cmd_set_684M},
  149. {700, cmd_set_700M},
  150. {720, cmd_set_720M},
  151. {744, cmd_set_744M},
  152. {756, cmd_set_756M},
  153. {768, cmd_set_768M},
  154. {796, cmd_set_796M},
  155. {832, cmd_set_832M},
  156. {852, cmd_set_852M},
  157. {876, cmd_set_876M},
  158. {900, cmd_set_900M},
  159. {924, cmd_set_924M},
  160. {954, cmd_set_954M}};
  161. /* reset gcp */
  162. static const unsigned char *gcp_cmd_reset[] = {
  163. //(unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  164. (unsigned char[]) {0x09, 0x3c,0xff, 0xf8, 0x1e,0x02,0x00,0x00,0x00,0xc3}, //reset core
  165. (unsigned char[]) {0x09, 0x3c,0xff, 0xf8, 0x1e,0x03,0x00,0x00,0x00,0xc3}, //reset core
  166. NULL
  167. };
  168. /* commands for single LTC mode */
  169. static const unsigned char *single_cmd_init[] = {
  170. /* set # of chips to 5 */
  171. (unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0x05, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  172. /* disable btc cores */
  173. (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},
  174. /* enable ltc */
  175. (unsigned char[]) {0x08, 0x3c, 0xff, 0xef, 0x30, 0x20, 0x00, 0x00, 0x00},
  176. NULL
  177. };
  178. static const unsigned char *single_cmd_reset[] = {
  179. /* reset ltc calculation unit */
  180. (unsigned char[]) {0x08, 0x3c, 0xff, 0x1f, 0x28, 0x16, 0x00, 0x00, 0x00},
  181. /* clear reset */
  182. (unsigned char[]) {0x08, 0x3c, 0xff, 0x1f, 0x28, 0x17, 0x00, 0x00, 0x00},
  183. NULL
  184. };
  185. static const unsigned char *firmware_request_cmd[] = {
  186. (unsigned char[]) {0x10, 0x3c, 0xff, 0xc0, 0x00, 0x90, 0x90, 0x90, 0x90, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00},
  187. NULL
  188. };