組み込み

Ryzen 録画サーバー 電力測定③ (Rust serialport ②)

e-tipsmemo.hatenablog.com e-tipsmemo.hatenablog.comとりあえずRustでWattChecker-REXのサンプルコードと同じことができるようになった fn main() { println!("Hello, world!"); let mut wc = WattChecker::default(); wc.init(); wc.start_measure(); let…

rust serialport①

e-tipsmemo.hatenablog.com 電力測定のためのアプリを作るために Rustでserialportを操作する方法を調べた。非同期だったりとかいろいろあってよくわからなかったが結果的に動いた serialport-rsを利用することにした。https://crates.io/crates/serialportw…

Ryzen 録画サーバー 電力測定①

e-tipsmemo.hatenablog.com e-tipsmemo.hatenablog.com録画サーバーをたててエンコも自動にする目論見があるが、 気になるのは消費電力。常時起動させておくとしても電気を食いそうなので測りたい。 またエンコードもH265でやりたいと考えているが、 エンコ…

LTspice BJT simulation

使いたくなった時に使い方を忘れていると困るので LTspiceの使い方をメモっておく。とりあえず modelの追加方法と、 基本的なシミュレーション パラメータを利用 モデルの利用 ライブラリから目的の部品を探すのが面倒だといつも思っていた。が。 Spice Dire…

Raspberry piでSPI通信

RaspberryでSPIする必要がでてきてその方法を調べたのでメモ。 しかもPythonじゃないといけない。 python好きじゃないけど pi@raspberrypi:~ $ cat /proc/version Linux version 4.14.66-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crossto…

KiCAD 5.0 stable install

KiCAD 4.0.Xの操作感に不満を覚え始めたので、乗り換えPCBエディタを探していた。 無料のものだとEagle(古いやつ) 手頃な値段のものだと、 Diptrace, Eagle(Autodeskのほう)、CircuitStudio, 高いやつなら Altiumとか。。。? 80万は出せない。とかお金かけ…

AXI DMA テスト

AXIのDMA動作をメモしておく。この記事を参考に Using the AXI DMA in Vivado | FPGA DeveloperDMAのパスにILAを接続しておく。 手順通りにHelloWorldができたら、 HelloWorld_bspのsystem.mssを開いて axi_dmaのImport Exampleをクリックして xaxidma_examp…

Arty MicroBlaze ②GPIO

GPIOプログラム - fpgafpga ページ!ここと同じではあまり意味がないので GPIO(LED, SW)かつ UARTを使う方法 115200にする まずUARTのボーレートを変えるにはAXI-UARTの方法を変える他ない ソースコードに書いてあった。 新しいプロジェクトを作る。 Empty A…

Arty MicroBlaze ①HelloWorld

忘れないように Vivadoでmicroblaze - fpgafpga ページ! Block Design Board fileを使えば、ピンアサインする手間が省ける。 SDK HelloWorld TeraTerm などでHelloWorldがでる。 続くかも

EZ-USB FX2 Slave FIFO④

e-tipsmemo.hatenablog.comこの記事の続き。FIFOから読み出す。FIFO generatorによって作られるFIFOがよくわからなかったので自分で非同期FIFOを作った。 読み出す部分。 書き込まれた2byteが10個(20byte)になったら読み出しを開始する。実際に読み出す前にS…

Install Ubuntu18 Bionic arm(zynq) and x86(PC) まとめ

Ubuntu 18が出たので、やりかたを確かめつつまとめとりあえずARMで動かすUbuntu18をセットアップするためにLinuxが必要. Bash On Windows もあると便利。 Ubuntu18をVMplayerにインストールする。 x86_64 Windows上のVMplayerに Ubuntu18をインストールする …

Vivado IPコア コピー

Vivadoのip_repoの中に自分でつくったIPコアを複製したくなったときにコピーする方法。Vivadoで作るユーザーIPのバージョン管理が、どういう設計手順を想定しているのかわからないが、とにかく使いにくいので、 結局自分でIPコアをコピーしてメジャーバージ…

EZ-USB FX2 Slave FIFO③

e-tipsmemo.hatenablog.com の続き。実際にLEDに表示するのではなく、FIFOに入力していく。 イメージとしては以下のような感じ。 これを実装した。EZUSBのコードは前と同じ。 FPGAのコードは以下の部分がメイン EMPTYフラグをみてSTATE1へ遷移し、EMPTYフラ…

EZ-USB FX2 Slave FIFO②

e-tipsmemo.hatenablog.com 続き。FIFOを接続するまえに16bitずつ受信できるかどうかを確認する。まずEZ-USBのデバイスディスクリプタの一部を示す。 変えたのはここらへんのエンドポイントの数や、 使わないエンドポイントをコメントアウトしただけである。…

EZ-USB FX2 Slave FIFO①

e-tipsmemo.hatenablog.com この記事の続き且つSlave FIFO modeで動かす。 上の記事で見落としていたがInterface Descriptorの中に 利用するエンドポイントの数を指定する場所があった。 ;; Interface Descriptor .db DSCR_INTRFC_LEN ;; Descriptor length …

EZ-USB FX2 Device Descriptor

e-tipsmemo.hatenablog.comSlaveFIFOの利用を始める。 ベースはBulkloopサンプルであり、TD_Init、TD_Poll、デバイスディスクリプタを編集することになる。 http://www.cypress.com/file/386321/download のp11から。ここが項目ごとにまとまっている。 EZ−…

Ubuntu systemd getty autologin via Serial Console

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>…

xgpiops.h No such flie or Directory

zyboでUSB3320のリセットがMIO46につながっているのは Zybo Reference Manual [Reference.Digilentinc] ここからわかる。 どうやらハードウェア類がLinux前にリセットされていなければならないのは組み込みあるあるなのかしらないが 以下のサイトによるとそ…

zybo ethernet Ubuntu 17 ipv4

0からzyboのLinux起動を試しており、イーサネットがつながらなかった。 e-tipsmemo.hatenablog.com 大体ここをベースに今回はUbuntu 17 (Artful)を利用する。 ①デザイン zyboのイーサネットピンをMIOから出す。MDIOを忘れないようにする。 参考 ②bitstreamを…

EZ-USB FX2 Bulkloop ③

e-tipsmemo.hatenablog.com BulkloopのTD_pollを見ていく。 BulkloopではPCからinのEPに送られてきたデータをoutのEPからPCに送り返すものであった(はず)読み取り先のEPのステータスをチェックして 書き込み先のEPのステータスをチェックする。EPのバッファ…

EZ-USB FX2 Bulkloop ②

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…

EZ-USB FX2 Bulkloop

fw.cを見る初期化があった後に(Bulkloop.cにある) ここでDevice Descriptorをそれぞれの構造体へ読む。 EP0でコントロールコマンドが来た時に必要。 で割り込みを有効にしているらしいが、関数呼び出しかと思わせておいてdefineで定義されている単なるレジス…

zynqで最新のUbuntuを起動する

Ubuntu 17.04が出ました。 SDカードのフォーマット gpartedが便利。 SDカードの先頭から開始セクタ2048のところから 64MBをFAT16に その次から全部をext4にフォーマットする。 ラベルは適当 Ubuntuのインストール Ubuntu 17の名前はzesty SDの第二パーティシ…

EZ-USB FX2 開発環境設定・動作テスト

CypreeのEZ-USB FX2を開発するために必要なものをメモするまずは登録しないといけないのが不便 あとサイプレスのサイトがとても重い。 開発ソフトウェア Windows10のためのドライバ http://japan.cypress.com/knowledge-base-article/drivers-ez-usb-fx1-fx2…

Ubuntu root file system for armhf

組み込みLinuxの勉強として あるARMデバイスのためにSDカードのパーティションにUbuntuのRoot File Systemを展開しておきたい。タイトルはBuildとあるがビルドするほどのものでもないかもしれない。実行環境はVMplayer上のUbuntu16.04 LTS 0 準備 $ sudo apt…

Verilog ビデオ信号出力(Transition Minimized Differential Signaling)

いわゆる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 動作テスト②

前回の続き L3GD20が送る角加速度を見るが そのままのデータだとノイズやなんやらの影響で 値が暴れすぎるので今のところ移動平均をとって出力させる。 平均をとるデータ数を変えてどれくらいなめらかになるか試す。移動平均なし 5回 10回 なんとなく飛んで…

L3GD20 動作テスト①

急に作りたくなったものがあるので、L3GD20をmbedから使ってみる。I2Cはちょっと面倒なのでSPIで通信する。図にするほどのものでもない図。 akizukidenshi.com ライブラリがあるいが面白くないので自分でのチップデータシートによるとSPIの波形は のようなタ…

"AXI なんとか FIFO" の雑な違い..(?)

Vivado IP の中には今(2016.4)のところ FIFOで検索すると以下のものがヒットする。 FIFO Generator AXI Data FIFO AXI-Stream FIFO AXI4-Stream Data FIFO AXI Virtual FIFO Controller 一番目は普通のFIFOである。 最後はおいておいて、その下3つの違いにつ…

BD6231F-E2動作テスト

急に作りたくなったものがあるので 秋月電子の良さそうなモータードライバ akizukidenshi.com の動作テスト 雑な図 モータードライバー自体の電源は6Vでも 入力電圧Hレベルは2.0VなのでmbedのPWM(3.3V)でもOK。ついでに可変抵抗でも繋いで、 AD変換した値を…