組み込み
GPIOプログラム - fpgafpga ページ!ここと同じではあまり意味がないので GPIO(LED, SW)かつ UARTを使う方法 115200にする まずUARTのボーレートを変えるにはAXI-UARTの方法を変える他ない ソースコードに書いてあった。 新しいプロジェクトを作る。 Empty A…
忘れないように Vivadoでmicroblaze - fpgafpga ページ! Block Design Board fileを使えば、ピンアサインする手間が省ける。 SDK HelloWorld TeraTerm などでHelloWorldがでる。 続くかも
e-tipsmemo.hatenablog.comこの記事の続き。FIFOから読み出す。FIFO generatorによって作られるFIFOがよくわからなかったので自分で非同期FIFOを作った。 読み出す部分。 書き込まれた2byteが10個(20byte)になったら読み出しを開始する。実際に読み出す前にS…
Ubuntu 18が出たので、やりかたを確かめつつまとめとりあえずARMで動かすUbuntu18をセットアップするためにLinuxが必要. Bash On Windows もあると便利。 Ubuntu18をVMplayerにインストールする。 x86_64 Windows上のVMplayerに Ubuntu18をインストールする …
Vivadoのip_repoの中に自分でつくったIPコアを複製したくなったときにコピーする方法。Vivadoで作るユーザーIPのバージョン管理が、どういう設計手順を想定しているのかわからないが、とにかく使いにくいので、 結局自分でIPコアをコピーしてメジャーバージ…
e-tipsmemo.hatenablog.com の続き。実際にLEDに表示するのではなく、FIFOに入力していく。 イメージとしては以下のような感じ。 これを実装した。EZUSBのコードは前と同じ。 FPGAのコードは以下の部分がメイン EMPTYフラグをみてSTATE1へ遷移し、EMPTYフラ…
e-tipsmemo.hatenablog.com 続き。FIFOを接続するまえに16bitずつ受信できるかどうかを確認する。まずEZ-USBのデバイスディスクリプタの一部を示す。 変えたのはここらへんのエンドポイントの数や、 使わないエンドポイントをコメントアウトしただけである。…
e-tipsmemo.hatenablog.com この記事の続き且つSlave FIFO modeで動かす。 上の記事で見落としていたがInterface Descriptorの中に 利用するエンドポイントの数を指定する場所があった。 ;; Interface Descriptor .db DSCR_INTRFC_LEN ;; Descriptor length …
e-tipsmemo.hatenablog.comSlaveFIFOの利用を始める。 ベースはBulkloopサンプルであり、TD_Init、TD_Poll、デバイスディスクリプタを編集することになる。 http://www.cypress.com/file/386321/download のp11から。ここが項目ごとにまとまっている。 EZ−…
Ubuntu17あたりでautologinする設定普通のtty([0-9].)なら systemctrl edit --force getty@tty0 (tty0はログインコンソールに変える) [Service] ExecStart= ExecStart=-/sbin/agetty -a <username> --noclear %I $TERMとすると、 /etc/systemd/system/getty@tty0.servi</username>…
zyboでUSB3320のリセットがMIO46につながっているのは Zybo Reference Manual [Reference.Digilentinc] ここからわかる。 どうやらハードウェア類がLinux前にリセットされていなければならないのは組み込みあるあるなのかしらないが 以下のサイトによるとそ…
0からzyboのLinux起動を試しており、イーサネットがつながらなかった。 e-tipsmemo.hatenablog.com 大体ここをベースに今回はUbuntu 17 (Artful)を利用する。 ①デザイン zyboのイーサネットピンをMIOから出す。MDIOを忘れないようにする。 参考 ②bitstreamを…
e-tipsmemo.hatenablog.com BulkloopのTD_pollを見ていく。 BulkloopではPCからinのEPに送られてきたデータをoutのEPからPCに送り返すものであった(はず)読み取り先のEPのステータスをチェックして 書き込み先のEPのステータスをチェックする。EPのバッファ…
e-tipsmemo.hatenablog.comの続き。 CPUのクロックを48MHzに設定 http://www.cypress.com/file/126446/download p83にクロックツリーの・ようなものがある。 The slave FIFO interface can be clocked from either an internal or an external source. The E…
fw.cを見る初期化があった後に(Bulkloop.cにある) ここでDevice Descriptorをそれぞれの構造体へ読む。 EP0でコントロールコマンドが来た時に必要。 で割り込みを有効にしているらしいが、関数呼び出しかと思わせておいてdefineで定義されている単なるレジス…
Ubuntu 17.04が出ました。 SDカードのフォーマット gpartedが便利。 SDカードの先頭から開始セクタ2048のところから 64MBをFAT16に その次から全部をext4にフォーマットする。 ラベルは適当 Ubuntuのインストール Ubuntu 17の名前はzesty SDの第二パーティシ…
CypreeのEZ-USB FX2を開発するために必要なものをメモするまずは登録しないといけないのが不便 あとサイプレスのサイトがとても重い。 開発ソフトウェア Windows10のためのドライバ http://japan.cypress.com/knowledge-base-article/drivers-ez-usb-fx1-fx2…
組み込みLinuxの勉強として あるARMデバイスのためにSDカードのパーティションにUbuntuのRoot File Systemを展開しておきたい。タイトルはBuildとあるがビルドするほどのものでもないかもしれない。実行環境はVMplayer上のUbuntu16.04 LTS 0 準備 $ sudo apt…
いわゆるHDMIのV1.0でDVI-Dと互換のデータ形式e-tipsmemo.hatenablog.com の続き。 といっても e-tipsmemo.hatenablog.com をVerilogにするだけ module encoding( input clk, input resetn, input [7:0] din, output [9:0] dout, input disp_area, input c0,…
前回の続き L3GD20が送る角加速度を見るが そのままのデータだとノイズやなんやらの影響で 値が暴れすぎるので今のところ移動平均をとって出力させる。 平均をとるデータ数を変えてどれくらいなめらかになるか試す。移動平均なし 5回 10回 なんとなく飛んで…
急に作りたくなったものがあるので、L3GD20をmbedから使ってみる。I2Cはちょっと面倒なのでSPIで通信する。図にするほどのものでもない図。 akizukidenshi.com ライブラリがあるいが面白くないので自分でのチップデータシートによるとSPIの波形は のようなタ…
Vivado IP の中には今(2016.4)のところ FIFOで検索すると以下のものがヒットする。 FIFO Generator AXI Data FIFO AXI-Stream FIFO AXI4-Stream Data FIFO AXI Virtual FIFO Controller 一番目は普通のFIFOである。 最後はおいておいて、その下3つの違いにつ…
急に作りたくなったものがあるので 秋月電子の良さそうなモータードライバ akizukidenshi.com の動作テスト 雑な図 モータードライバー自体の電源は6Vでも 入力電圧Hレベルは2.0VなのでmbedのPWM(3.3V)でもOK。ついでに可変抵抗でも繋いで、 AD変換した値を…
急に作りたくなったものがあるので それのためにRN-42の動作テストを行った。 mbed RN-42 #include "mbed.h" Serial rn42(p13,p14); Serial pc(USBTX, USBRX); DigitalOut myled1(LED1); DigitalOut myled2(LED2); DigitalOut myled3(LED3); DigitalOut myle…
e-tipsmemo.hatenablog.com これらのまとめ insmodの後に(デバイスが見つかったので)probeが呼ばれて幾つかのリソースの値を取得できている事がわかる。 もしprobeが呼ばれない場合は、compatibeが間違っていることやdevicetreeが間違っているなど。 zynq> i…
e-tipsmemo.hatenablog.com の続き。デバイスドライバは書いたことがなかったので備忘録として 参考資料たち。Introduction to Linux Device Drivers - Part 1 The BasicsIntroduction to Linux Device Drivers - Part 2 Platform and Character Drivers ど…
前回の続き e-tipsmemo.hatenablog.com SDK VivadoでBitstreamがでたら。 File->Export Hardwareでhdfファイルを出力する。(Include bitstreamにチェックをいれる。) File->Launch SDK SDKの準備 Xilinx Wiki - Build Device Tree Blob や google:xilinx sdk…
zyboというFPGAの入ったARMコアのSocが乗っかっている評価基板を買った。 CPUとFPGAを組み合わせた動作のために、 まずは、FPGAからARM側への割り込みを試してみる。 その過程で知ったこと、使ったサイトのメモ。全体を通して参考になるページ http://yuki-s…