STM32,使用USB VCP功能,即虛擬串口功能時,選擇USB_OTG_FS Device_Only,如上圖。cube自動生成工程,不作修改。將USB插入電腦,WIN10或WIN7系統(tǒng)設備管理器中端口項中都能成功出現STMicroelecronics Virtual COM Port(COM4),但驅動前顯示黃色嘆號,表示設備安裝存在問題的警告。
問題:
usbd_cdc.c文件中,USBD_CDC_Init函數中存在一個USBD_malloc,可在此打斷點調試,pdev->pClassData為NULL??芍猰alloc并沒有申請到空間。
解決方法:
malloc沒有申請到空間,并不是USBD_malloc函數有問題,而是系統(tǒng)設置堆空間過小,申請空間大于堆空間,所以無法申請成功。只需要將startup_stm32f429xx.s系統(tǒng)啟動文件里的Heap_Size EQU 0x200 值高大就可以了
//======================================================================
備注::
1>在win10下運行C:\Program Files (x86)\STMicroelectronics\Software\Virtual comport driver\Win8下的dpinst_amd64.exe就可以把驅動安裝成功-----顯示的串口也就不帶感嘆號了!!!
上海意泓電子科技有限責任公司 版權所有 未經授權禁止復制或鏡像
CopyRight 2020-2025 www.toastedesign.com All rights reserved 滬ICP備2021005866號