fprintfとfputc

2020年10月26日 by Cedar

fprintf

fprintfがfputcよりも遥かに遅いということを今更ながらに知る。

普通に書くプログラムなら問題ないのだが、スピードを要求される事案だとfprintfがネックになってしまった。

バイナリをfputcで書く分には問題ないようだ。

冗長的な関数というのは時間がかかるものだと改めて実感。

組み込みではsprintfもたまに使ったりするが、こちらはもっとCPUが非力なので使用用途を考えねばならないと思った。

可読性をよくするために冗長的な書き方、言語を選択するのはいいのだが、まだまだ考えねばならんことはあるなぁ。


やったぁ日本一!おいっ!

2020年8月17日 by Cedar

PhotoGrid_1597642028970

我が浜松市が昨日に引き続き最高気温を叩き出しました。

https://tenki.jp/forecaster/deskpart/2020/08/17/9406.html

社内も30℃を下回らず。

外の温度を測ってみましたが、なんと41℃!

コンピュータ屋ならデジタル温湿度センサーで測って、マイコンで取り込んで、サーバーへアップするぐらいやれよ!

ってとこでしょうが200℃まで測れるアナログの温度計で見てみました。

LAN通信ソフト

2020年8月12日 by Cedar

lan

TCP/IP、UDPの通信をVC++で作成。

今どきは、C#とか他言語で簡単に構築できるんだろうけど、C/C++というオーダーでVCに。

なかなか参考になる資料が無くて結構難儀したけど、とりあえず通信できる状態にはなった。

プライベート・ポートを使い、マルチスレッドで動かしてと、いい勉強になりました。

マイコン屋なんでphyチップから勉強してとも思うけどプロトコルスタックが大変と聞くのでなるべく簡単に使えるものを選びたい。

BLEやUSBもモジュール使ってる人が多くて、ドライバを自分で書いてる人は少ないし。

Linuxでの開発

2020年4月27日 by Cedar

VSCode

Linux(Ubuntu)で開発することになった。

日ごろからやっている方にとっては何でもないことなのだが

普段Windows遣いなため結構面倒。

で、まずC/C++開発のためgccをインストール。

デバック用にDGBもインストール。

さて問題はエディタ。

サクラエディタみたいのがあるといいんだけど試行錯誤した結果、Visual Stusio Codeにした。

(emacsだのAtomだの、いろいろと助言はいただいたが)

いろいろ追加でgccでのコンパイル、GDBでのデバッグが可能になるし、Visual Studioは使い慣れているので楽かなと。

まずは使ってみて、また考えよう。

電波時計

2020年2月21日 by Cedar

時計

電池が無くなって止まっていた弊社の電波時計。

電池交換し設定しなおしたんだけど正確な時刻を表示しない。

丸一日放っておいたんだけど、どうも電波を受信していないようだ。

12年間、時を刻んできてくれました。(まだ動いているけど)

来週、GPS電波時計がやってきます。

お疲れ様でした。m(_ _)m

LabView案件

2020年2月6日 by Cedar

r1_PICT1002

弊社はLabViewを使って検査装置の制御を行ったりもしています。

先日、あるお客様より緊急で対応をお願いしたいとご連絡をいただき行ってまいりました。

私共が製作したものではなく、仕様等も把握できぬまま現場へ直行。

状況を確認し、LabViewでの流れを追い、I/Fボードの交換やらいろいろと試し、何とか対応。

プログラムというのは他人が書いたものは、その意図するところがわからず困るものです。

今回は上手くいったと思うので良かったです。

長かった道のり

2020年2月5日 by Cedar

computer_programming_man

昨年末より発生していた不具合。

実機で一週間以上連続運転していて1回発生する確率のもの。

でも数時間で発生する場合もある。これがやっかい。

何が起こっているのか実機ではつかみきれない。

何とかICEで捕まえられないか、やっと出た現象。

次はいつ出るかわからないのでPC、ICEは数日間電源を入れっ放しで内部がどうなっているのかを調査。

今度は何故そのようになるのかを推測、プロジェクトに関わる人たちで考えに考える。

あり得ないことが起こっている。そう、あり得ないことが起こっているから不具合なのだ!

皆でいろいろと検討しプログラムに仕掛けを入れる。

先日、やっと引っかかってバックトレース。

わかってみれば何だこんなことか!というのはいつもの事だ。

ものすごく長く感じた2か月だったが1日の時間が経つのは早かった。

プロジェクトのため、他人が書いた部分、Grepで検索しきれていなかった部分、沢山のソースコード、全ては理解できていない。

よくぞ引っかかってくれました、と。

久しぶりに凄く苦労したデバッグでした。

まだまだリリースまで開発は続く。

eVY1 Box販売

2020年1月23日 by Cedar

eVY1_Box_al

予てより試作をしてきたeVY1 Boxですが、販売を開始しました。

電子工作用のeVY1ボード/モジュールに比べると割高になってしまいますが

筐体に入れたことで取り扱いが簡単になったかと思います。

筐体はABS樹脂で白色です。

シールを貼ったりペイントしたり、デコってみるのも良いかもしれません。

ご購入希望の方はAmazon.co.jpにてお買い求めください。

https://amzn.to/2TR50uq

eVY1 Boxの紹介

https://evy1.aides-tech.com/evy1box.htm

筐体はABS樹脂で白色です。
シールを貼ったりペイントしたり、デコってみるのも良いかもしれません。

謹賀新年

2020年1月5日 by Cedar

P_20200101_065044

あけましておめでとうございます
本年もよろしくお願いします
旧年中は大変お世話になりました
本年も変わらぬご愛顧のほど宜しくお願い申し上げます

あけましておめでとうございます

本年もよろしくお願いします

旧年中は大変お世話になりました

本年も変わらぬご愛顧のほど宜しくお願い申し上げます

STM32ボードのクロック変更

2019年7月24日 by Cedar

P_20190724_104010

STM32シリーズのボードが安価に売られています。

MBedOSを使えばArduino同様に簡単にソフトウエア開発ができます。

非常に便利な世の中になりました。

ただ、標準仕様では使いにくいという場合があります。

例えば消費電流など、電池やバッテリーで動かすときは電流を抑えたいといったことがあります。

今回、標準でシステムクロック80MHzで動作するこのボードを20MHzまで落としました。

データシートを見ながら必要なレジスタに適切な値を書き込むことでクロック変更することができます。

ただし内蔵ペリフェラルにも影響が出るため、そこは数値の合わせ込みが必要になってきます。

こんなこともやってます。