usbd_cdc_if.lst 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624
  1. ARM GAS /tmp/ccjzxu7E.s page 1
  2. 1 .cpu cortex-m3
  3. 2 .arch armv7-m
  4. 3 .fpu softvfp
  5. 4 .eabi_attribute 20, 1
  6. 5 .eabi_attribute 21, 1
  7. 6 .eabi_attribute 23, 3
  8. 7 .eabi_attribute 24, 1
  9. 8 .eabi_attribute 25, 1
  10. 9 .eabi_attribute 26, 1
  11. 10 .eabi_attribute 30, 1
  12. 11 .eabi_attribute 34, 1
  13. 12 .eabi_attribute 18, 4
  14. 13 .file "usbd_cdc_if.c"
  15. 14 .text
  16. 15 .Ltext0:
  17. 16 .cfi_sections .debug_frame
  18. 17 .file 1 "USB_DEVICE/App/usbd_cdc_if.c"
  19. 18 .section .text.CDC_DeInit_FS,"ax",%progbits
  20. 19 .align 1
  21. 20 .syntax unified
  22. 21 .thumb
  23. 22 .thumb_func
  24. 24 CDC_DeInit_FS:
  25. 25 .LFB656:
  26. 1:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN Header */
  27. 2:USB_DEVICE/App/usbd_cdc_if.c **** /**
  28. 3:USB_DEVICE/App/usbd_cdc_if.c **** ******************************************************************************
  29. 4:USB_DEVICE/App/usbd_cdc_if.c **** * @file : usbd_cdc_if.c
  30. 5:USB_DEVICE/App/usbd_cdc_if.c **** * @version : v2.0_Cube
  31. 6:USB_DEVICE/App/usbd_cdc_if.c **** * @brief : Usb device for Virtual Com Port.
  32. 7:USB_DEVICE/App/usbd_cdc_if.c **** ******************************************************************************
  33. 8:USB_DEVICE/App/usbd_cdc_if.c **** * @attention
  34. 9:USB_DEVICE/App/usbd_cdc_if.c **** *
  35. 10:USB_DEVICE/App/usbd_cdc_if.c **** * Copyright (c) 2024 STMicroelectronics.
  36. 11:USB_DEVICE/App/usbd_cdc_if.c **** * All rights reserved.
  37. 12:USB_DEVICE/App/usbd_cdc_if.c **** *
  38. 13:USB_DEVICE/App/usbd_cdc_if.c **** * This software is licensed under terms that can be found in the LICENSE file
  39. 14:USB_DEVICE/App/usbd_cdc_if.c **** * in the root directory of this software component.
  40. 15:USB_DEVICE/App/usbd_cdc_if.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
  41. 16:USB_DEVICE/App/usbd_cdc_if.c **** *
  42. 17:USB_DEVICE/App/usbd_cdc_if.c **** ******************************************************************************
  43. 18:USB_DEVICE/App/usbd_cdc_if.c **** */
  44. 19:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END Header */
  45. 20:USB_DEVICE/App/usbd_cdc_if.c ****
  46. 21:USB_DEVICE/App/usbd_cdc_if.c **** /* Includes ------------------------------------------------------------------*/
  47. 22:USB_DEVICE/App/usbd_cdc_if.c **** #include "usbd_cdc_if.h"
  48. 23:USB_DEVICE/App/usbd_cdc_if.c ****
  49. 24:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN INCLUDE */
  50. 25:USB_DEVICE/App/usbd_cdc_if.c **** #include "RFDAproto.h"
  51. 26:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END INCLUDE */
  52. 27:USB_DEVICE/App/usbd_cdc_if.c ****
  53. 28:USB_DEVICE/App/usbd_cdc_if.c **** /* Private typedef -----------------------------------------------------------*/
  54. 29:USB_DEVICE/App/usbd_cdc_if.c **** /* Private define ------------------------------------------------------------*/
  55. 30:USB_DEVICE/App/usbd_cdc_if.c **** /* Private macro -------------------------------------------------------------*/
  56. 31:USB_DEVICE/App/usbd_cdc_if.c ****
  57. 32:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PV */
  58. 33:USB_DEVICE/App/usbd_cdc_if.c **** /* Private variables ---------------------------------------------------------*/
  59. ARM GAS /tmp/ccjzxu7E.s page 2
  60. 34:USB_DEVICE/App/usbd_cdc_if.c ****
  61. 35:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PV */
  62. 36:USB_DEVICE/App/usbd_cdc_if.c ****
  63. 37:USB_DEVICE/App/usbd_cdc_if.c **** /** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
  64. 38:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Usb device library.
  65. 39:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  66. 40:USB_DEVICE/App/usbd_cdc_if.c **** */
  67. 41:USB_DEVICE/App/usbd_cdc_if.c ****
  68. 42:USB_DEVICE/App/usbd_cdc_if.c **** /** @addtogroup USBD_CDC_IF
  69. 43:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  70. 44:USB_DEVICE/App/usbd_cdc_if.c **** */
  71. 45:USB_DEVICE/App/usbd_cdc_if.c ****
  72. 46:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Private_TypesDefinitions USBD_CDC_IF_Private_TypesDefinitions
  73. 47:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Private types.
  74. 48:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  75. 49:USB_DEVICE/App/usbd_cdc_if.c **** */
  76. 50:USB_DEVICE/App/usbd_cdc_if.c ****
  77. 51:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PRIVATE_TYPES */
  78. 52:USB_DEVICE/App/usbd_cdc_if.c ****
  79. 53:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PRIVATE_TYPES */
  80. 54:USB_DEVICE/App/usbd_cdc_if.c ****
  81. 55:USB_DEVICE/App/usbd_cdc_if.c **** /**
  82. 56:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  83. 57:USB_DEVICE/App/usbd_cdc_if.c **** */
  84. 58:USB_DEVICE/App/usbd_cdc_if.c ****
  85. 59:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Private_Defines USBD_CDC_IF_Private_Defines
  86. 60:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Private defines.
  87. 61:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  88. 62:USB_DEVICE/App/usbd_cdc_if.c **** */
  89. 63:USB_DEVICE/App/usbd_cdc_if.c ****
  90. 64:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PRIVATE_DEFINES */
  91. 65:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PRIVATE_DEFINES */
  92. 66:USB_DEVICE/App/usbd_cdc_if.c ****
  93. 67:USB_DEVICE/App/usbd_cdc_if.c **** /**
  94. 68:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  95. 69:USB_DEVICE/App/usbd_cdc_if.c **** */
  96. 70:USB_DEVICE/App/usbd_cdc_if.c ****
  97. 71:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Private_Macros USBD_CDC_IF_Private_Macros
  98. 72:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Private macros.
  99. 73:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  100. 74:USB_DEVICE/App/usbd_cdc_if.c **** */
  101. 75:USB_DEVICE/App/usbd_cdc_if.c ****
  102. 76:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PRIVATE_MACRO */
  103. 77:USB_DEVICE/App/usbd_cdc_if.c ****
  104. 78:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PRIVATE_MACRO */
  105. 79:USB_DEVICE/App/usbd_cdc_if.c ****
  106. 80:USB_DEVICE/App/usbd_cdc_if.c **** /**
  107. 81:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  108. 82:USB_DEVICE/App/usbd_cdc_if.c **** */
  109. 83:USB_DEVICE/App/usbd_cdc_if.c ****
  110. 84:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Private_Variables USBD_CDC_IF_Private_Variables
  111. 85:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Private variables.
  112. 86:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  113. 87:USB_DEVICE/App/usbd_cdc_if.c **** */
  114. 88:USB_DEVICE/App/usbd_cdc_if.c **** /* Create buffer for reception and transmission */
  115. 89:USB_DEVICE/App/usbd_cdc_if.c **** /* It's up to user to redefine and/or remove those define */
  116. 90:USB_DEVICE/App/usbd_cdc_if.c **** /** Received data over USB are stored in this buffer */
  117. ARM GAS /tmp/ccjzxu7E.s page 3
  118. 91:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t UserRxBufferFS[APP_RX_DATA_SIZE];
  119. 92:USB_DEVICE/App/usbd_cdc_if.c ****
  120. 93:USB_DEVICE/App/usbd_cdc_if.c **** /** Data to send over USB CDC are stored in this buffer */
  121. 94:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t UserTxBufferFS[APP_TX_DATA_SIZE];
  122. 95:USB_DEVICE/App/usbd_cdc_if.c ****
  123. 96:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PRIVATE_VARIABLES */
  124. 97:USB_DEVICE/App/usbd_cdc_if.c ****
  125. 98:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PRIVATE_VARIABLES */
  126. 99:USB_DEVICE/App/usbd_cdc_if.c ****
  127. 100:USB_DEVICE/App/usbd_cdc_if.c **** /**
  128. 101:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  129. 102:USB_DEVICE/App/usbd_cdc_if.c **** */
  130. 103:USB_DEVICE/App/usbd_cdc_if.c ****
  131. 104:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Exported_Variables USBD_CDC_IF_Exported_Variables
  132. 105:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Public variables.
  133. 106:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  134. 107:USB_DEVICE/App/usbd_cdc_if.c **** */
  135. 108:USB_DEVICE/App/usbd_cdc_if.c ****
  136. 109:USB_DEVICE/App/usbd_cdc_if.c **** extern USBD_HandleTypeDef hUsbDeviceFS;
  137. 110:USB_DEVICE/App/usbd_cdc_if.c ****
  138. 111:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN EXPORTED_VARIABLES */
  139. 112:USB_DEVICE/App/usbd_cdc_if.c ****
  140. 113:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END EXPORTED_VARIABLES */
  141. 114:USB_DEVICE/App/usbd_cdc_if.c ****
  142. 115:USB_DEVICE/App/usbd_cdc_if.c **** /**
  143. 116:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  144. 117:USB_DEVICE/App/usbd_cdc_if.c **** */
  145. 118:USB_DEVICE/App/usbd_cdc_if.c ****
  146. 119:USB_DEVICE/App/usbd_cdc_if.c **** /** @defgroup USBD_CDC_IF_Private_FunctionPrototypes USBD_CDC_IF_Private_FunctionPrototypes
  147. 120:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Private functions declaration.
  148. 121:USB_DEVICE/App/usbd_cdc_if.c **** * @{
  149. 122:USB_DEVICE/App/usbd_cdc_if.c **** */
  150. 123:USB_DEVICE/App/usbd_cdc_if.c ****
  151. 124:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Init_FS(void);
  152. 125:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_DeInit_FS(void);
  153. 126:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Control_FS(uint8_t cmd, uint8_t* pbuf, uint16_t length);
  154. 127:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Receive_FS(uint8_t* pbuf, uint32_t *Len);
  155. 128:USB_DEVICE/App/usbd_cdc_if.c ****
  156. 129:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN PRIVATE_FUNCTIONS_DECLARATION */
  157. 130:USB_DEVICE/App/usbd_cdc_if.c ****
  158. 131:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END PRIVATE_FUNCTIONS_DECLARATION */
  159. 132:USB_DEVICE/App/usbd_cdc_if.c ****
  160. 133:USB_DEVICE/App/usbd_cdc_if.c **** /**
  161. 134:USB_DEVICE/App/usbd_cdc_if.c **** * @}
  162. 135:USB_DEVICE/App/usbd_cdc_if.c **** */
  163. 136:USB_DEVICE/App/usbd_cdc_if.c ****
  164. 137:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_ItfTypeDef USBD_Interface_fops_FS =
  165. 138:USB_DEVICE/App/usbd_cdc_if.c **** {
  166. 139:USB_DEVICE/App/usbd_cdc_if.c **** CDC_Init_FS,
  167. 140:USB_DEVICE/App/usbd_cdc_if.c **** CDC_DeInit_FS,
  168. 141:USB_DEVICE/App/usbd_cdc_if.c **** CDC_Control_FS,
  169. 142:USB_DEVICE/App/usbd_cdc_if.c **** CDC_Receive_FS
  170. 143:USB_DEVICE/App/usbd_cdc_if.c **** };
  171. 144:USB_DEVICE/App/usbd_cdc_if.c ****
  172. 145:USB_DEVICE/App/usbd_cdc_if.c **** /* Private functions ---------------------------------------------------------*/
  173. 146:USB_DEVICE/App/usbd_cdc_if.c **** /**
  174. 147:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Initializes the CDC media low layer over the FS USB IP
  175. ARM GAS /tmp/ccjzxu7E.s page 4
  176. 148:USB_DEVICE/App/usbd_cdc_if.c **** * @retval USBD_OK if all operations are OK else USBD_FAIL
  177. 149:USB_DEVICE/App/usbd_cdc_if.c **** */
  178. 150:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Init_FS(void)
  179. 151:USB_DEVICE/App/usbd_cdc_if.c **** {
  180. 152:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 3 */
  181. 153:USB_DEVICE/App/usbd_cdc_if.c **** /* Set Application Buffers */
  182. 154:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_SetTxBuffer(&hUsbDeviceFS, UserTxBufferFS, 0);
  183. 155:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_SetRxBuffer(&hUsbDeviceFS, UserRxBufferFS);
  184. 156:USB_DEVICE/App/usbd_cdc_if.c **** return (USBD_OK);
  185. 157:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 3 */
  186. 158:USB_DEVICE/App/usbd_cdc_if.c **** }
  187. 159:USB_DEVICE/App/usbd_cdc_if.c ****
  188. 160:USB_DEVICE/App/usbd_cdc_if.c **** /**
  189. 161:USB_DEVICE/App/usbd_cdc_if.c **** * @brief DeInitializes the CDC media low layer
  190. 162:USB_DEVICE/App/usbd_cdc_if.c **** * @retval USBD_OK if all operations are OK else USBD_FAIL
  191. 163:USB_DEVICE/App/usbd_cdc_if.c **** */
  192. 164:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_DeInit_FS(void)
  193. 165:USB_DEVICE/App/usbd_cdc_if.c **** {
  194. 26 .loc 1 165 1 view -0
  195. 27 .cfi_startproc
  196. 28 @ args = 0, pretend = 0, frame = 0
  197. 29 @ frame_needed = 0, uses_anonymous_args = 0
  198. 30 @ link register save eliminated.
  199. 166:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 4 */
  200. 167:USB_DEVICE/App/usbd_cdc_if.c **** return (USBD_OK);
  201. 31 .loc 1 167 3 view .LVU1
  202. 168:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 4 */
  203. 169:USB_DEVICE/App/usbd_cdc_if.c **** }
  204. 32 .loc 1 169 1 is_stmt 0 view .LVU2
  205. 33 0000 0020 movs r0, #0
  206. 34 0002 7047 bx lr
  207. 35 .cfi_endproc
  208. 36 .LFE656:
  209. 38 .section .text.CDC_Control_FS,"ax",%progbits
  210. 39 .align 1
  211. 40 .syntax unified
  212. 41 .thumb
  213. 42 .thumb_func
  214. 44 CDC_Control_FS:
  215. 45 .LVL0:
  216. 46 .LFB657:
  217. 170:USB_DEVICE/App/usbd_cdc_if.c ****
  218. 171:USB_DEVICE/App/usbd_cdc_if.c **** /**
  219. 172:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Manage the CDC class requests
  220. 173:USB_DEVICE/App/usbd_cdc_if.c **** * @param cmd: Command code
  221. 174:USB_DEVICE/App/usbd_cdc_if.c **** * @param pbuf: Buffer containing command data (request parameters)
  222. 175:USB_DEVICE/App/usbd_cdc_if.c **** * @param length: Number of data to be sent (in bytes)
  223. 176:USB_DEVICE/App/usbd_cdc_if.c **** * @retval Result of the operation: USBD_OK if all operations are OK else USBD_FAIL
  224. 177:USB_DEVICE/App/usbd_cdc_if.c **** */
  225. 178:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Control_FS(uint8_t cmd, uint8_t* pbuf, uint16_t length)
  226. 179:USB_DEVICE/App/usbd_cdc_if.c **** {
  227. 47 .loc 1 179 1 is_stmt 1 view -0
  228. 48 .cfi_startproc
  229. 49 @ args = 0, pretend = 0, frame = 0
  230. 50 @ frame_needed = 0, uses_anonymous_args = 0
  231. 51 @ link register save eliminated.
  232. 180:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 5 */
  233. ARM GAS /tmp/ccjzxu7E.s page 5
  234. 181:USB_DEVICE/App/usbd_cdc_if.c **** switch(cmd)
  235. 52 .loc 1 181 3 view .LVU4
  236. 182:USB_DEVICE/App/usbd_cdc_if.c **** {
  237. 183:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_SEND_ENCAPSULATED_COMMAND:
  238. 184:USB_DEVICE/App/usbd_cdc_if.c ****
  239. 185:USB_DEVICE/App/usbd_cdc_if.c **** break;
  240. 186:USB_DEVICE/App/usbd_cdc_if.c ****
  241. 187:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_GET_ENCAPSULATED_RESPONSE:
  242. 188:USB_DEVICE/App/usbd_cdc_if.c ****
  243. 189:USB_DEVICE/App/usbd_cdc_if.c **** break;
  244. 190:USB_DEVICE/App/usbd_cdc_if.c ****
  245. 191:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_SET_COMM_FEATURE:
  246. 192:USB_DEVICE/App/usbd_cdc_if.c ****
  247. 193:USB_DEVICE/App/usbd_cdc_if.c **** break;
  248. 194:USB_DEVICE/App/usbd_cdc_if.c ****
  249. 195:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_GET_COMM_FEATURE:
  250. 196:USB_DEVICE/App/usbd_cdc_if.c ****
  251. 197:USB_DEVICE/App/usbd_cdc_if.c **** break;
  252. 198:USB_DEVICE/App/usbd_cdc_if.c ****
  253. 199:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_CLEAR_COMM_FEATURE:
  254. 200:USB_DEVICE/App/usbd_cdc_if.c ****
  255. 201:USB_DEVICE/App/usbd_cdc_if.c **** break;
  256. 202:USB_DEVICE/App/usbd_cdc_if.c ****
  257. 203:USB_DEVICE/App/usbd_cdc_if.c **** /*******************************************************************************/
  258. 204:USB_DEVICE/App/usbd_cdc_if.c **** /* Line Coding Structure */
  259. 205:USB_DEVICE/App/usbd_cdc_if.c **** /*-----------------------------------------------------------------------------*/
  260. 206:USB_DEVICE/App/usbd_cdc_if.c **** /* Offset | Field | Size | Value | Description */
  261. 207:USB_DEVICE/App/usbd_cdc_if.c **** /* 0 | dwDTERate | 4 | Number |Data terminal rate, in bits per second*/
  262. 208:USB_DEVICE/App/usbd_cdc_if.c **** /* 4 | bCharFormat | 1 | Number | Stop bits */
  263. 209:USB_DEVICE/App/usbd_cdc_if.c **** /* 0 - 1 Stop bit */
  264. 210:USB_DEVICE/App/usbd_cdc_if.c **** /* 1 - 1.5 Stop bits */
  265. 211:USB_DEVICE/App/usbd_cdc_if.c **** /* 2 - 2 Stop bits */
  266. 212:USB_DEVICE/App/usbd_cdc_if.c **** /* 5 | bParityType | 1 | Number | Parity */
  267. 213:USB_DEVICE/App/usbd_cdc_if.c **** /* 0 - None */
  268. 214:USB_DEVICE/App/usbd_cdc_if.c **** /* 1 - Odd */
  269. 215:USB_DEVICE/App/usbd_cdc_if.c **** /* 2 - Even */
  270. 216:USB_DEVICE/App/usbd_cdc_if.c **** /* 3 - Mark */
  271. 217:USB_DEVICE/App/usbd_cdc_if.c **** /* 4 - Space */
  272. 218:USB_DEVICE/App/usbd_cdc_if.c **** /* 6 | bDataBits | 1 | Number Data bits (5, 6, 7, 8 or 16). */
  273. 219:USB_DEVICE/App/usbd_cdc_if.c **** /*******************************************************************************/
  274. 220:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_SET_LINE_CODING:
  275. 221:USB_DEVICE/App/usbd_cdc_if.c ****
  276. 222:USB_DEVICE/App/usbd_cdc_if.c **** break;
  277. 223:USB_DEVICE/App/usbd_cdc_if.c ****
  278. 224:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_GET_LINE_CODING:
  279. 225:USB_DEVICE/App/usbd_cdc_if.c ****
  280. 226:USB_DEVICE/App/usbd_cdc_if.c **** break;
  281. 227:USB_DEVICE/App/usbd_cdc_if.c ****
  282. 228:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_SET_CONTROL_LINE_STATE:
  283. 229:USB_DEVICE/App/usbd_cdc_if.c ****
  284. 230:USB_DEVICE/App/usbd_cdc_if.c **** break;
  285. 231:USB_DEVICE/App/usbd_cdc_if.c ****
  286. 232:USB_DEVICE/App/usbd_cdc_if.c **** case CDC_SEND_BREAK:
  287. 233:USB_DEVICE/App/usbd_cdc_if.c ****
  288. 234:USB_DEVICE/App/usbd_cdc_if.c **** break;
  289. 235:USB_DEVICE/App/usbd_cdc_if.c ****
  290. 236:USB_DEVICE/App/usbd_cdc_if.c **** default:
  291. ARM GAS /tmp/ccjzxu7E.s page 6
  292. 237:USB_DEVICE/App/usbd_cdc_if.c **** break;
  293. 53 .loc 1 237 5 view .LVU5
  294. 238:USB_DEVICE/App/usbd_cdc_if.c **** }
  295. 239:USB_DEVICE/App/usbd_cdc_if.c ****
  296. 240:USB_DEVICE/App/usbd_cdc_if.c **** return (USBD_OK);
  297. 54 .loc 1 240 3 view .LVU6
  298. 241:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 5 */
  299. 242:USB_DEVICE/App/usbd_cdc_if.c **** }
  300. 55 .loc 1 242 1 is_stmt 0 view .LVU7
  301. 56 0000 0020 movs r0, #0
  302. 57 .LVL1:
  303. 58 .loc 1 242 1 view .LVU8
  304. 59 0002 7047 bx lr
  305. 60 .cfi_endproc
  306. 61 .LFE657:
  307. 63 .section .text.CDC_Receive_FS,"ax",%progbits
  308. 64 .align 1
  309. 65 .syntax unified
  310. 66 .thumb
  311. 67 .thumb_func
  312. 69 CDC_Receive_FS:
  313. 70 .LVL2:
  314. 71 .LFB658:
  315. 243:USB_DEVICE/App/usbd_cdc_if.c ****
  316. 244:USB_DEVICE/App/usbd_cdc_if.c **** /**
  317. 245:USB_DEVICE/App/usbd_cdc_if.c **** * @brief Data received over USB OUT endpoint are sent over CDC interface
  318. 246:USB_DEVICE/App/usbd_cdc_if.c **** * through this function.
  319. 247:USB_DEVICE/App/usbd_cdc_if.c **** *
  320. 248:USB_DEVICE/App/usbd_cdc_if.c **** * @note
  321. 249:USB_DEVICE/App/usbd_cdc_if.c **** * This function will issue a NAK packet on any OUT packet received on
  322. 250:USB_DEVICE/App/usbd_cdc_if.c **** * USB endpoint until exiting this function. If you exit this function
  323. 251:USB_DEVICE/App/usbd_cdc_if.c **** * before transfer is complete on CDC interface (ie. using DMA controller)
  324. 252:USB_DEVICE/App/usbd_cdc_if.c **** * it will result in receiving more data while previous ones are still
  325. 253:USB_DEVICE/App/usbd_cdc_if.c **** * not sent.
  326. 254:USB_DEVICE/App/usbd_cdc_if.c **** *
  327. 255:USB_DEVICE/App/usbd_cdc_if.c **** * @param Buf: Buffer of data to be received
  328. 256:USB_DEVICE/App/usbd_cdc_if.c **** * @param Len: Number of data received (in bytes)
  329. 257:USB_DEVICE/App/usbd_cdc_if.c **** * @retval Result of the operation: USBD_OK if all operations are OK else USBD_FAIL
  330. 258:USB_DEVICE/App/usbd_cdc_if.c **** */
  331. 259:USB_DEVICE/App/usbd_cdc_if.c **** static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
  332. 260:USB_DEVICE/App/usbd_cdc_if.c **** {
  333. 72 .loc 1 260 1 is_stmt 1 view -0
  334. 73 .cfi_startproc
  335. 74 @ args = 0, pretend = 0, frame = 0
  336. 75 @ frame_needed = 0, uses_anonymous_args = 0
  337. 76 .loc 1 260 1 is_stmt 0 view .LVU10
  338. 77 0000 38B5 push {r3, r4, r5, lr}
  339. 78 .LCFI0:
  340. 79 .cfi_def_cfa_offset 16
  341. 80 .cfi_offset 3, -16
  342. 81 .cfi_offset 4, -12
  343. 82 .cfi_offset 5, -8
  344. 83 .cfi_offset 14, -4
  345. 84 0002 0446 mov r4, r0
  346. 261:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 6 */
  347. 262:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]);
  348. 85 .loc 1 262 4 is_stmt 1 view .LVU11
  349. ARM GAS /tmp/ccjzxu7E.s page 7
  350. 86 0004 064D ldr r5, .L5
  351. 87 0006 0146 mov r1, r0
  352. 88 .LVL3:
  353. 89 .loc 1 262 4 is_stmt 0 view .LVU12
  354. 90 0008 2846 mov r0, r5
  355. 91 .LVL4:
  356. 92 .loc 1 262 4 view .LVU13
  357. 93 000a FFF7FEFF bl USBD_CDC_SetRxBuffer
  358. 94 .LVL5:
  359. 263:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_ReceivePacket(&hUsbDeviceFS);
  360. 95 .loc 1 263 4 is_stmt 1 view .LVU14
  361. 96 000e 2846 mov r0, r5
  362. 97 0010 FFF7FEFF bl USBD_CDC_ReceivePacket
  363. 98 .LVL6:
  364. 264:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t ar = Buf[0];
  365. 99 .loc 1 264 4 view .LVU15
  366. 265:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t cc = Buf[1];
  367. 100 .loc 1 265 4 view .LVU16
  368. 266:USB_DEVICE/App/usbd_cdc_if.c **** PWM((uint16_t)ar,(uint16_t)cc);
  369. 101 .loc 1 266 4 view .LVU17
  370. 102 0014 6178 ldrb r1, [r4, #1] @ zero_extendqisi2
  371. 103 0016 2078 ldrb r0, [r4] @ zero_extendqisi2
  372. 104 0018 FFF7FEFF bl PWM
  373. 105 .LVL7:
  374. 267:USB_DEVICE/App/usbd_cdc_if.c ****
  375. 268:USB_DEVICE/App/usbd_cdc_if.c **** return (USBD_OK);
  376. 106 .loc 1 268 4 view .LVU18
  377. 269:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 6 */
  378. 270:USB_DEVICE/App/usbd_cdc_if.c **** }
  379. 107 .loc 1 270 1 is_stmt 0 view .LVU19
  380. 108 001c 0020 movs r0, #0
  381. 109 001e 38BD pop {r3, r4, r5, pc}
  382. 110 .LVL8:
  383. 111 .L6:
  384. 112 .loc 1 270 1 view .LVU20
  385. 113 .align 2
  386. 114 .L5:
  387. 115 0020 00000000 .word hUsbDeviceFS
  388. 116 .cfi_endproc
  389. 117 .LFE658:
  390. 119 .section .text.CDC_Init_FS,"ax",%progbits
  391. 120 .align 1
  392. 121 .syntax unified
  393. 122 .thumb
  394. 123 .thumb_func
  395. 125 CDC_Init_FS:
  396. 126 .LFB655:
  397. 151:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 3 */
  398. 127 .loc 1 151 1 is_stmt 1 view -0
  399. 128 .cfi_startproc
  400. 129 @ args = 0, pretend = 0, frame = 0
  401. 130 @ frame_needed = 0, uses_anonymous_args = 0
  402. 131 0000 10B5 push {r4, lr}
  403. 132 .LCFI1:
  404. 133 .cfi_def_cfa_offset 8
  405. 134 .cfi_offset 4, -8
  406. 135 .cfi_offset 14, -4
  407. ARM GAS /tmp/ccjzxu7E.s page 8
  408. 154:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_SetRxBuffer(&hUsbDeviceFS, UserRxBufferFS);
  409. 136 .loc 1 154 3 view .LVU22
  410. 137 0002 064C ldr r4, .L9
  411. 138 0004 0022 movs r2, #0
  412. 139 0006 0649 ldr r1, .L9+4
  413. 140 0008 2046 mov r0, r4
  414. 141 000a FFF7FEFF bl USBD_CDC_SetTxBuffer
  415. 142 .LVL9:
  416. 155:USB_DEVICE/App/usbd_cdc_if.c **** return (USBD_OK);
  417. 143 .loc 1 155 3 view .LVU23
  418. 144 000e 0549 ldr r1, .L9+8
  419. 145 0010 2046 mov r0, r4
  420. 146 0012 FFF7FEFF bl USBD_CDC_SetRxBuffer
  421. 147 .LVL10:
  422. 156:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 3 */
  423. 148 .loc 1 156 3 view .LVU24
  424. 158:USB_DEVICE/App/usbd_cdc_if.c ****
  425. 149 .loc 1 158 1 is_stmt 0 view .LVU25
  426. 150 0016 0020 movs r0, #0
  427. 151 0018 10BD pop {r4, pc}
  428. 152 .L10:
  429. 153 001a 00BF .align 2
  430. 154 .L9:
  431. 155 001c 00000000 .word hUsbDeviceFS
  432. 156 0020 00000000 .word UserTxBufferFS
  433. 157 0024 00000000 .word UserRxBufferFS
  434. 158 .cfi_endproc
  435. 159 .LFE655:
  436. 161 .section .text.CDC_Transmit_FS,"ax",%progbits
  437. 162 .align 1
  438. 163 .global CDC_Transmit_FS
  439. 164 .syntax unified
  440. 165 .thumb
  441. 166 .thumb_func
  442. 168 CDC_Transmit_FS:
  443. 169 .LVL11:
  444. 170 .LFB659:
  445. 271:USB_DEVICE/App/usbd_cdc_if.c ****
  446. 272:USB_DEVICE/App/usbd_cdc_if.c **** /**
  447. 273:USB_DEVICE/App/usbd_cdc_if.c **** * @brief CDC_Transmit_FS
  448. 274:USB_DEVICE/App/usbd_cdc_if.c **** * Data to send over USB IN endpoint are sent over CDC interface
  449. 275:USB_DEVICE/App/usbd_cdc_if.c **** * through this function.
  450. 276:USB_DEVICE/App/usbd_cdc_if.c **** * @note
  451. 277:USB_DEVICE/App/usbd_cdc_if.c **** *
  452. 278:USB_DEVICE/App/usbd_cdc_if.c **** *
  453. 279:USB_DEVICE/App/usbd_cdc_if.c **** * @param Buf: Buffer of data to be sent
  454. 280:USB_DEVICE/App/usbd_cdc_if.c **** * @param Len: Number of data to be sent (in bytes)
  455. 281:USB_DEVICE/App/usbd_cdc_if.c **** * @retval USBD_OK if all operations are OK else USBD_FAIL or USBD_BUSY
  456. 282:USB_DEVICE/App/usbd_cdc_if.c **** */
  457. 283:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len)
  458. 284:USB_DEVICE/App/usbd_cdc_if.c **** {
  459. 171 .loc 1 284 1 is_stmt 1 view -0
  460. 172 .cfi_startproc
  461. 173 @ args = 0, pretend = 0, frame = 0
  462. 174 @ frame_needed = 0, uses_anonymous_args = 0
  463. 285:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t result = USBD_OK;
  464. 175 .loc 1 285 3 view .LVU27
  465. ARM GAS /tmp/ccjzxu7E.s page 9
  466. 286:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE BEGIN 7 */
  467. 287:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef*)hUsbDeviceFS.pClassData;
  468. 176 .loc 1 287 3 view .LVU28
  469. 177 .loc 1 287 27 is_stmt 0 view .LVU29
  470. 178 0000 094B ldr r3, .L19
  471. 179 0002 D3F8B832 ldr r3, [r3, #696]
  472. 180 .LVL12:
  473. 288:USB_DEVICE/App/usbd_cdc_if.c **** if (hcdc->TxState != 0){
  474. 181 .loc 1 288 3 is_stmt 1 view .LVU30
  475. 182 .loc 1 288 11 is_stmt 0 view .LVU31
  476. 183 0006 D3F81432 ldr r3, [r3, #532]
  477. 184 .LVL13:
  478. 185 .loc 1 288 6 view .LVU32
  479. 186 000a 0BB1 cbz r3, .L18
  480. 289:USB_DEVICE/App/usbd_cdc_if.c **** return USBD_BUSY;
  481. 187 .loc 1 289 12 view .LVU33
  482. 188 000c 0120 movs r0, #1
  483. 189 .LVL14:
  484. 290:USB_DEVICE/App/usbd_cdc_if.c **** }
  485. 291:USB_DEVICE/App/usbd_cdc_if.c **** USBD_CDC_SetTxBuffer(&hUsbDeviceFS, Buf, Len);
  486. 292:USB_DEVICE/App/usbd_cdc_if.c **** result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);
  487. 293:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 7 */
  488. 294:USB_DEVICE/App/usbd_cdc_if.c **** return result;
  489. 295:USB_DEVICE/App/usbd_cdc_if.c **** }
  490. 190 .loc 1 295 1 view .LVU34
  491. 191 000e 7047 bx lr
  492. 192 .LVL15:
  493. 193 .L18:
  494. 284:USB_DEVICE/App/usbd_cdc_if.c **** uint8_t result = USBD_OK;
  495. 194 .loc 1 284 1 view .LVU35
  496. 195 0010 10B5 push {r4, lr}
  497. 196 .LCFI2:
  498. 197 .cfi_def_cfa_offset 8
  499. 198 .cfi_offset 4, -8
  500. 199 .cfi_offset 14, -4
  501. 291:USB_DEVICE/App/usbd_cdc_if.c **** result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);
  502. 200 .loc 1 291 3 is_stmt 1 view .LVU36
  503. 201 0012 054C ldr r4, .L19
  504. 202 .LVL16:
  505. 291:USB_DEVICE/App/usbd_cdc_if.c **** result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);
  506. 203 .loc 1 291 3 is_stmt 0 view .LVU37
  507. 204 0014 0A46 mov r2, r1
  508. 205 0016 0146 mov r1, r0
  509. 206 .LVL17:
  510. 291:USB_DEVICE/App/usbd_cdc_if.c **** result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);
  511. 207 .loc 1 291 3 view .LVU38
  512. 208 0018 2046 mov r0, r4
  513. 209 .LVL18:
  514. 291:USB_DEVICE/App/usbd_cdc_if.c **** result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);
  515. 210 .loc 1 291 3 view .LVU39
  516. 211 001a FFF7FEFF bl USBD_CDC_SetTxBuffer
  517. 212 .LVL19:
  518. 292:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 7 */
  519. 213 .loc 1 292 3 is_stmt 1 view .LVU40
  520. 292:USB_DEVICE/App/usbd_cdc_if.c **** /* USER CODE END 7 */
  521. 214 .loc 1 292 12 is_stmt 0 view .LVU41
  522. 215 001e 2046 mov r0, r4
  523. ARM GAS /tmp/ccjzxu7E.s page 10
  524. 216 0020 FFF7FEFF bl USBD_CDC_TransmitPacket
  525. 217 .LVL20:
  526. 294:USB_DEVICE/App/usbd_cdc_if.c **** }
  527. 218 .loc 1 294 3 is_stmt 1 view .LVU42
  528. 219 .loc 1 295 1 is_stmt 0 view .LVU43
  529. 220 0024 10BD pop {r4, pc}
  530. 221 .L20:
  531. 222 0026 00BF .align 2
  532. 223 .L19:
  533. 224 0028 00000000 .word hUsbDeviceFS
  534. 225 .cfi_endproc
  535. 226 .LFE659:
  536. 228 .global USBD_Interface_fops_FS
  537. 229 .section .data.USBD_Interface_fops_FS,"aw"
  538. 230 .align 2
  539. 233 USBD_Interface_fops_FS:
  540. 234 0000 00000000 .word CDC_Init_FS
  541. 235 0004 00000000 .word CDC_DeInit_FS
  542. 236 0008 00000000 .word CDC_Control_FS
  543. 237 000c 00000000 .word CDC_Receive_FS
  544. 238 .global UserTxBufferFS
  545. 239 .section .bss.UserTxBufferFS,"aw",%nobits
  546. 240 .align 2
  547. 243 UserTxBufferFS:
  548. 244 0000 00000000 .space 1024
  549. 244 00000000
  550. 244 00000000
  551. 244 00000000
  552. 244 00000000
  553. 245 .global UserRxBufferFS
  554. 246 .section .bss.UserRxBufferFS,"aw",%nobits
  555. 247 .align 2
  556. 250 UserRxBufferFS:
  557. 251 0000 00000000 .space 1024
  558. 251 00000000
  559. 251 00000000
  560. 251 00000000
  561. 251 00000000
  562. 252 .text
  563. 253 .Letext0:
  564. 254 .file 2 "/opt/gcc-arm/arm-none-eabi/include/machine/_default_types.h"
  565. 255 .file 3 "/opt/gcc-arm/arm-none-eabi/include/sys/_stdint.h"
  566. 256 .file 4 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_dma.h"
  567. 257 .file 5 "Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_tim.h"
  568. 258 .file 6 "Middlewares/ST/STM32_USB_Device_Library/Core/Inc/usbd_def.h"
  569. 259 .file 7 "Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc/usbd_cdc.h"
  570. 260 .file 8 "USB_DEVICE/App/usbd_cdc_if.h"
  571. 261 .file 9 "Core/Inc/RFDAproto.h"
  572. ARM GAS /tmp/ccjzxu7E.s page 11
  573. DEFINED SYMBOLS
  574. *ABS*:00000000 usbd_cdc_if.c
  575. /tmp/ccjzxu7E.s:19 .text.CDC_DeInit_FS:00000000 $t
  576. /tmp/ccjzxu7E.s:24 .text.CDC_DeInit_FS:00000000 CDC_DeInit_FS
  577. /tmp/ccjzxu7E.s:39 .text.CDC_Control_FS:00000000 $t
  578. /tmp/ccjzxu7E.s:44 .text.CDC_Control_FS:00000000 CDC_Control_FS
  579. /tmp/ccjzxu7E.s:64 .text.CDC_Receive_FS:00000000 $t
  580. /tmp/ccjzxu7E.s:69 .text.CDC_Receive_FS:00000000 CDC_Receive_FS
  581. /tmp/ccjzxu7E.s:115 .text.CDC_Receive_FS:00000020 $d
  582. /tmp/ccjzxu7E.s:120 .text.CDC_Init_FS:00000000 $t
  583. /tmp/ccjzxu7E.s:125 .text.CDC_Init_FS:00000000 CDC_Init_FS
  584. /tmp/ccjzxu7E.s:155 .text.CDC_Init_FS:0000001c $d
  585. /tmp/ccjzxu7E.s:243 .bss.UserTxBufferFS:00000000 UserTxBufferFS
  586. /tmp/ccjzxu7E.s:250 .bss.UserRxBufferFS:00000000 UserRxBufferFS
  587. /tmp/ccjzxu7E.s:162 .text.CDC_Transmit_FS:00000000 $t
  588. /tmp/ccjzxu7E.s:168 .text.CDC_Transmit_FS:00000000 CDC_Transmit_FS
  589. /tmp/ccjzxu7E.s:224 .text.CDC_Transmit_FS:00000028 $d
  590. /tmp/ccjzxu7E.s:233 .data.USBD_Interface_fops_FS:00000000 USBD_Interface_fops_FS
  591. /tmp/ccjzxu7E.s:230 .data.USBD_Interface_fops_FS:00000000 $d
  592. /tmp/ccjzxu7E.s:240 .bss.UserTxBufferFS:00000000 $d
  593. /tmp/ccjzxu7E.s:247 .bss.UserRxBufferFS:00000000 $d
  594. UNDEFINED SYMBOLS
  595. USBD_CDC_SetRxBuffer
  596. USBD_CDC_ReceivePacket
  597. PWM
  598. hUsbDeviceFS
  599. USBD_CDC_SetTxBuffer
  600. USBD_CDC_TransmitPacket