1897822_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

1897822_ja-JP

1897822_ja-JP

FRDM-K66F microSD検出ピンは、カードの挿入または取り外し時に割り込みをトリガーしません

ボード:FRDM-K66F。SDK: 2.11.0 (541 2022-01-14)

選択した SDK コンポーネント:

project_template.frdmk66f.MK66F18
デバイス。MK66F18_startup。MK66F18
platform.drivers.clock.MK66F18
component.uart_adapter。MK66F18
デバイス。MK66F18_system。MK66F18
platform.drivers.rtc.MK66F18
platform.drivers.port.MK66F18
platform.drivers.smc.MK66F18
CMSIS_Include_core_cm.MK66F18
component.serial_manager_uart。MK66F18
component.lists.MK66F18
utility.debug_console。MK66F18
platform.drivers.gpio.MK66F18
デバイス。MK66F18_CMSIS。MK66F18
platform.drivers.uart.MK66F18
platform.drivers.i2c.MK66F18
component.serial_manager。MK66F18
platform.drivers.common.MK66F18
middleware.fatfs.sd.MK66F18
middleware.sdmmc.osa.bm.MK66F18
middleware.sdmmc.common.MK66F18
middleware.sdmmc.host.sdhc.MK66F18
middleware.sdmmc.sd.MK66F18
middleware.sdmmc.sdhc.template.MK66F18
middleware.sdmmc.host.sdhc.interrupt.MK66F18
platform.drivers.sdhc.MK66F18
component.osa_bm。MK66F18
middleware.fatfs.MK66F18
platform.drivers.flash.MK66F18
middleware.fatfs.template_sd。MK66F18
platform.drivers.pit.MK66F18

添付の画像に示されているようにピンを選択しました。GPIOピンPTD10は「カード検出」として使用され、ポート割り込みハンドラと割り込みハンドラのブレークポイントがあり、ピンB3 / PTD10ピンがアップまたはダウンしたときにトリガーされます。理論的には。SW2 ボタンと SW3 ボタンは、割り込みで同様に構成され、押すとトリガーされます。彼らは期待どおりに機能します。しかし、マイクロSDカードを抜き差しすると、ピンB3 / PTD10で割り込みが発生しません。これは、SDKが別の場所で処理できますが、BOARD_SDMMC_SD_CD_PORT_IRQ_HANDLERは私のPORTD_IRQHandlerを指すように構成されています。

マイクロSDカードが挿入または取り外されたときに、ピンB3 / PTD10でハードウェア割り込みが発生することを期待すべきではありませんか?

Screenshot 2024-07-02 at 6.38.32 PM.png

日時:FRDM-K66F microSD検出ピンは、カードの挿入または取り外しで割り込みをトリガーしません

はい、SDK のサンプル ソースでは、BOARD_InitPins (pin_mux.c) では、ピン PTD10 は kPORT_PullUp で構成されています - これは NXP によって提供されます。私はこれを変更しなかったため、割り込みはトリガーされません。 このサンプルプログラムは、カードが挿入されているかどうかを正しく検出しません。 私自身のサンプルプログラムが正常に動作するようになりました。 代わりに、kPORT_PullDownを使用するようにコード例を更新する必要があります

日時:FRDM-K66F microSD検出ピンは、カードの挿入または取り外しで割り込みをトリガーしません

私はそれを広範囲にテストしておらず、休日のピクニックに参加する必要がありますが、PTD10の「プル選択」を「プルダウン」に、「プル有効」を「有効」に変更し、簡単なテストを実行しました:カードが挿入されたときに割り込みがトリガーされました。繰り返しになりますが、これをより完全にテストする必要がありますが、オペレーターエラーのように見えます(私の場合は-おっと)。

日時:FRDM-K66F microSD検出ピンは、カードの挿入または取り外しで割り込みをトリガーしません

ありがとう、でもそれは本当に役に立ちません。テストのために、SDK から "sdcard_fatfs" のサンプル プロジェクトを作成し、スロットに SD カードを挿入した状態と挿入せずに実行しようとしましたが、SD カードの存在のテスト (PTD10 のビット値を確認する) では、カードがインストールされているかどうかに関係なく、すべてのケースで "1" が返されます。実際、PTD10は、プログラムが開始されると、すべてのケースで「1」を読み取ります。

Screenshot 2024-07-04 at 1.16.54 AM.png

ソースコードでPORTD_IRQHandlerが構成され、有効になっていることに気づきましたが、ハンドラは呼び出されません。テストに使用したSDKサンプルプログラムを含めましたので、ご自身で確認していただけます。もしかしたら、私はとてもシンプルなことを見落としているのかもしれません。

アーロン

Tags (1)
No ratings
Version history
Last update:
‎11-21-2025 04:49 PM
Updated by: