hiro99ma blog

何か技術的なこと

ncs: USB-CDCとUARTの両立 (2)

2024/08/29

前回の続き。

あらすじ

CONFIG_UART_0_ASYNC

こちらが USB CDC ACM を有効にしている場合の Kconfig。

image

そしてこちらが無効な場合の Kconfig。

image

ASYNC の項目すら出てきていない。 その代わり USB CDC ACM が有効な場合は UART_0_INTERRUPT_DRIVEN が有効になっている。
では、それを無効にしてしまえば。。。

image

出てくるじゃないか!

しかしボード定義ファイルにもCONFIG_UART_0_INTERRUPT_DRIVENについては設定していないので、自動的に有効にされたことになる。
原因はCONFIG_UART_INTERRUPT_DRIVENのようで、USB CDC ACM 有効の場合は誰かに=y設定され、そうでない場合は未設定になっていた。 このページの “Selected by” にあるように CONFIG_USB_CDC_ACM などのためだろう。

image

わざわざ有効にしているからには意味があるに違いない。 ここはCONFIG_UART_0_INTERRUPT_DRIVEN=nだけに限定しておくのが無難か。

変更すると、ちゃんと動いた。 よかった。

commit

< Top page