「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



昨日の、F12864G25412P1701液晶用のmbedライブラリ。

結局、ソースコードを1文字1文字見直していって、
ようやく原因判明。


ドットの表示位置がおかしかったのは、なぜだか、
コピペしただけのはずなのに、途中の定数の1箇所が
0xB0から0xE0に書き換わってて、正常なY軸指定の
コマンドになってなかった。なんだこれ?

弄った記憶はないし、5110液晶用ライブラリとはここは
異なる部分だから流用してないし、やっぱ原因不明。


まぁ、直してみたらちゃんとドットが描けた。

あと、大量のランダムラインを描くのが上手くいって
なかったのは、ライブラリ側じゃなくて、呼び出し元
のデモプログラム側だった。これは例によって、char
型のゴニョゴニョした辺りでバグってたみたい。

mbedって、なんでchar型だけ、内部がunsigned char
なんだろう?intとかlongとかはsignedなのに。

まぁ、そう言っても、もともとちゃんとunsigned型と
思って計算式書いてたはずんだけど、128で割った余り
の計算が上手く行ってなかったみたい。よくわからん。
0~255なんだから、128で割った余りを求めれば、
上手くいくはず、と思っていたのに。



で、まぁ、結果。まずは文字列描画。



これは、Y軸は8ドット単位、X軸は1ドット単位で
座標指定可能。フォントが5ドット単位で、VRAMの
横幅(128ドット)とそろわないので、ドット単位
で位置指定できるようにしてある。

1文字単位でも、文字列指定でも、どっちでも扱える。
(1文字用の関数を、文字列用関数が呼び出す)

ただし、文字列表示の途中で画面右端に掛かると、
現状は自動で改行してくれない。自動で改行する
ロジックにしちゃった方が便利だよなぁ…
1文字表示終わったところで、X軸が一定以上なら
改行を自動挿入する、みたいな。


次。ランダムドット。



5000個描いて、ほんの一瞬。Arduinoだと、こんなに
速くない気がしたなぁ。



次。ランダムライン。



1000本描いて、1.5秒くらいかな。この写真は、
描画途中を狙ってパチリと撮ったので、一部の線
は濃く、一部が薄く出てる。

psetで1000本、presetで1000本かいて、あわせて
3秒くらい。やっぱり、Arduinoよりはるかに速い
気がするな。

そもそも、Arduinoと5110液晶で最初に作った当初の
ライブラリでは、ArduinoのdigitalWriteをそのまま
使ったせいで、毎秒30~40本くらいしか描けなかった
んだよな。それを、ポート直接叩くように書き換えて、
それなりの速度になった。

でもmbeedは色々な機種で使いまわししたいから、
ポート直接叩くようなことしてないんだけど、
毎秒1000本近く描けるっていうのは、もう十分な
速度だな。Seeeduino Archで5110にライブラリ
移植したときも思ったけど、やっぱ32ビットは
速いな。



UC1701ができちゃえば、SSD1306のOLEDとかも、
初期化コードだけ書き換えれば動くはず。

とりあえず、mbedで5110もUC1701も動くように
なったので、C言語様式じゃなく、C++のクラス定義
にリファクタリングしておきたいんだよな。
特に、Arduinoとちがって、ポート直接叩くわけ
じゃないから、ポート指定してインスタンス作る
ように直したい。



それより、なんといっても、3.3V電源にあわせて
オシロの計算ロジックを見直すのが先かな。定数を
数箇所直すだけで、計算は対応できるようにして
あったと思うんだけど、色々ちょっと自信ない。



その辺ができたら、あとはシールド形状でオシロの
回路詰め込むのだ。

オシロ回路の電源周りと、アナログ周りで使う
オペアンプの選定で色々悩ましいんだよな。
馬鹿正直に回路組むと、パーツがいっぱいに
なっちゃって、面積的に厳しい。プローブ用
のBNC端子も結構デカイしな。

SMDのアンプとかDC/DCとか使う方向に流れるかな…



コメント ( 0 )




Nucleo STM32F303K8を使って、例によってaitendoの
G-LCD、F12864G25412P1701に色々表示するライブラリ
を移植してみる。

http://www.aitendo.com/product/10007

Arduino用のUC1701ライブラリと、既にmbedに移植済み
の5110液晶ライブラリの両方を眺めながら、UC1701用
にゴニョゴニョ書き換え。

5110用ライブラリの移植をするときに、char型、byte型
signed/unsignedの違いといった辺りでだいぶ苦労した
ので、その辺を注意してコードをArduino用から書き換え
していく。

とりあえず、コンパイル通るようになったので、ひとまず
様子見のために書き込んで実行してみた。




文字はサクッと出た。
けど、なんかグラフィックがおかしい。

原因箇所を絞り込んでいくと、なんとなくドット表示を
行う関数が変みたい。Y座標が全然効いてない。8ドット
以下の座標(上位を切り捨てた下位3ビット分)は活きて
るんだけど、上位の座標(4ビットより上)が効いてない。

それだけなのかもよくわかんないけど、少なくとも
その分はだめっぽい。

char型のsigned/unsigned周りとか、char/int周りとか、
はみ出たビットの切捨てとか、その辺が悪いのかなぁ?
もうちょっとコードじっくり見直す必要ありそう。


あと、あらためて気づいたんだけど、このG-LCD、カメラ
で撮るときに、ストロボ焚くと暴走する。画面の上下が
入れ替わって、んで、あと送られるデータが化けたり
するみたい。
Raspberry Pi2でも、そんなことあったねぇ。
このモジュール使うときは、ストロボ厳禁っぽいな。





相変わらず、firefoxの不調とPCのHDD周りで頭が重い。
道具の不調は厳しいものがある。


いろんなセキュリティーソフト使って、マルウェアを
チェックしまくったり、Windowsのシステムが壊れて
いないか確認してみた。

サブPC(Windows7の32ビット)とWindows10ノートは
大丈夫。
メインで使ってるWindows7(64ビット)は、1個ファイル
が戻せないって出てきた。

msvcr80.dllっていうファイルなんだけど、ちょっと
調べてみると、VC++2005のファイルだったり、appleの
iTuneかなにかが使っていたり、.NET Framework2.0に
入ってるファイルだったりするみたい。

Firefoxの不調にあまり影響あるように思えないファイル
なのと、そもそも、32ビット版Windows7のほうはまったく
欠落/破損しているWindows関連ファイルはゼロだったのに、
同じ症状出ているっていう理由にはなりそうにないもん
なぁ。多分、原因は別。

sfcコマンドで戻せないって言うのは気になるんだけど、
scandiskでファイルシステムが壊れてたわけでもないし、
色々な点から、ひとまず放置して、Firefoxを再インス
トール。
…やっぱり症状変わらず。

オイラは、ネットスケープナビゲータ時代からのユーザ
なので、ハイそうですかと言ってちょろめに乗り換える
とか、できないんだよなぁ。なんといっても、FFの
ブックマーク機能のアクセスのしやすさは、他のブラウザ
では代替できるものがない。



あと、HDDにおかしなフラグ立った件。

相変わらず、「代替処理保留中のセクタ数」は1のまま。
増えていくと大変なんだけど、ずっと変化ないっぽい。

もうしばらく様子見なんだけど、パーティション丸ごと
コピーするツールだと、エラーのフラグまで移行しちゃう
っていううわさがあって困るので、どうしたものかと
悩み中。

でも多分、書き込み中にOS強制終了したとかで、おかしな
セクタができてるだけなんだろうと想像。このセクタが
上記のファイル云々かも知れないなぁとも思ったんだけど、
scandiskでおかしいファイル無いよ、って出てきたので、
多分違う。



マザボごと買い換えられるなら、GPT対応のマザボにして、
3TBなりのHDDに買い換えたいところもあるんだけど、
当面容量足りるし、色々考えると、2TBのHDDを買い換える
のが現実的かな。
んで、今使ってるやつを一旦丸ごとフォーマットして、
保留セクタが問題ないことが確認できたら、バックアップ
用のディスクにするとか。


しかし、FFにしても、HDDにしても、常用している道具が
調子悪いのって、精神的にぞわぞわするものがあって、
ものすごい落ち着かないんだよな。






https://headlines.yahoo.co.jp/hl?a=20171104-00000008-minkei-l24.view-000

だる満月

お月様は、のぼってくる時の真っ赤なのが、やっぱり
神秘的でいいよな。
場所と気象条件に恵まれないと見れないんだけど、
前に一度、遠くの地平線から上ってくる月を、timelapse
で撮って、ムービーにしたことがある。あれ、いい色
だったな。






https://headlines.yahoo.co.jp/hl?a=20171104-00001515-tokaiv-l23

相変わらずだなぁ。
それにしても、この「無理な割り込み」が悪意による
モノだったら、危険運転致死傷罪にあたるよな。

相手に怪我を及ぼさなくても、安全運転義務違反は
明確なんだから、それだけでも予防措置で違反切符
切るなり、車の持ち主に警告しておく(警察のブラック
リストに載せたよという意思表示)くらいはしておい
てもいいんじゃね?という気もするけどな。






Firefoxのあれこれとかで手を取られて、なかなか
やりたいことが進まないな。








コメント ( 0 )




mbedで使えるNucleo F303K8のLチカとかシリアル通信
とか確認できちゃったので、もうちょっと手を伸ばす。


以前、プログラムだけはArduinoから移植しておいた、
実験中のオシロ。コンパイルだけは通るようにして
あったんだけど、これを動かしてみる。

Arduinoシールド+5110LCDシールドの組み合わせで
動かすことを念頭に置いていたので、せっかくなら、
Arduino型のシールド挿さるNucleoを買ってから、
と思ってたんだけど、ひとまずF303K8で。

SPI(の出力だけ)と、リセット、Data/Command、
ChipEnableの、合計5本と電源2本で繋がるので、
繋ぐ自体はそんなに難しいわけじゃないし。

やってみた。



うん。出たぞ。出た出た。問題無さそう。

ADCの端子がフロートなので、出てくる波形は適当なもの
だけど、なんとなく普通に動いているっぽい。

内部の計算処理が、5V用Arduinoを基準にしてあるので、
こいつを、3.3Vのmbed用に直したり、周辺回路の定数
回りも、3.3Vを基準にするように直す必要があるな。

あと、メモリがそこそこ大きく使えるってことを前提に、
もうちょっとUI周りとか改善したい気もするなぁ。





オシロといえば、こないだパーツ袋の整理してたとき
に発掘した、

http://www.aitendo.com/product/11353

128×32の液晶。ST7567なので、以前作ったライブラリ
を、多分そのまま使える。これも、ペン型オシロとか
作れないかなと思って買ってきたLCDなんだよな。
まだ、ハンダ付けしてなくて全然試してない。





さっき、雷がちょっとなったなぁ、ってところから
連想。
台風近づいてくると、雲の動きがダイナミックな感じ
になるので、ふと、展望台からタイムラプスで撮影
っていうのが頭に浮かんできた。

そうえいば以前、4066使ってレリーズするシールドを
作ったような、と思って、自分のブログを検索して
みる。

http://brown.ap.teacup.com/nekosan0/2541.html
http://brown.ap.teacup.com/nekosan0/2543.html

そうそう。秋月の雷センサー取り付けても使える
シールドを作ったんだった。
(3.5mm端子出力→2.5mmに変換して、Pentaxと
Canonの主だった機種に繋げられる)

これ見ると、やっぱりメモリ量をそこそこ積んだ
3.3V版Arduinoを1個買っておかないとなぁと。
(Seeeduino Arch、半端にメモリ小さいんだよな)

http://brown.ap.teacup.com/nekosan0/3148.html

F401REなら、可聴域はカバーできそうなんだよな。





https://twitter.com/_shinitai__/status/923559031645511680

アンドロイド。





https://twitter.com/marinamiries/status/923129727312732160

金麦。





https://twitter.com/tanosensei/status/924255680399208448

もりかけその後。
お友達大事。





https://twitter.com/desean97/status/924269268853600256

「多様性が大嫌い」
なるほど。

そういえば、顔が思い浮かぶ面々は、「歴史と伝統」
とかいう、実態がよくわからないものを振りかざして、
同調圧力を掛けているよな。
そんな踏み絵、オイラバリバリ踏み割るもんだから、
だいたい苦虫噛み潰されるような顔される。

この歴史と伝統、みたいなものの成れの果ては、日産、
SUBARU、神戸製鋼、東芝、三菱自動車…みたいなもの
なんじゃないのかなぁ。





https://twitter.com/ef210301/status/922631798227591170

やっぱりいなば。100人乗ってもけが人無し。



コメント ( 0 )




昨日、諸々パーツ類を整理したんだけど、Daisoで以前
買ったパーツ箱が、秋月の小袋丸ごと収まえる空間が
なかったので、

http://www.goot.jp/netukougu/hot-30r/

このカッター部分「HOT-30CU」使って、ケースの仕切り板
をザクザク切り落とす。
ホントは、以前Daisoで買っておいた100円ニッパーで
ザクザク切ろうと思っていたんだけど、全然切れない。
さすが100円だけあって、閉じた刃を灯りに透かして
見てみると、隙間だらけ。これはさすが100円といった
ところ。とっととホットナイフでザクザク切ったほうが
いいだろうと。

買っておいた箱の場合、2×3の計6ますを繋げれば、丁度
秋月のパッケージが入る感じ。



こんな。それを2箇所作ってみた。


このサイズのマスがある小箱がさくさく手に入るといい
んだけどな。
というか、ホットナイフ、先っぽだけが熱を持つような
形だといいんだけどな。ハンダゴテだと、コテの中間付近
まで熱持ってるから、ちょっとその辺に触れると、箱が
あちこち溶けちゃうんだよな。




あと、mbed対応のSTM32 Nucleo F303K8を使ったことが
なかったので、LEDチカチカとシリアル通信だけ、
ちょっと試しておいた。

https://os.mbed.com/platforms/ST-Nucleo-F303K8/

USBシリアルで繋げられるはずなので。
それにしても、なんでSeeeduino ArchはシリアルUSB
の通信できなかったんだろうなぁ?




まずPCに接続。いくつかのドライバがエラーになるので、
STマイクロのサイトでメール登録して、ドライバをダウン
ロード。インストール。ST-LINK関係のドライバ1個入れた。
(STSW-LINK009 )

http://www.st.com/en/development-tools/stsw-link009.html


さて、LEDチカチカ。

以前、Seeeduino Archで使ったプログラムをちょこっと
修正して、使用するボードを選択して、コンパイル…。

エラー。なんか、”mbed.h”が読み込めないとか出てくる。
なにこれ?

色々と調べたり実験したりして、なんか、このプロジェクト
ファイルが参照しようとしている先が古いっぽいらしいと
いうことが見えてきた。
で、このプロジェクトに、最新のライブラリ類をインポート
すればいいんだろうと思ってやってみるも、なんか旨く
取り込めない。

もう、まったくの新規プロジェクトを作ったほうが早い
んじゃね?と思って、Lチカだけのプロジェクトを新規
で追加してみる…。

できた。サクッとコンパイル通って、サクッと書き込んで、
サクッと動いた。
しかも、書き込みしても、Windowsのエクスプローラ上で
mbed用書き込みドライブがいちいち消えないのねぇ。
コンパイル→書き込み→ちょっと修正→コンパイル…
という作業が、すごい楽に進められる。これはグーだな。


次。USBシリアル通信。

以前作った、FFTライブラリを取り込んで、msth.hの正弦波
をFFT掛けて、シリアルで前後のデータを出力するプログラム。

サクッとコンパイル通った。(なんでこっちは通るんだ?
プロジェクト作ったタイミングの違いか?)

で、teratermで繋いで、シリアルの内容を表示。できた。
サクッとできた。グー。


そういえば、USBシリアルだからだろうけど、シリアル通信
の通信速度は指定しないんだよな。CPUチップ内にUSB機能
入ってるからだろうけど。


とりあえず、STMのmbed互換ボードも、あまり深く考えず
とも、mbedとして普通に使えることが判った。


そういえば、リセットボタン無いの?この写真の下側
にある小さいスイッチ(2個のLEDにはさまれた黒いやつ)
はなんだろう?と思ったら、リセットだった。
デジタル入力使うには、スイッチを配線する必要が
あるみたいだけど、そういえば、内部のプルアップ
とかの設定、どうすればいいんだろう?

http://www.wsnak.com/wsnakblog/?p=3603

あった。wsnakのサイトに情報説明されてた。


あと、そういえばソースはそのままで、取り込む
ライブラリだけをトラブルなく最新版にするのって、
簡単にできるものなのかなぁ?なんか、さっきやって
みた感じでは、あまり旨く行かなかったんだよな。


できれば、やっぱりArduinoフォームのSTM製mbedも
1個欲しいよな。メモリそこそこ大きいやつ。nucleo
シリーズ、安くて便利だけど、USB関係はどうなんだ
ろうなぁ?





https://www.youtube.com/watch?v=jpyAxUOoVok&t=482

これは!
ナムコのシュートアウェイ2の中身。こんな感じなのねぇ。
面白い。
これ、結局、あたったかあたってないかの判定って、
どんな仕組みでやってるんだろう?
銃側から発光して、それを拾っているのか、逆に、
プロジェクター側から信号発射して、銃側の銃口から
光を拾っているのかな?






https://twitter.com/sousai_h/status/923912891450900480

戦艦大和の構造!!

この資料って、そもそも軍機じゃね?って気がする
けど、それにしても、この設計図って残ってないの
かなぁ?

あと、あれって、レイジメーターっていうのね。





https://twitter.com/Sim0000/status/924217766927769601

こんなもん、技適はなんも関係ないよな。
これ、お馬鹿が適当に思いついたこと発したせいなのか、
それとも、「エログロナンセンス」の取り締まりの次の
段階に移ったってことなのかな?

専門家ゼロってわけじゃないんだろう?





https://twitter.com/sonson1919/status/924180136181641216

そうかぁ。ノートでも8GBで少ない時代なのか。
ウチのメインPC(デスクトップ)は、4GB以上に拡張が
できないんだよな。こまったな。

あぁ、そういえば、Linux Mint入れて使ってる中古の
Let's Note、容量16GBだった。SSDが。






https://twitter.com/value_investors/status/924222078231855104

すばらしいじゃん。これが、清き一票を投じてあげた
結果だよ。支持した若い人たちが。

約束破っただけじゃなく、さらっと天下り先増やす手段
として使われてる。






https://twitter.com/3DGAN/status/923815913975005185

>逆に当初はあまりに機能がプアだった3DCAD に
>ついてくる製図機能が充実するに従い、過去の
>製図CADは使われなくなりました。プロセスは
>3D→2Dになったからです。3Dモデルが「元」で
>あり製図はモデルからの「派生した情報」に
>なったんですね。機械設計分野の話です。

すごくしっくり来る話。そうだと思ってた。

まぁ、大昔の製図のしきたりみたいのが、未来を縛り
続けるっていうのも、ナンセンスだもんな。
実際、製図で描くような三面図は、普通に出力できる
もんな。






https://twitter.com/yw0009/status/923158675753070592

「ライス」「ビール」のあたりでもう耐え切れなかった。
これ、わざと狙ってのことなのかな?
それとも、素でこういうメニュー作っちゃったのかな?

「些細なことで虫が生まれる大変美味しい」を、どうやって
食べたくなるの?






https://twitter.com/craft_box/status/923915605551472641

このオッサン、そもそも校則違反だろう。

https://twitter.com/harukazechan/status/923874456820269056
https://twitter.com/TetYahara/status/923872143544238080

日本って、こうやって「教育()」で奴隷化して量産する
システムを維持管理してきたんだろうな。


だから、この手の、どう見ても不適応としか思えない人材
が教師務まったりしてるんだろうな。
まぁ、いずれにしても、人権侵害だし、パワハラ案件だし、
憲法違反なんだけど、でも、憲法を破壊したい現政権は
絶対に締め上げるようなことはしないだろうな。

https://twitter.com/mikayuu0413/status/922787303566729218
https://twitter.com/yzjps/status/922726458476384257

こういう事件も、「法」より「お友達」を大事にしてもいい
って言うことに、お墨付きを与えてしまったんだから、
次に自分に降りかかってきても、文句は言えない状態に
なってるんだよな。特に、いまの若い女性にとって、
本当は一大事のはずなんだけどな。






https://twitter.com/Simon_Sin/status/924258328481480704

議会なんて、彼らにとっては邪魔なものでしかないんでしょう。



コメント ( 0 )




そういえば、こないだ発掘した、Nucleo STM32 303K8。
まだ結局mbed環境で触ってないんだけど、その前に
調べておきたいなと。

以前、Seeeduino Archをmbedで使ってるときに、
nxpのドライバ入れても、シリアルモニタ機能
が通信できなかったんだよな、と。

nxpのLPC11U24なのに、シリアル繋がらなかった
原因が、よくわかんなかったんだよな。


ちょっと検索してみたところでは、ST-LINKの
ドライバ入れると通じるみたいなんだけど、
さくっといくかなぁ?が心配。





http://icon.jp/archives/14246

ボーカロイドで歌わせられるキーボード、VKB-100。
へぇ。どうやって演奏するんだろう?
片手でメロディー、片手で発話っていう、例の
感じかなぁ?と思ったら、やっぱり事前入力に
なってるみたい。

そのほうが自然な気がするんだけど、問題は、
歌詞と音符がずれないかだよな。





https://jp.reuters.com/video/2017/09/12?videoId=372513596&videoChannel=200

中国のQR詐欺。
パッと見、判り難いもんな。なんか対策ないのかねぇ?





https://twitter.com/hn12v1_jp/status/905238844890423297

さすがに、これはまったく判らない。88シリーズ
は判ったけどな。





https://twitter.com/Shogo_tkhs/status/906838076638367745

はてな。





https://twitter.com/HayakawaYukio/status/907396333908123648
https://twitter.com/HayakawaYukio/status/907397156130111488

地下ダムっていうのがあるんだなぁ。面白い。
作れる場所は限られるだろうけど。
それにしても、こういうの、どうやって作るん
だろう?セメント流すんじゃなくて、固まった
コンクリを埋め込むの?





https://www.youtube.com/watch?v=aOnNbeKXpyI

エキサイティングアワー。こんな裏技あったの、
全然知らなかった。





https://twitter.com/shimoda4md/status/906684178699128832

こないだの、TKGを炒めたらっていう話。付いてる
レスを眺めてたら、結構面白かった。

車輪の再発明をしている人がいっぱいいる中、時々、
車輪じゃないものを発明しちゃってる人も居て。

ちなみにオイラも、脂の乗った旨いトロサーモンに、
ちょっと炙ってこんがり風味にしたら、もっと
旨くなるんじゃね?かつおのたたきとか、炙りトロ
とかみたいに…。
って思ったら、なんか普通にシャケフレークみたい
な味と食感だった。





https://twitter.com/Imori15671615/status/906116828124123136
https://twitter.com/Levin_0926/status/906092963196895232
https://twitter.com/lawya_jp/status/907406454805561344

なんか、本当に不思議だよな。

そもそも、昭和中期の好景気って、人工ボーナス
と朝鮮戦争特需があったからで、特にがんばらなく
ても、あのくらいの好景気になって然りなんだろう
なぁ、と思うんだけど、ああいった成功体験を
上から目線で語られても、○~○、としか思わん
よなぁ。





https://twitter.com/bokukoui/status/906888896545398785

公文書大事。





https://twitter.com/apricot_candy_a/status/906490079039729664

>いじめをした生徒3人に自主退学勧告

って話。まぁそんなところだろうけど、でもちょっと
寛大すぎない?くらいに思ってたら、

https://twitter.com/gyoza_park/status/907197243530162177

こういう変なのもいるんだな。
これを詰めると、「犯罪者を刑務所に送るのって、
これもイジメだろ!!」と同等に聞こえるけどな。

最後の一文が全部「反省しろよ」だから、単に
説教自体が目的で、だれか攻撃目標が欲しかった
のかな。



コメント ( 0 )



« 前ページ 次ページ »