圏9研究所 工作室

圏9研究所の開発情報資料など

STM32F411 BlackPill USB Speaker(9)まとめ

1.追加変更コード一覧
 main.h と main.c に書いたメインシーケンス処理コードを別ファイルにしてまとめる

dir

File

Function

内容

Core

usbd_sp.h

追加定数等定義

usbd_sp.c

usbd_sp_iso()

メインシーケンス

main.h

定数定義 include

main.c

メインシーケンス呼び出し

stm32f4xx_it.c

TIM1_UP_TIM10_IRQHandler()

サンプリングクロック同期

TransferComplete_CallBack_FS();

TIM1_CC_IRQHandler()

HalfTransfer_CallBack_FS();

OTG_FS_IRQHandler

サンプリングクロック同期

Middlewares

usbd_audio.c

USBD_AUDIO_IsoOutIncomplete()

USB接続ダウン復旧

USB_DEVICE

usbd_audio_if.c

AUDIO_AudioCmd_FS()

再生イベントとデータハンドリング

 

2.結果と課題
1)結果
・シンクロナス転送でのデータ受取実装完了
 STM32CubeIDE(MX)のUSB audio Middlewaresに僅かな追加で実装できる
 ただし追加コードに関する情報は少ない

2)課題
・アイソクロナス転送実装
・USBマイクコード実装

3.USER CODE ファイル
1)<usbd_audio>_if.c  AUDIO_AudioCmd_FS()
 (7)メインシーケンス に記載

2)<usbd_audio.c>  USBD_AUDIO_IsoOutIncomplete()
 (5)USB接続ダウン対策 に記載

3)<stm32f4xx_it.c>
 (8)同期 に記載

4)<main.c> 関数追記

 /* USER CODE BEGIN WHILE */
  usbd_sp_iso();