問題タブ [cmsis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
280 参照

c - stm32CubeMX の cmsis_os.c を修正する必要はありますか?

STMCubeMX で提供されている cmsis_os.c と cmsis_os.h を使用しています。cmsis_os.c を修正する必要がある場所が少なくとも 2 か所見つかりました。

最初の1つ:

TaskFunction_t を TimerCallbackFunction_t に置き換える必要がありますか?

2番目のもの:

私はそれがなければならないと思います:

どう思いますか?

元のファイルではなく、パッチを適用したファイルを STMCubeMX で生成する方法はありますか?

ありがとう、アルベルト

0 投票する
1 に答える
182 参照

c - SPI経由でSTM32F030R8でAMIS-30543を制御

STM32 ボードで、SPI を使用して (AMIS-30543 ドライバー、26M024B2B ステッピング モーターを使用して) ステッピング モーターを制御しようとしています。私は Keil uVision 5 を使用しており、C でベアメタル アプローチを採用しています。私の問題は、モーターが回転していないことであり、エラーがどこに隠れているのかわかりません。これについてどこが間違っていたのか、それを修正する方法を指摘していただければ幸いです。お時間をいただきありがとうございます!

下図のように配線してみました。

私が書いたコードは以下です。このコードは、ドライバの制御レジスタへの書き込みを試みてから、NXT ピンをトグルして、制御レジスタに従って各トグルでモータがインクリメントするようにします。ドライバーのデータ シートを読み、便宜上この投稿にリンクしました。

関連するデータシートのセクションは、表 11 と 12 および図 19 に関連する SPI インターフェイス セクション (31 ページ) です。コマンドの種類とデータの送信先、制御レジスタに入力される 8 ビットのデータ。次のロジックを使用して最初のパケットを組み立てました...

アップデート:

これが私の試みの2回目の繰り返しです。より多くのドキュメントと例を調べて、ドライバーから応答を得て、ドライバーのレジスターに正しく書き込んでいることを証明しようとしています。これまでのところ、私は応答を得ていません。ライブラリを翻訳しようとすることは、現時点では難しすぎて混乱を招くことがわかったので (おそらく何か明白なことが欠けているのでしょうか?)、私はまだ必要最小限のアプローチを取っています。

@ralf htp 様、これまでお世話になり、誠にありがとうございました。

アップデート:

ここここで設定された指示に従って、前述のライブラリを使用してArduino Unoをセットアップしました。ステッピングモーターは回転しませんでした。ドライバーを別のものに切り替えましたが、ステッパーモーターはまだ回転しませんでした。故障したドライバーが 2 つある可能性はありますか?

更新: ralf htp が言及したライブラリを調べて、できる限り翻訳しました。ドライバーから SPI 経由で応答を取得できるようになりましたが、返される値は "0xFF" だけです。ある例では、期待どおりの制御レジスタの応答が得られましたが、繰り返されず、正確なセットアップを再作成しようとしています (既に持っていると確信していますが)。新しいコードは以下です。