keil5提供了樣板virtualcom,就在上面修改。
我們需要修改的是usbd_user_cdc_0.c和virtualcom.c函式
keil給出的模板是既使用串列埠又使用usb,對於只需要usb功能的見到usart統統刪。
usbd_user_cdc_0.c只需要儲存usbd_cdc0_acm_setlinecoding和usbd_cdc0_acm_getlinecoding兩個函式,並刪除裡面串列埠的東西。
virtualcom.c裡呼叫的函式像 usbd_initialize usbd_connect在rl_usb.h裡宣告,並且是庫函式,我們無法看到具體**,所以我們只需要知道函式的作用和返回值就好
首先usbd_initialize ()被呼叫,進行初始化
然後是 usbd_connect()//connects the usb device to the usb bus
接著呼叫usbd_configured(),返回值大於0說明配置好可以進行通訊
使用usbd_cdc_acm_readdata()函式讀取來自usb主機的多個資料位元組,返回值大於0的值是讀取到的位元組個數,小於0的話參考usbstatus。
使用usbd_cdc_acm_writedata()函式傳送資料給usb主機,返回值大於0的值是要傳送到的位元組個數,小於0的話參考usbstatus
這樣就完成了乙個最簡單的usb通訊,pc端用超級終端或者其他軟體與開發板通訊。
stm32在keil5下重定向printf
在微控制器開發中,難免需要用到串列埠進行通訊除錯,對於部分人來講習慣了使用printf進行列印輸出,本文記錄了該實現方法。軟體 keil5 pc端串列埠除錯助手 硬體 usb轉ttl串列埠模組,stm32最小系統 此處只記錄關鍵步驟,其他的請參閱相關資料。1.在工程設定target中勾選use mi...
keil5到iar8的使用配置遷移
1 關於標頭檔案的包含。keil alt f7 c c iar alt f7 c c compiler preprocessor,高版本彙編需要包含的標頭檔案需要另外配置 alt f7 assembler preprocessor keil alt f7 utilities settings iar...
keil5到iar8的使用配置遷移
1 關於標頭檔案的包含。keil alt f7 c c iar alt f7 c c compiler preprocessor,高版本彙編需要包含的標頭檔案需要另外配置 alt f7 assembler preprocessor keil alt f7 utilities settings iar...