summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsakumisu <[email protected]>2022-03-11 21:07:42 +0800
committersakumisu <[email protected]>2022-03-11 21:07:42 +0800
commitc0ccbd281d3250bd9ec02a1218b960d2623dd8f0 (patch)
treea348b06ba189839b503827f5b5603a1a6e22b0b1
parentdf7366c295f1cc68061168b57e49626f53fd892a (diff)
use cdc_acm_template for demo
-rw-r--r--demo/stm32/usb_device/stm32f429igt6/.mxproject16
-rw-r--r--demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c148
-rw-r--r--demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvoptx58
-rw-r--r--demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvprojx7
-rw-r--r--demo/stm32/usb_device/stm32f429igt6/stm32f429igt6.ioc2
-rw-r--r--demo/stm32/usb_device/stm32h743vbt6/.mxproject16
-rw-r--r--demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c394
-rw-r--r--demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvoptx84
-rw-r--r--demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvprojx9
-rw-r--r--demo/stm32/usb_device/stm32h743vbt6/stm32h743vbt6.ioc2
10 files changed, 265 insertions, 471 deletions
diff --git a/demo/stm32/usb_device/stm32f429igt6/.mxproject b/demo/stm32/usb_device/stm32f429igt6/.mxproject
index 066ae246..b6678c84 100644
--- a/demo/stm32/usb_device/stm32f429igt6/.mxproject
+++ b/demo/stm32/usb_device/stm32f429igt6/.mxproject
@@ -12,17 +12,17 @@ CDefines=USE_HAL_DRIVER;STM32F429xx;USE_HAL_DRIVER;USE_HAL_DRIVER;
[PreviousGenFiles]
AdvancedFolderStructure=true
HeaderFileListSize=3
-HeaderFiles#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Inc/stm32f4xx_it.h
-HeaderFiles#1=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Inc/stm32f4xx_hal_conf.h
-HeaderFiles#2=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Inc/main.h
+HeaderFiles#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Inc/stm32f4xx_it.h
+HeaderFiles#1=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Inc/stm32f4xx_hal_conf.h
+HeaderFiles#2=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Inc/main.h
HeaderFolderListSize=1
-HeaderPath#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Inc
+HeaderPath#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Inc
HeaderFiles=;
SourceFileListSize=3
-SourceFiles#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Src/stm32f4xx_it.c
-SourceFiles#1=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Src/stm32f4xx_hal_msp.c
-SourceFiles#2=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c
+SourceFiles#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Src/stm32f4xx_it.c
+SourceFiles#1=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Src/stm32f4xx_hal_msp.c
+SourceFiles#2=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c
SourceFolderListSize=1
-SourcePath#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32f429igt6/Core/Src
+SourcePath#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32f429igt6/Core/Src
SourceFiles=;
diff --git a/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c b/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c
index ed8aaca3..fe74dbb5 100644
--- a/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c
+++ b/demo/stm32/usb_device/stm32f429igt6/Core/Src/main.c
@@ -66,121 +66,6 @@ int fputc(int ch, FILE *f)
return ch;
}
-#define CDC_IN_EP 0x81
-#define CDC_OUT_EP 0x01
-#define CDC_INT_EP 0x82
-
-#define USBD_VID 0xFFFF
-#define USBD_PID 0xFFFF
-#define USBD_MAX_POWER 100
-#define USBD_LANGID_STRING 1033
-
-#define USB_CONFIG_SIZE (9 + CDC_ACM_DESCRIPTOR_LEN)
-
-const uint8_t cdc_descriptor[] = {
- USB_DEVICE_DESCRIPTOR_INIT(USB_2_0, 0xEF, 0x02, 0x01, USBD_VID, USBD_PID, 0x0100, 0x01),
- USB_CONFIG_DESCRIPTOR_INIT(USB_CONFIG_SIZE, 0x02, 0x01, USB_CONFIG_BUS_POWERED, USBD_MAX_POWER),
- CDC_ACM_DESCRIPTOR_INIT(0x00, CDC_INT_EP, CDC_OUT_EP, CDC_IN_EP, 0x02),
- ///////////////////////////////////////
- /// string0 descriptor
- ///////////////////////////////////////
- USB_LANGID_INIT(USBD_LANGID_STRING),
- ///////////////////////////////////////
- /// string1 descriptor
- ///////////////////////////////////////
- 0x12, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- 'B', 0x00, /* wcChar0 */
- 'o', 0x00, /* wcChar1 */
- 'u', 0x00, /* wcChar2 */
- 'f', 0x00, /* wcChar3 */
- 'f', 0x00, /* wcChar4 */
- 'a', 0x00, /* wcChar5 */
- 'l', 0x00, /* wcChar6 */
- 'o', 0x00, /* wcChar7 */
- ///////////////////////////////////////
- /// string2 descriptor
- ///////////////////////////////////////
- 0x24, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- 'B', 0x00, /* wcChar0 */
- 'o', 0x00, /* wcChar1 */
- 'u', 0x00, /* wcChar2 */
- 'f', 0x00, /* wcChar3 */
- 'f', 0x00, /* wcChar4 */
- 'a', 0x00, /* wcChar5 */
- 'l', 0x00, /* wcChar6 */
- 'o', 0x00, /* wcChar7 */
- ' ', 0x00, /* wcChar8 */
- 'C', 0x00, /* wcChar9 */
- 'D', 0x00, /* wcChar10 */
- 'C', 0x00, /* wcChar11 */
- ' ', 0x00, /* wcChar13 */
- 'D', 0x00, /* wcChar14 */
- 'E', 0x00, /* wcChar15 */
- 'M', 0x00, /* wcChar16 */
- 'O', 0x00, /* wcChar17 */
- ///////////////////////////////////////
- /// string3 descriptor
- ///////////////////////////////////////
- 0x16, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- '2', 0x00, /* wcChar0 */
- '0', 0x00, /* wcChar1 */
- '2', 0x00, /* wcChar2 */
- '1', 0x00, /* wcChar3 */
- '0', 0x00, /* wcChar4 */
- '3', 0x00, /* wcChar5 */
- '1', 0x00, /* wcChar6 */
- '0', 0x00, /* wcChar7 */
- '0', 0x00, /* wcChar8 */
- '0', 0x00, /* wcChar9 */
-#ifdef CONFIG_USB_HS
- ///////////////////////////////////////
- /// device qualifier descriptor
- ///////////////////////////////////////
- 0x0a,
- USB_DESCRIPTOR_TYPE_DEVICE_QUALIFIER,
- 0x00,
- 0x02,
- 0x02,
- 0x02,
- 0x01,
- 0x40,
- 0x01,
- 0x00,
-#endif
- 0x00
-};
-
-usbd_class_t cdc_class;
-usbd_interface_t cdc_cmd_intf;
-usbd_interface_t cdc_data_intf;
-
-void usbd_cdc_acm_out(uint8_t ep)
-{
- uint8_t data[64];
- uint32_t read_byte;
- usbd_ep_read(ep,data,64,&read_byte);
- printf("read len:%d\r\n",read_byte);
- usbd_ep_read(ep,NULL,0,NULL);
-}
-
-void usbd_cdc_acm_in(uint8_t ep)
-{
- printf("in\r\n");
-}
-
-usbd_endpoint_t cdc_out_ep = {
- .ep_addr = CDC_OUT_EP,
- .ep_cb = usbd_cdc_acm_out
-};
-
-usbd_endpoint_t cdc_in_ep = {
- .ep_addr = CDC_IN_EP,
- .ep_cb = usbd_cdc_acm_in
-};
-
void usb_dc_low_level_init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
@@ -208,19 +93,6 @@ void usb_dc_low_level_init(void)
HAL_NVIC_EnableIRQ(OTG_HS_IRQn);
}
-volatile uint8_t dtr_enable = 0;
-
-void usbd_cdc_acm_set_dtr(bool dtr)
-{
- if(dtr)
- {
- dtr_enable = 1;
- }
- else
- {
- dtr_enable = 0;
- }
-}
/* USER CODE END 0 */
/**
@@ -251,16 +123,13 @@ int main(void)
/* Initialize all configured peripherals */
MX_GPIO_Init();
+ //MX_USB_OTG_HS_PCD_Init();
MX_USART1_UART_Init();
/* USER CODE BEGIN 2 */
- usbd_desc_register(cdc_descriptor);
- usbd_cdc_add_acm_interface(&cdc_class, &cdc_cmd_intf);
- usbd_cdc_add_acm_interface(&cdc_class, &cdc_data_intf);
- usbd_interface_add_endpoint(&cdc_data_intf, &cdc_out_ep);
- usbd_interface_add_endpoint(&cdc_data_intf, &cdc_in_ep);
-
- usbd_initialize();
+
+ extern void cdc_acm_init(void);
+ cdc_acm_init();
/* USER CODE END 2 */
/* Infinite loop */
@@ -270,12 +139,9 @@ int main(void)
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
- if(dtr_enable)
- {
- uint8_t data_buffer[10] = { 0x31, 0x32, 0x33, 0x34, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35 };
- usbd_ep_write(CDC_IN_EP, data_buffer, 10, NULL);
- HAL_Delay(500);
- }
+ extern void cdc_acm_data_send_with_dtr_test(void);
+ cdc_acm_data_send_with_dtr_test();
+ HAL_Delay(500);
}
/* USER CODE END 3 */
}
diff --git a/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvoptx b/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvoptx
index 75a854f5..44b2f810 100644
--- a/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvoptx
+++ b/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvoptx
@@ -285,6 +285,18 @@
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>5</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\cdc_acm_template.c</PathWithFileName>
+ <FilenameWithoutPath>cdc_acm_template.c</FilenameWithoutPath>
+ <RteFlg>0</RteFlg>
+ <bShared>0</bShared>
+ </File>
</Group>
<Group>
@@ -295,7 +307,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>5</FileNumber>
+ <FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -307,7 +319,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>6</FileNumber>
+ <FileNumber>7</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -319,7 +331,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>7</FileNumber>
+ <FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -331,7 +343,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>8</FileNumber>
+ <FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -343,7 +355,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>9</FileNumber>
+ <FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -355,7 +367,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>10</FileNumber>
+ <FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -367,7 +379,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>11</FileNumber>
+ <FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -379,7 +391,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>12</FileNumber>
+ <FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -391,7 +403,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>13</FileNumber>
+ <FileNumber>14</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -403,7 +415,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>14</FileNumber>
+ <FileNumber>15</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -415,7 +427,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>15</FileNumber>
+ <FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -427,7 +439,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>16</FileNumber>
+ <FileNumber>17</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -439,7 +451,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>17</FileNumber>
+ <FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -451,7 +463,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>18</FileNumber>
+ <FileNumber>19</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -463,7 +475,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>19</FileNumber>
+ <FileNumber>20</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -475,7 +487,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>20</FileNumber>
+ <FileNumber>21</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -487,7 +499,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>21</FileNumber>
+ <FileNumber>22</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -499,7 +511,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>22</FileNumber>
+ <FileNumber>23</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -511,7 +523,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>23</FileNumber>
+ <FileNumber>24</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -531,7 +543,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
- <FileNumber>24</FileNumber>
+ <FileNumber>25</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -551,7 +563,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>25</FileNumber>
+ <FileNumber>26</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -563,7 +575,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>26</FileNumber>
+ <FileNumber>27</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -575,7 +587,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>27</FileNumber>
+ <FileNumber>28</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
diff --git a/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvprojx b/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvprojx
index 5f31e686..55e4d008 100644
--- a/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvprojx
+++ b/demo/stm32/usb_device/stm32f429igt6/MDK-ARM/stm32f429igt6.uvprojx
@@ -340,7 +340,7 @@
<MiscControls></MiscControls>
<Define>USE_HAL_DRIVER,STM32F429xx,CONFIG_USB_HS_IN_FULL</Define>
<Undefine></Undefine>
- <IncludePath>../Core/Inc; ../Drivers/STM32F4xx_HAL_Driver/Inc; ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy; ../Drivers/CMSIS/Device/ST/STM32F4xx/Include; ../Drivers/CMSIS/Include; ..\..\..\..\..\class\cdc; ..\..\..\..\..\core; ..\..\..\..\..\common</IncludePath>
+ <IncludePath>../Core/Inc; ../Drivers/STM32F4xx_HAL_Driver/Inc; ../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy; ../Drivers/CMSIS/Device/ST/STM32F4xx/Include; ../Drivers/CMSIS/Include; ..\..\..\..\..\class\cdc; ..\..\..\..\..\core; ..\..\..\..\..\common</IncludePath>
</VariousControls>
</Cads>
<Aads>
@@ -409,6 +409,11 @@
<FileType>1</FileType>
<FilePath>../Core/Src/stm32f4xx_hal_msp.c</FilePath>
</File>
+ <File>
+ <FileName>cdc_acm_template.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\..\..\..\cdc_acm_template.c</FilePath>
+ </File>
</Files>
</Group>
<Group>
diff --git a/demo/stm32/usb_device/stm32f429igt6/stm32f429igt6.ioc b/demo/stm32/usb_device/stm32f429igt6/stm32f429igt6.ioc
index 22f7e805..81b216f4 100644
--- a/demo/stm32/usb_device/stm32f429igt6/stm32f429igt6.ioc
+++ b/demo/stm32/usb_device/stm32f429igt6/stm32f429igt6.ioc
@@ -65,7 +65,7 @@ ProjectManager.FreePins=false
ProjectManager.HalAssertFull=false
ProjectManager.HeapSize=0x200
ProjectManager.KeepUserCode=true
-ProjectManager.LastFirmware=true
+ProjectManager.LastFirmware=false
ProjectManager.LibraryCopy=1
ProjectManager.MainLocation=Core/Src
ProjectManager.NoMain=false
diff --git a/demo/stm32/usb_device/stm32h743vbt6/.mxproject b/demo/stm32/usb_device/stm32h743vbt6/.mxproject
index 53185ced..7173ab91 100644
--- a/demo/stm32/usb_device/stm32h743vbt6/.mxproject
+++ b/demo/stm32/usb_device/stm32h743vbt6/.mxproject
@@ -9,17 +9,17 @@ CDefines=USE_HAL_DRIVER;STM32H750xx;USE_HAL_DRIVER;USE_HAL_DRIVER;
[PreviousGenFiles]
AdvancedFolderStructure=true
HeaderFileListSize=3
-HeaderFiles#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/stm32h7xx_it.h
-HeaderFiles#1=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/stm32h7xx_hal_conf.h
-HeaderFiles#2=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/main.h
+HeaderFiles#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/stm32h7xx_it.h
+HeaderFiles#1=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/stm32h7xx_hal_conf.h
+HeaderFiles#2=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Inc/main.h
HeaderFolderListSize=1
-HeaderPath#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Inc
+HeaderPath#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Inc
HeaderFiles=;
SourceFileListSize=3
-SourceFiles#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Src/stm32h7xx_it.c
-SourceFiles#1=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Src/stm32h7xx_hal_msp.c
-SourceFiles#2=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c
+SourceFiles#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Src/stm32h7xx_it.c
+SourceFiles#1=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Src/stm32h7xx_hal_msp.c
+SourceFiles#2=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c
SourceFolderListSize=1
-SourcePath#0=C:/Users/lvjiazhen/Desktop/usb_stack/demo/stm32/usb_device/stm32h743vbt6/Core/Src
+SourcePath#0=C:/Users/lvjiazhen/Desktop/CherryUSB/demo/stm32/usb_device/stm32h743vbt6/Core/Src
SourceFiles=;
diff --git a/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c b/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c
index ad8865eb..983cd7bc 100644
--- a/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c
+++ b/demo/stm32/usb_device/stm32h743vbt6/Core/Src/main.c
@@ -67,122 +67,6 @@ int fputc(int ch, FILE *f)
return ch;
}
-#define CDC_IN_EP 0x81
-#define CDC_OUT_EP 0x01
-#define CDC_INT_EP 0x83
-
-#define USBD_VID 0xFFFF
-#define USBD_PID 0xFFFF
-#define USBD_MAX_POWER 100
-#define USBD_LANGID_STRING 1033
-
-#define USB_CONFIG_SIZE (9 + CDC_ACM_DESCRIPTOR_LEN)
-
-const uint8_t cdc_descriptor[] = {
- USB_DEVICE_DESCRIPTOR_INIT(USB_2_0, 0xEF, 0x02, 0x01, USBD_VID, USBD_PID, 0x0100, 0x01),
- USB_CONFIG_DESCRIPTOR_INIT(USB_CONFIG_SIZE, 0x02, 0x01, USB_CONFIG_BUS_POWERED, USBD_MAX_POWER),
- CDC_ACM_DESCRIPTOR_INIT(0x00, CDC_INT_EP, CDC_OUT_EP, CDC_IN_EP, 0x02),
- ///////////////////////////////////////
- /// string0 descriptor
- ///////////////////////////////////////
- USB_LANGID_INIT(USBD_LANGID_STRING),
- ///////////////////////////////////////
- /// string1 descriptor
- ///////////////////////////////////////
- 0x12, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- 'B', 0x00, /* wcChar0 */
- 'o', 0x00, /* wcChar1 */
- 'u', 0x00, /* wcChar2 */
- 'f', 0x00, /* wcChar3 */
- 'f', 0x00, /* wcChar4 */
- 'a', 0x00, /* wcChar5 */
- 'l', 0x00, /* wcChar6 */
- 'o', 0x00, /* wcChar7 */
- ///////////////////////////////////////
- /// string2 descriptor
- ///////////////////////////////////////
- 0x24, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- 'B', 0x00, /* wcChar0 */
- 'o', 0x00, /* wcChar1 */
- 'u', 0x00, /* wcChar2 */
- 'f', 0x00, /* wcChar3 */
- 'f', 0x00, /* wcChar4 */
- 'a', 0x00, /* wcChar5 */
- 'l', 0x00, /* wcChar6 */
- 'o', 0x00, /* wcChar7 */
- ' ', 0x00, /* wcChar8 */
- 'C', 0x00, /* wcChar9 */
- 'D', 0x00, /* wcChar10 */
- 'C', 0x00, /* wcChar11 */
- ' ', 0x00, /* wcChar13 */
- 'D', 0x00, /* wcChar14 */
- 'E', 0x00, /* wcChar15 */
- 'M', 0x00, /* wcChar16 */
- 'O', 0x00, /* wcChar17 */
- ///////////////////////////////////////
- /// string3 descriptor
- ///////////////////////////////////////
- 0x16, /* bLength */
- USB_DESCRIPTOR_TYPE_STRING, /* bDescriptorType */
- '2', 0x00, /* wcChar0 */
- '0', 0x00, /* wcChar1 */
- '2', 0x00, /* wcChar2 */
- '1', 0x00, /* wcChar3 */
- '0', 0x00, /* wcChar4 */
- '3', 0x00, /* wcChar5 */
- '1', 0x00, /* wcChar6 */
- '0', 0x00, /* wcChar7 */
- '0', 0x00, /* wcChar8 */
- '0', 0x00, /* wcChar9 */
-#ifdef CONFIG_USB_HS
- ///////////////////////////////////////
- /// device qualifier descriptor
- ///////////////////////////////////////
- 0x0a,
- USB_DESCRIPTOR_TYPE_DEVICE_QUALIFIER,
- 0x00,
- 0x02,
- 0x02,
- 0x02,
- 0x01,
- 0x40,
- 0x01,
- 0x00,
-#endif
- 0x00
-};
-
-usbd_class_t cdc_class;
-usbd_interface_t cdc_cmd_intf;
-usbd_interface_t cdc_data_intf;
-
-void usbd_cdc_acm_out(uint8_t ep)
-{
- uint8_t data[64];
- uint32_t read_byte;
-
- usbd_ep_read(ep, data, 64, &read_byte);
- printf("read len:%d\r\n", read_byte);
- usbd_ep_read(ep, NULL, 0, NULL);
-}
-
-void usbd_cdc_acm_in(uint8_t ep)
-{
- printf("in\r\n");
-}
-
-usbd_endpoint_t cdc_out_ep = {
- .ep_addr = CDC_OUT_EP,
- .ep_cb = usbd_cdc_acm_out
-};
-
-usbd_endpoint_t cdc_in_ep = {
- .ep_addr = CDC_IN_EP,
- .ep_cb = usbd_cdc_acm_in
-};
-
void usb_dc_low_level_init(void)
{
GPIO_InitTypeDef GPIO_InitStruct = { 0 };
@@ -224,19 +108,6 @@ void usb_dc_low_level_init(void)
/* USER CODE END USB_OTG_FS_MspInit 1 */
}
-volatile uint8_t dtr_enable = 0;
-
-void usbd_cdc_acm_set_dtr(bool dtr)
-{
- if(dtr)
- {
- dtr_enable = 1;
- }
- else
- {
- dtr_enable = 0;
- }
-}
/* USER CODE END 0 */
/**
@@ -245,57 +116,50 @@ void usbd_cdc_acm_set_dtr(bool dtr)
*/
int main(void)
{
- /* USER CODE BEGIN 1 */
-
- /* USER CODE END 1 */
+ /* USER CODE BEGIN 1 */
- /* MCU Configuration--------------------------------------------------------*/
+ /* USER CODE END 1 */
- /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
- HAL_Init();
+ /* MCU Configuration--------------------------------------------------------*/
- /* USER CODE BEGIN Init */
+ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
+ HAL_Init();
- /* USER CODE END Init */
+ /* USER CODE BEGIN Init */
- /* Configure the system clock */
- SystemClock_Config();
+ /* USER CODE END Init */
- /* USER CODE BEGIN SysInit */
+ /* Configure the system clock */
+ SystemClock_Config();
- /* USER CODE END SysInit */
+ /* USER CODE BEGIN SysInit */
- /* Initialize all configured peripherals */
- MX_GPIO_Init();
- MX_USART1_UART_Init();
+ /* USER CODE END SysInit */
- /* USER CODE BEGIN 2 */
- usbd_desc_register(cdc_descriptor);
- usbd_cdc_add_acm_interface(&cdc_class, &cdc_cmd_intf);
- usbd_cdc_add_acm_interface(&cdc_class, &cdc_data_intf);
- usbd_interface_add_endpoint(&cdc_data_intf, &cdc_out_ep);
- usbd_interface_add_endpoint(&cdc_data_intf, &cdc_in_ep);
-
- usbd_initialize();
+ /* Initialize all configured peripherals */
+ MX_GPIO_Init();
+ MX_USART1_UART_Init();
+ //MX_USB_OTG_FS_PCD_Init();
+ /* USER CODE BEGIN 2 */
+
+ extern void cdc_acm_init(void);
+ cdc_acm_init();
while (!usb_device_is_configured()) {
}
- /* USER CODE END 2 */
+ /* USER CODE END 2 */
- /* Infinite loop */
- /* USER CODE BEGIN WHILE */
+ /* Infinite loop */
+ /* USER CODE BEGIN WHILE */
while (1) {
- /* USER CODE END WHILE */
+ /* USER CODE END WHILE */
- /* USER CODE BEGIN 3 */
- if(dtr_enable)
- {
- uint8_t data_buffer[10] = { 0x31, 0x32, 0x33, 0x34, 0x35, 0x31, 0x32, 0x33, 0x34, 0x35 };
- usbd_ep_write(CDC_IN_EP, data_buffer, 10, NULL);
- HAL_Delay(500);
- }
+ /* USER CODE BEGIN 3 */
+ extern void cdc_acm_data_send_with_dtr_test(void);
+ cdc_acm_data_send_with_dtr_test();
+ HAL_Delay(500);
}
- /* USER CODE END 3 */
+ /* USER CODE END 3 */
}
/**
@@ -304,51 +168,54 @@ int main(void)
*/
void SystemClock_Config(void)
{
- RCC_OscInitTypeDef RCC_OscInitStruct = { 0 };
- RCC_ClkInitTypeDef RCC_ClkInitStruct = { 0 };
+ RCC_OscInitTypeDef RCC_OscInitStruct = {0};
+ RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
- /** Supply configuration update enable
+ /** Supply configuration update enable
*/
- HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY);
- /** Configure the main internal regulator output voltage
+ HAL_PWREx_ConfigSupply(PWR_LDO_SUPPLY);
+ /** Configure the main internal regulator output voltage
*/
- __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
+ __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
- while (!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {
- }
- /** Initializes the RCC Oscillators according to the specified parameters
+ while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {}
+ /** Initializes the RCC Oscillators according to the specified parameters
* in the RCC_OscInitTypeDef structure.
*/
- RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48 | RCC_OSCILLATORTYPE_HSE;
- RCC_OscInitStruct.HSEState = RCC_HSE_ON;
- RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
- RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
- RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
- RCC_OscInitStruct.PLL.PLLM = 5;
- RCC_OscInitStruct.PLL.PLLN = 160;
- RCC_OscInitStruct.PLL.PLLP = 2;
- RCC_OscInitStruct.PLL.PLLQ = 2;
- RCC_OscInitStruct.PLL.PLLR = 2;
- RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_2;
- RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
- RCC_OscInitStruct.PLL.PLLFRACN = 0;
- if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
- Error_Handler();
- }
- /** Initializes the CPU, AHB and APB buses clocks
+ RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48|RCC_OSCILLATORTYPE_HSE;
+ RCC_OscInitStruct.HSEState = RCC_HSE_ON;
+ RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
+ RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
+ RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
+ RCC_OscInitStruct.PLL.PLLM = 5;
+ RCC_OscInitStruct.PLL.PLLN = 160;
+ RCC_OscInitStruct.PLL.PLLP = 2;
+ RCC_OscInitStruct.PLL.PLLQ = 2;
+ RCC_OscInitStruct.PLL.PLLR = 2;
+ RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_2;
+ RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
+ RCC_OscInitStruct.PLL.PLLFRACN = 0;
+ if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ /** Initializes the CPU, AHB and APB buses clocks
*/
- RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2 | RCC_CLOCKTYPE_D3PCLK1 | RCC_CLOCKTYPE_D1PCLK1;
- RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
- RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
- RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2;
- RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2;
- RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
- RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2;
- RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2;
+ RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
+ |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2
+ |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1;
+ RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
+ RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
+ RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2;
+ RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2;
+ RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
+ RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2;
+ RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2;
- if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) {
- Error_Handler();
- }
+ if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
+ {
+ Error_Handler();
+ }
}
/**
@@ -358,39 +225,45 @@ void SystemClock_Config(void)
*/
static void MX_USART1_UART_Init(void)
{
- /* USER CODE BEGIN USART1_Init 0 */
- /* USER CODE END USART1_Init 0 */
+ /* USER CODE BEGIN USART1_Init 0 */
- /* USER CODE BEGIN USART1_Init 1 */
+ /* USER CODE END USART1_Init 0 */
- /* USER CODE END USART1_Init 1 */
- huart1.Instance = USART1;
- huart1.Init.BaudRate = 115200;
- huart1.Init.WordLength = UART_WORDLENGTH_8B;
- huart1.Init.StopBits = UART_STOPBITS_1;
- huart1.Init.Parity = UART_PARITY_NONE;
- huart1.Init.Mode = UART_MODE_TX_RX;
- huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
- huart1.Init.OverSampling = UART_OVERSAMPLING_16;
- huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
- huart1.Init.ClockPrescaler = UART_PRESCALER_DIV1;
- huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
- if (HAL_UART_Init(&huart1) != HAL_OK) {
- Error_Handler();
- }
- if (HAL_UARTEx_SetTxFifoThreshold(&huart1, UART_TXFIFO_THRESHOLD_1_8) != HAL_OK) {
- Error_Handler();
- }
- if (HAL_UARTEx_SetRxFifoThreshold(&huart1, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK) {
- Error_Handler();
- }
- if (HAL_UARTEx_DisableFifoMode(&huart1) != HAL_OK) {
- Error_Handler();
- }
- /* USER CODE BEGIN USART1_Init 2 */
+ /* USER CODE BEGIN USART1_Init 1 */
+
+ /* USER CODE END USART1_Init 1 */
+ huart1.Instance = USART1;
+ huart1.Init.BaudRate = 115200;
+ huart1.Init.WordLength = UART_WORDLENGTH_8B;
+ huart1.Init.StopBits = UART_STOPBITS_1;
+ huart1.Init.Parity = UART_PARITY_NONE;
+ huart1.Init.Mode = UART_MODE_TX_RX;
+ huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
+ huart1.Init.OverSampling = UART_OVERSAMPLING_16;
+ huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
+ huart1.Init.ClockPrescaler = UART_PRESCALER_DIV1;
+ huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
+ if (HAL_UART_Init(&huart1) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ if (HAL_UARTEx_SetTxFifoThreshold(&huart1, UART_TXFIFO_THRESHOLD_1_8) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ if (HAL_UARTEx_SetRxFifoThreshold(&huart1, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ if (HAL_UARTEx_DisableFifoMode(&huart1) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ /* USER CODE BEGIN USART1_Init 2 */
+
+ /* USER CODE END USART1_Init 2 */
- /* USER CODE END USART1_Init 2 */
}
/**
@@ -400,30 +273,33 @@ static void MX_USART1_UART_Init(void)
*/
static void MX_USB_OTG_FS_PCD_Init(void)
{
- /* USER CODE BEGIN USB_OTG_FS_Init 0 */
- /* USER CODE END USB_OTG_FS_Init 0 */
+ /* USER CODE BEGIN USB_OTG_FS_Init 0 */
- /* USER CODE BEGIN USB_OTG_FS_Init 1 */
+ /* USER CODE END USB_OTG_FS_Init 0 */
- /* USER CODE END USB_OTG_FS_Init 1 */
- hpcd_USB_OTG_FS.Instance = USB_OTG_FS;
- hpcd_USB_OTG_FS.Init.dev_endpoints = 9;
- hpcd_USB_OTG_FS.Init.speed = PCD_SPEED_FULL;
- hpcd_USB_OTG_FS.Init.dma_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.phy_itface = PCD_PHY_EMBEDDED;
- hpcd_USB_OTG_FS.Init.Sof_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.low_power_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.lpm_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.battery_charging_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.vbus_sensing_enable = DISABLE;
- hpcd_USB_OTG_FS.Init.use_dedicated_ep1 = DISABLE;
- if (HAL_PCD_Init(&hpcd_USB_OTG_FS) != HAL_OK) {
- Error_Handler();
- }
- /* USER CODE BEGIN USB_OTG_FS_Init 2 */
+ /* USER CODE BEGIN USB_OTG_FS_Init 1 */
+
+ /* USER CODE END USB_OTG_FS_Init 1 */
+ hpcd_USB_OTG_FS.Instance = USB_OTG_FS;
+ hpcd_USB_OTG_FS.Init.dev_endpoints = 9;
+ hpcd_USB_OTG_FS.Init.speed = PCD_SPEED_FULL;
+ hpcd_USB_OTG_FS.Init.dma_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.phy_itface = PCD_PHY_EMBEDDED;
+ hpcd_USB_OTG_FS.Init.Sof_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.low_power_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.lpm_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.battery_charging_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.vbus_sensing_enable = DISABLE;
+ hpcd_USB_OTG_FS.Init.use_dedicated_ep1 = DISABLE;
+ if (HAL_PCD_Init(&hpcd_USB_OTG_FS) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ /* USER CODE BEGIN USB_OTG_FS_Init 2 */
+
+ /* USER CODE END USB_OTG_FS_Init 2 */
- /* USER CODE END USB_OTG_FS_Init 2 */
}
/**
@@ -433,9 +309,11 @@ static void MX_USB_OTG_FS_PCD_Init(void)
*/
static void MX_GPIO_Init(void)
{
- /* GPIO Ports Clock Enable */
- __HAL_RCC_GPIOH_CLK_ENABLE();
- __HAL_RCC_GPIOA_CLK_ENABLE();
+
+ /* GPIO Ports Clock Enable */
+ __HAL_RCC_GPIOH_CLK_ENABLE();
+ __HAL_RCC_GPIOA_CLK_ENABLE();
+
}
/* USER CODE BEGIN 4 */
@@ -448,15 +326,15 @@ static void MX_GPIO_Init(void)
*/
void Error_Handler(void)
{
- /* USER CODE BEGIN Error_Handler_Debug */
+ /* USER CODE BEGIN Error_Handler_Debug */
/* User can add his own implementation to report the HAL error return state */
__disable_irq();
while (1) {
}
- /* USER CODE END Error_Handler_Debug */
+ /* USER CODE END Error_Handler_Debug */
}
-#ifdef USE_FULL_ASSERT
+#ifdef USE_FULL_ASSERT
/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
@@ -466,10 +344,10 @@ void Error_Handler(void)
*/
void assert_failed(uint8_t *file, uint32_t line)
{
- /* USER CODE BEGIN 6 */
+ /* USER CODE BEGIN 6 */
/* User can add his own implementation to report the file name and line number,
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
- /* USER CODE END 6 */
+ /* USER CODE END 6 */
}
#endif /* USE_FULL_ASSERT */
diff --git a/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvoptx b/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvoptx
index c8fca6c3..6c44adc9 100644
--- a/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvoptx
+++ b/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvoptx
@@ -152,6 +152,22 @@
<Bp>
<Number>0</Number>
<Type>0</Type>
+ <LineNumber>172</LineNumber>
+ <EnabledFlag>1</EnabledFlag>
+ <Address>0</Address>
+ <ByteObject>0</ByteObject>
+ <HtxType>0</HtxType>
+ <ManyObjects>0</ManyObjects>
+ <SizeOfObject>0</SizeOfObject>
+ <BreakByAccess>0</BreakByAccess>
+ <BreakIfRCount>0</BreakIfRCount>
+ <Filename>../Core/Src/main.c</Filename>
+ <ExecCommand></ExecCommand>
+ <Expression></Expression>
+ </Bp>
+ <Bp>
+ <Number>1</Number>
+ <Type>0</Type>
<LineNumber>415</LineNumber>
<EnabledFlag>1</EnabledFlag>
<Address>134218740</Address>
@@ -166,7 +182,7 @@
<Expression>\\stm32h743vbt6\../Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal.c\415</Expression>
</Bp>
<Bp>
- <Number>1</Number>
+ <Number>2</Number>
<Type>0</Type>
<LineNumber>292</LineNumber>
<EnabledFlag>1</EnabledFlag>
@@ -296,6 +312,18 @@
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
+ <File>
+ <GroupNumber>2</GroupNumber>
+ <FileNumber>5</FileNumber>
+ <FileType>1</FileType>
+ <tvExp>0</tvExp>
+ <tvExpOptDlg>0</tvExpOptDlg>
+ <bDave2>0</bDave2>
+ <PathWithFileName>..\..\..\..\cdc_acm_template.c</PathWithFileName>
+ <FilenameWithoutPath>cdc_acm_template.c</FilenameWithoutPath>
+ <RteFlg>0</RteFlg>
+ <bShared>0</bShared>
+ </File>
</Group>
<Group>
@@ -306,7 +334,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>5</FileNumber>
+ <FileNumber>6</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -318,7 +346,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>6</FileNumber>
+ <FileNumber>7</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -330,7 +358,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>7</FileNumber>
+ <FileNumber>8</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -342,7 +370,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>8</FileNumber>
+ <FileNumber>9</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -354,7 +382,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>9</FileNumber>
+ <FileNumber>10</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -366,7 +394,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>10</FileNumber>
+ <FileNumber>11</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -378,7 +406,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>11</FileNumber>
+ <FileNumber>12</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -390,7 +418,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>12</FileNumber>
+ <FileNumber>13</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -402,7 +430,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>13</FileNumber>
+ <FileNumber>14</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -414,7 +442,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>14</FileNumber>
+ <FileNumber>15</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -426,7 +454,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>15</FileNumber>
+ <FileNumber>16</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -438,7 +466,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>16</FileNumber>
+ <FileNumber>17</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -450,7 +478,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>17</FileNumber>
+ <FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -462,7 +490,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>18</FileNumber>
+ <FileNumber>19</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -474,7 +502,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>19</FileNumber>
+ <FileNumber>20</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -486,7 +514,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>20</FileNumber>
+ <FileNumber>21</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -498,7 +526,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>21</FileNumber>
+ <FileNumber>22</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -510,7 +538,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>22</FileNumber>
+ <FileNumber>23</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -522,7 +550,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>23</FileNumber>
+ <FileNumber>24</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -534,7 +562,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>24</FileNumber>
+ <FileNumber>25</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -546,7 +574,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>25</FileNumber>
+ <FileNumber>26</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -558,7 +586,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>26</FileNumber>
+ <FileNumber>27</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -570,7 +598,7 @@
</File>
<File>
<GroupNumber>3</GroupNumber>
- <FileNumber>27</FileNumber>
+ <FileNumber>28</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -590,7 +618,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
- <FileNumber>28</FileNumber>
+ <FileNumber>29</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -610,7 +638,7 @@
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>29</FileNumber>
+ <FileNumber>30</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -622,7 +650,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>30</FileNumber>
+ <FileNumber>31</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
@@ -634,7 +662,7 @@
</File>
<File>
<GroupNumber>5</GroupNumber>
- <FileNumber>31</FileNumber>
+ <FileNumber>32</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
diff --git a/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvprojx b/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvprojx
index 3248b5e6..5a0e8f69 100644
--- a/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvprojx
+++ b/demo/stm32/usb_device/stm32h743vbt6/MDK-ARM/stm32h743vbt6.uvprojx
@@ -338,9 +338,9 @@
<v6Rtti>0</v6Rtti>
<VariousControls>
<MiscControls></MiscControls>
- <Define>USE_HAL_DRIVER,STM32H750xx,STM32H7,CONFIG_USB_SYNOPSYS_NOVBUSSEN</Define>
+ <Define>USE_HAL_DRIVER,STM32H750xx,CONFIG_USB_SYNOPSYS_NOVBUSSEN,USB_BASE=0x40080000UL</Define>
<Undefine></Undefine>
- <IncludePath>../Core/Inc; ../Drivers/STM32H7xx_HAL_Driver/Inc; ../Drivers/STM32H7xx_HAL_Driver/Inc/Legacy; ../Drivers/CMSIS/Device/ST/STM32H7xx/Include; ../Drivers/CMSIS/Include; ..\..\..\..\..\class\cdc; ..\..\..\..\..\common; ..\..\..\..\..\core</IncludePath>
+ <IncludePath>../Core/Inc; ../Drivers/STM32H7xx_HAL_Driver/Inc; ../Drivers/STM32H7xx_HAL_Driver/Inc/Legacy; ../Drivers/CMSIS/Device/ST/STM32H7xx/Include; ../Drivers/CMSIS/Include; ..\..\..\..\..\class\cdc; ..\..\..\..\..\common; ..\..\..\..\..\core</IncludePath>
</VariousControls>
</Cads>
<Aads>
@@ -409,6 +409,11 @@
<FileType>1</FileType>
<FilePath>../Core/Src/stm32h7xx_hal_msp.c</FilePath>
</File>
+ <File>
+ <FileName>cdc_acm_template.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\..\..\..\cdc_acm_template.c</FilePath>
+ </File>
</Files>
</Group>
<Group>
diff --git a/demo/stm32/usb_device/stm32h743vbt6/stm32h743vbt6.ioc b/demo/stm32/usb_device/stm32h743vbt6/stm32h743vbt6.ioc
index 29a91ebc..cbd84728 100644
--- a/demo/stm32/usb_device/stm32h743vbt6/stm32h743vbt6.ioc
+++ b/demo/stm32/usb_device/stm32h743vbt6/stm32h743vbt6.ioc
@@ -64,7 +64,7 @@ ProjectManager.FreePins=false
ProjectManager.HalAssertFull=false
ProjectManager.HeapSize=0x200
ProjectManager.KeepUserCode=true
-ProjectManager.LastFirmware=true
+ProjectManager.LastFirmware=false
ProjectManager.LibraryCopy=1
ProjectManager.MainLocation=Core/Src
ProjectManager.NoMain=false