Xillinux 1.3 が実行されている MicroZed ボードがあります。外部 SPI ADC をそれに接続し、Linux でアプリケーションを作成して ADC から値を読み取りたいと考えていました。Zynq デバイスのハードウェア SPI インターフェイスが Xillinux で有効になっていません。FSBL と U-Boot を再コンパイルする必要がありますが、どこから始めればよいかわかりません。Xillinux の Vivado デザインを変更してそこから先に進むことはできますか、それとも最初からやり直す必要がありますか?
2 に答える
1
FSBL または U-Boot を変更する必要はありません。SPI コントローラーをデバイス ツリーに追加し、プログラマブル ロジックを更新して、SPI ピンが ADC に接続されるようにするだけです。
ザイリンクス SDK には、デバイス ツリー ファイルを作成するためのツールが含まれています。これについては、デバイス ツリー ブロブのビルドページを参照してください。
私は通常 .dts ファイルを手動で編集しますがdtc
、そのページで説明されているように、実行してバイナリ形式に変換する必要があります。
たとえば、フラッシュ チップに接続された SPI を有効にするzynq-zc770-xm013.dtsボードの .dts フラグメントを次に示します。
&spi0 {
status = "okay";
num-cs = <4>;
is-decoded-cs = <0>;
eeprom: at25@0 {
at25,byte-len = <8192>;
at25,addr-mode = <2>;
at25,page-size = <32>;
compatible = "atmel,at25";
reg = <2>;
spi-max-frequency = <1000000>;
};
};
于 2016-09-08T17:30:11.937 に答える