1
Raspberry Pi 2でコア1、2、3を起動する方法
ベアメタルマルチコアの例を書きました。 コード、回路図はこちら-https://github.com/jeffreyantony/multipi/tree/master/Example_01 私の例では、3つのLEDがラズベリーPiのGPIOピンに接続されています。Raspberry Pi 2には合計4つのコアがあります。各コアは、対応するLEDを点滅させるために割り当てられています。 各コアが実行するコードのアドレスを以下のアドレスに書きました。コア1の場合は0x4000009Cコア2の場合は0x400000ACコア3の場合は0x400000BC コードをコンパイルすると、コア1に割り当てられたLEDのみが点滅します(この例では、黄色のLED)。他はそうではありません。 これは、コア2および3のコードが実行されていないことを意味します(他のLEDが点滅していないため)。また、すべてのコアを起動した後にコードが実行されていないこともわかりました。つまり、core0_submain()-この関数は、Raspberry PiのACT LEDを点滅させる必要があります 誰も私に問題が何であるかを知らせてもらえますか?4つのコアすべてが同じGPIOレジスタに書き込みを試み、コア1のみが書き込みで勝っているからですか? 「属性((裸));」を追加してみました core0_submain()では使用されませんでした。 https://launchpad.net/gcc-arm-embeddedのツールチェーンを使用しています もう一度コード-https://github.com/jeffreyantony/multipi/blob/master/Example_01/main.c makefile- https://github.com/jeffreyantony/multipi/blob/master/Example_01/Makefile 2015年10月20日更新:JTAGのサポートを追加しました。しかし、デバッグインターフェイスを取得できませんでした。 2015年10月25日更新:問題は修正されました。答えを見てください。 回路図
10
bare-metal