2020/04/01

[golang]NFCIDだけ読み取ろう、ということにした

設計が・・・とか考えて行動が止まっていたのだが、それくらいだったら適当に実装して作った方がよいだろう。
それを繰り返しているから設計がうまくならんのだ、といわれればそれまでなのだけど、深くは考えまい。

 

というわけで、今回はこういう構成にしよう。

image

 

pcdのところでdevを吸収して、devでRC-S370を受け持つ。
RC-S956を別に分けて、RC-S370ならUSB、RC-S620/SならUART、というようにしてもよいだろうが、今回はRC-S370だけでよい。

 

今はdev.IoCtlというインターフェースを作ってみたものの、まだ活躍していない。
一応、pcdはdev.IoCtlを持たせて、毎回devを呼ぶときに引数で渡して・・・あれ?

Linuxのドライバなんかはopen()してからclose()するまではファイルディスクリプタを使うけど、今回は特にそこまでしなくていいんじゃないのかね。
というわけで、グローバル変数を使うことにした。

 

図のdevでは省略しているが、これ以外にもコマンドごとに構造体を用意している。
それを使ってpcdから呼び出してもらっていたので、devは引数にしていたのだ。
まあ、それならコマンドの構造体メンバにdevを持たせるべきなのかもしれないが、それってあんまり意味がなさそうな冗長だと思ったのだ。

そういう余裕があればあとから改造が楽になる、ということもあるのだろうが。。。

 

とにかく、だ、あっさりした構成で作ることにしよう。

今日のできばえ
https://github.com/hirokuma/go_pasori370/tree/ec94e2dd82be08dd4020ddf285236058818a22c8

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。