大概在前年的時候,那時候剛離職有時間去弄那些543,不過現在工作繁忙,就一直荒廢了
甚至前年年底把swith賣掉了,還好,為了健身環又買回來
難得最近有人來詢問,可是又發現先前的code不見了,電腦重灌消失了
所以抽點時間來寫一下先前的switch外掛,為了怕code不見,來寫一下比較"完整"的文章吧。
---本篇持續更新中---
本文使用的還是先前的MCU,stm32f429 discovery開發版,露天一片應該是不到1000元
不過坊間應該是有3~400塊的STM32開發版,這點就見仁見智了,反正都可以用
(microchip趕快送我USB的開發版阿XD)
因為是stm32f4系列,所以要使用
stm32cubemx F4系列cubemx的設定方法如下

先開啟新專案,選擇我們的開發版

接下來是腳位配置圖
途中我使用到
LD4、LD3 (紅色與綠色LED)
PB15、PB16 (USB D+ D-)
PB10、PB11(UART3 因為我這個開發版是舊的,新版的開發版st-link包含版載pc to uart)
PA0 (藍色按鈕)
PH0、PH1 8M石英震盪器輸入

同一頁面中 HSE時脈設定為石英晶體
timer我使用兩個 timer7與timer9
timer7我設定是33.3mS (1/30fps),timer7是我在寫初音外掛用的,這個實驗中,成功在PO XD

timer9我設定是10mS,用途是每10mS發送一次usb report

timer9的中斷記得打開

PB10、PB11是uart3再用,如果你是新版開發版,記得設定你要的uart

最重要的是USB要打開,設定如上
![]()
usb device class設定在 custom HID
設定如下
VID 0xf0d
因為是模擬HORI的搖桿,所以設定成
HORI CO.,LTD.
PID 0x92
產品字串
POKKEN CONTROLLER
![]()
USB的class設定如上
![]()
時脈如上,重點放在PLL到48Mhz以上,我設定是在72Mhz
APB1為18MHz,timer9使用得APB2為72MHz,USB為固定的48Mhz
![]()
接下來就可以generate code搂
偷懶一下,晚點再寫更新