e-tipsmemo

ごった煮

メモ

KiCAD BGA基板設計①回路編

試してみる。 ダメかもしれないけど。www.digikey.jp これを使うPCBGOGOに注文するつもりだが、 2019年1月時点のデザインルールでは、 0.8mm pitchのBGA基板ならギリギリ製造できる気がする。Capabilities | PCB Online | Low volume pcb assembly | PCBGOGO…

KiCAD 5 パッド 一括 変更

KiCAD 4から5へ移行するためにいろいろいじっていたら ちょっとした機能を見つけた。QFPやBGAでパッドがたくさんあるときとりあえず パッドを大量に置くが、それらのサイズを一気に変更するのは 大変だった。 とくにある選択したパッドだけを変更したいとき…

Rust lopdf③

e-tipsmemo.hatenablog.com 文字列を抽出するのは最後 let mut textline : Vec<Object>= vec![]; for l in tmp.split('\n') { match op(CompleteStr(l)) { Ok((_, operate)) => { let operator = operate.operator; match operator.as_str() { "TJ" => { textline.ex</object>…

Rust lopdf②

e-tipsmemo.hatenablog.com の続き。lopdfであるページのリファレンス番号を列強することはできたので、 その中からstreamを持つものだけを抽出したい。 ページ1から参照されているオブジェクトを一つずつ見ていく。get_object()で番号が参照するオブジェク…

Rust lopdf

RustでPDFを弄くろうと思ったのでlopdfというライブラリを利用した。 まず前提として、PDFのフォーマットをちょっとしらないと意味ないので。PDF 構文 -ファイル 解析手順- とか 詳細PDF入門 ー 実装して学ぼう!PDFファイルの構造とその書き方読み方 - プロ…

PX-W3PE4 備忘録

参考 PX-W3PE4でTS抜き ドライバのインストール 4ch同時録画・視聴 PCI-Express型地デジ・BS/CSチューナーPX-W3PE4 株式会社プレクス パソコン・パソコン周辺機器メーカー PLEX株式会社プレクス パソコン・パソコン周辺機器メーカー PLEX OK デコーダ DScale…

ubuntu ocaml install & test

メモ 環境はWSL上で Ubuntu 16.04 fish shell install sudo apt install ocaml OK Syntax Highlight sudo apt install opam opam initopam initをするとインストールされているshellに応じて、 自動で設定を行うか聞いてくる。 最後に以下を実行しろと言って…

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…

C++ Rest SDKでtwitter④

http://e-tipsmemo.hatenablog.com/entry/2018/07/14/000000e-tipsmemo.hatenablog.com 次は画像をアップロードする方法を示す。 昔は画像のアップロードとツイートを同時にできるENDPOINTがあったらしいが、今は使えないので 画像をアップロードしてからそ…

C++ Rest SDKでtwitter③

e-tipsmemo.hatenablog.com 続き。認証が完了したら、 oauth_tokenはaccess token oauth_token_secretはaccess token secret を得ている。ツイートを行う。 signatureを作るパラメータにはツイートと、画像をアップロードしてmedia_idがあるならばあるならば…

投稿記事が100を超えた

記念すべき100記事目は http://e-tipsmemo.hatenablog.com/entry/2018/07/08/000000e-tipsmemo.hatenablog.comであった。 3日に1記事書くことを目標にやっているので、100記事増えるのに、だいたい1年ぐらいかかる。記事のカテゴリは適当につけているけれど…

C++ Rest SDKでtwitter②

e-tipsmemo.hatenablog.com の続き。requestTokenが成功すると oauth_token=xxxxxx&oauth_token_secret=yyyyy&hoge=zzzzzみたいな文字列が返ってくる。 Request TokenとRequest Token Secretとなんとかid(つかわない)https://api.twitter.com/oauth/authoriz…

C++ Rest SDKでtwitter①

TwitterつかうアプリケーションでC++ Rest SDKを利用した。 C++ Rest SDKはexperimentalだがoauth1 oauth2の実装もしてあったが使い方がよくわからなかったので httprequestを直接つかった。Twitter認証のステップをメモしておく。最初にrequestTokenを得る…

Visual Studio 2017 boost xml serialization

Nuget パッケージマネージャーでboostと検索して プロジェクトのプラットフォームツールセットのバージョンにあったBoostをインストールする 今回はv140を入れた。 準備 シリアライズしたいクラスに追加する。 #include <boost/serialization/serialization.hpp> #include <boost/serialization/nvp.hpp> #include <boost/serialization/string.hpp> class hoge { p</boost/serialization/string.hpp></boost/serialization/nvp.hpp></boost/serialization/serialization.hpp>…

Visual Studio 2017 C++ Rest SDK static library build

Visual Studio 2017でcpprestsdkの静的リンクライブラリを作成したときにでてきたエラーの解決方法(2018/06/19) Cannot fimd Build/Release.Tests.settings github.com からリポジトリをクローンするのだが、WSLからgitコマンドを利用したところ、一部のファ…

C++のコンパクトなハッシュライブラリ

HMAC-SHA1を計算したかった。 win32にはcrypt32とかあるけどよくわからなかったのでgithub.com便利 #include "../sha1.h" #include "../hmac.h" #include <string> #include <vector> #include <iostream> int main() { std::string input= "what do ya want for nothing?"; std::strin</iostream></vector></string>…

stringとwstringとtstring

Visual Studioで文字列を扱うとき、 以下の設定の違いで TCHARの定義がかわる。 参考 Tchar.h における汎用テキストのマッピング typedef std::basic_string<TCHAR> tstring; typedef std::basic_stringstream<TCHAR> tstringstream; typedef std::basic_ostringstream<TCHAR> tos</tchar></tchar></tchar>…

C++ Rest SDK Visual Studio 2017 E0427 Error

WindowsでWin32のアプリを作っていたとき http requestとかするときいいライブラリないなみたいな記憶があって わざわざC++/CLIで、C#のHttpRequestクラスみたいなものをつかてたけども、MicrosoftのメンテしているC++ Rest SDKという物があったらしい。 (い…

Vivado fsbl build batchmode③

http://e-tipsmemo.hatenablog.com/entry/2018/06/11/000000e-tipsmemo.hatenablog.comの続きでfsblと言っているが、 device-treeをhsiから作る。これはそこまで苦労しなかった。 前提 WSLが入っている。とか WSLが入っているならdevice-tree-compilerが入っ…

Vivado fsbl build batchmode②

前回 e-tipsmemo.hatenablog.comまだ稚拙だがとりあえず自動化できた 依存の書き方がちょっとよくわからないので、本当は更新していないのに毎回ビルドされる。 それでもSDKをいちいち立ち上げるよりは早い。 いつか直す。構造 hsi**はログファイルmakeファ…

Vivado fsbl build batchmode①

XSDKを毎回起動するのは手間であるので自動でビルドしたいと思うのは当然である。検索すると以下のものがとても参考になる。 Vivado SDK でZynq FSBL(First Stage Boot Loader)をビルドするTclスクリプト(hsi編)ここにfsblを編集したものをビルドするという…

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をインストールする …

小型ディスプレイ アクリルスタンド

Raspi、FPGA、サーバーセットアップ用に小型のHDMIモニターがあると良いな。 と思った。Amazonで小型ディスプレイを調べても、FullHDのものはなかなかない。 あっても高いか安くても小さすぎる。秋月にちょうどいいものがあった。 akizukidenshi.comただこれ…

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

Ryzen5 2600X 録画PC 検討

Zen+世代のAMD CPUとしてデスクトップ用Ryzen7/5 2000番代シリーズが発売。(4/19) たった2万3000円で6コア12スレッドが手に入るのは素晴らしい。 (i5-8400は2万円で6コア6スレッド)今回はRyzen5 2600Xを使って組んだ。 使用したパーツは以下 流用品もある。 …