electric

思索 電子回路 論評等 byホロン commux@mail.goo.ne.jp

磁気の話② 磁束φと鎖交磁束数Φ(磁束鎖交数)

2012-10-19 15:26:50 | 電子回路
(画像は http://www.ike-dyn.ritsumei.ac.jp/~hyoo/em0.pdf からお借りしました)



磁束ΦとインダクタンスL の関係は、一般的に次式で表わされます。
Φ= LI

これは磁気の解説書などに必ず登場するポピュラーなものですが、いささか注意が必要です。それは φ=LI ではなく、Φ=LI ということです。よく見てくださいね、記号φとΦが違うのです。つまり異なる2種類の磁束があるということですが、これは一体どういうことなのでしょう。

「磁気の話①」では、コイルにおける磁束φを次のように定義しました。
φ=μ(S/d)NI [μ:透磁率 S:コイルの断面積 d:コイルの長さ N:巻数]

一方、コイルのインダクタンスL は、実際のコイルの設計資料などでは、しばしば次式のように示されています。
L=Kμ(S/d)N^2 [K:長岡係数(コイルの形状等による)]

K=1 として、磁束φ=μ(S/d)NI に代入すると
Nφ=LI となります。

これが磁束φとインダクタンスL の関係式ですが、実はφはコイル1巻きを貫通(鎖交)する磁束であり、実際にはN 数に鎖交するのでコイルの全磁束はNφとなり、それを記号Φで表わすのです。これはWeb上の説明も借りてみましょう。

http://www.cqpub.co.jp/hanbai/books/30/30671/30671_1syo.pdf
「巻き線が生む磁束は、すべてがコイルを貫くわけではありませんが、コアが十分長く、かつ透磁率が高ければ、生じた磁束φはすべての巻き線と鎖交し、巻数をN とすれば鎖交磁束数Φは、Φ=Nφに近似することができます」

さすがは専門書。こちらの方がフィットしているかも知れませんね。φを「磁束」、Φを「鎖交磁束数」といいます。

誘導起電力を示す式は、e =-N dφ/dt と e =-dΦ/dt のどちらがしっくり来ますか?
私は e =-N dφ/dt がいいですね。N があるからφの変動が巻き線に鎖交して誘導起電力e を発生させる様子が見えるようではないですか。

関連記事:
磁気の話① 磁界Hと磁束φ、電流Iと巻数N 2012-09-27
電荷と電気③ 電気力線と電束 2011-02-06
コイルとはなにか (電流と磁気) 2012-10-15

コメント (57)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« コイルとは何か① 電流と磁気 | トップ | コイルとは何か② 自己誘導起... »
最新の画像もっと見る

57 コメント

コメント日が  古い順  |   新しい順
トランスの原理の記事拝見しました (鉄人)
2016-01-10 22:34:02
ホロンさん。

トランスの記事拝見しました。
いろんな記事を書かれているのですね。
感心いたしました。

かなり疑問は解けてきましたが、まだ、納得いかない点もあり、トランスの記事他でも、お付き合いいただければと思います。

ありがとうございました。
返信する
励磁電流 (ホロン)
2015-12-27 21:58:12
トランスの場合、2次側が無負荷でも、1次側と2次側を磁気結合させるための励磁電流が1次側に必ず流れます。

1次側の自己インダクタンスによって v/ωL の電流が流れるということですね。dI/dt=dΦ/dtが成り立つのは、この例j電流を差っ引いたあとの話ですね。

この辺りの話は、これも私の記事ですが、
http://blog.goo.ne.jp/commux/e/e86627db8950d69d688b50b0c8e419c2

トランスの原理①②③が分かりやすいかも知れませんね。
返信する
変圧器の2次側が無負荷の時 (鉄人)
2015-12-26 23:37:00
ホロンさん。
コメントありがとうございます。
もう少しお付き合いください。
Φ=LIと変圧器の関係についての疑問です。

変圧器の2次側が無負荷の時、ファラデーの電磁誘導の法則により、1次側で流れる電流により発生するΦ=LIによる磁束が、2次側に到達し、V=-dΦ/dtの誘導起電力が発生し、2次側には電流が流れないという説明が一般的ですが、L(dI/dt)=dΦ/dtが成り立つのならば、どこかに電流が流れないと、式のつじつまが合いません。鉄心に発生する渦電流がこの電流Iと考えていいでしょか?
また、負荷を接続して、2次側に電流が流れるようになると、この渦電流が回路に流れる電流に置き換わるとかんがえていいでしょうか?
返信する
鉄人さんこんにちは (ホロン)
2015-12-25 21:40:52
コメントありがとうございます。
まったく鉄人さんの仰る通りだと思います。

Φ=LI Φ=N^2I (Nは巻き数)ですので、巻き数が1の場合、
Φ=I になりますね。この場合、Lも1ですから、
dI/d=dΦ/dt となりますね。
返信する
Φ=LI (鉄人)
2015-12-23 23:02:44
はじめまして
Φ=LIの説明を興味深く拝見いたしました。

初心者的質問があるのですが、いいでしょうか。

この式だけを見ていると、「電流が流れると磁束が発生し、磁束が発生すると、電流が流れる」と感じてしまうのですが、おかしいでしょうか。

つまり前者の「電流が流れると磁束が発生し」は、アンペールの法則「電流が流れると同心円状に磁場が発生する」からもよいように思うのですが、後者の「磁束が発生すると電流が流れる」わけではなく、「磁束の変化に応じて誘導電流が流れる」と考えればいいでしょか。
(式でいえばL(dI/dt)=dΦ/dtでしょうか)
返信する
あ、そっか (ホロン)
2013-03-08 11:18:54
3ヘッドって録音ヘッドと再生ヘッドが独立してるんですよね。あと消去ヘッドを足して3ヘッドと。理屈上は録再ヘッドは各々独立している方がいいはずですが、1つのヘッドで録再を兼ねた方がナチュラルなんでしょうかねえ?というか、アンプの構成がICかディスクリートかが重要なのかな?話は少しシフトしますが1モータよりも3モータの方が使用感がいいし高級感もありますが、kaoaruさんはやはりこれも1モータがお好きなのでしょうか?

アドビ、フォトショップは超有名ですね。プロご用達かと。まあ私は名前を知っているだけでその実態は皆目わからないのですが。

赤外線LEDとレーザーダイオードについてはまったく仰る通りですが、特に変人扱いされるということはないかと。(^^;
返信する
3ヘッド (kaoaru)
2013-03-07 23:48:24
ウチの3ヘッドのやつはオートリバースはついてないです。

3ヘッドのオートリバースってあんまりないかもしれませんね!

変なのでは、「ナカミチ」のヤツでテープ本体をひっくり返す方式のオートリバースがあったと思います。

オートリバースだとヘッドが回転するのがほとんどでしょう!

高級機ではまずやらない方式かも?!

テープの磁性体の種類によって大きく変わるのは「磁気飽和レベル」でしょうね!

もちろん、メタルが一番深いワケですが、そこらへんに対応したモデルが最終に近いのですね!

メタルはバイアスも深いです。RS-M33でテスターで電圧を実測したら120V出ました。実際には流す電流が意味あるのですが・・・。

録音時にヘッドの端子さわると「ピリッ」と来ますよ!


絵心の彼女曰く「ウデに自信のある人はフォトショップ」だそうです!

そうだよねぇ~、極端な言い方をしたら「ドット絵」ですものね!


赤外線LEDって結構拡散するでしょ?指向性を持たせたい場合はどうしても光学レンズが必要になるのですけど、レーザーダイオードはほんとにビームが強烈ですよね!

CDプレーヤのピックアップはレンズに仕掛けを設けることによってフォーカシングを可能にしたのですね!

と・・・こういう話をしていると「変人扱い」される世の中になりましたよねぇ~?ってそれが当たり前なのか???
返信する
3ヘッド (ホロン)
2013-03-07 20:00:11
さっきバイト先から帰ってきました。今日もアナログにどっぷりです。赤外LEDの光をフォトダイオード(PIN)で受けて、その間にいろんなものを置いて信号の変化を見てたのですが、今日、赤外LEDの代わりにレーザーダイオードを使ったらさすが強力。受光側があっという間に飽和してしまったのでゲインを1/10以下に落とす改造をしていました。

さて、3ヘッドはオートリバースが可能ということですよね。一瞬3モーターかな?と思ったのですが。テープとの相性はセレクタがあるんですよね?ノーマルテープ、クロームテープ、メタルテープと。同じノーマルテープでも微妙に違うということでしょうか?

仕事先に絵心のある女性従業員がいらっしゃるのですね。音楽ができる人も尊敬ですが、絵を描ける人も尊敬ですねえ。こっちはただホーッと感心するしかない。
返信する
アンドロイドの画像(?) (kaoaru)
2013-03-07 00:17:17
あれ、多分、手書きじゃないですよ!

ドローツールで描いたんじゃないかな?

パッと見で、そう思いましたモン!


ドローツールで描く人ってね、私のようなプログラマからは想像もつかない感覚をもっているんです。

職場にドローツール遣いの女性(既婚者)がいるのですけど、そのあたりの話を私のほうからよくします。

もともと、派遣契約のときに同じ派遣会社に所属していたというのもあるんですけど・・・今は私と同じ!

年齢はたしか今年37になるんじゃなかったかな?

昨日は「胃カメラ」の話で盛り上がっちゃった。36過ぎちゃったモンねぇ~、しょうがないやねぇ~!

そうそう、その彼女に「ドット絵」を頼んだことがあった・・・アイコンに使うため・・・やっぱりね、うまいもんです。


順番があとのほうになってしまいました。

あのカセットデッキは、今やお気に入りです。

テープとの相性もね、いろいろ吸収してくれるし・・・。

3ヘッドのヤツは、もう、テープとの相性がほんとにモロ出ちゃうので困るのですよ・・・。

やっぱり、本来の部分に一番手が入っていた頃のヤツがイチバンだぁ~!
返信する
105円は素敵ですねえ (ホロン)
2013-03-06 23:21:59
更新された「105円でカセットデッキ」の記事を拝見しました。使用価値というか、それなりのスキルがある人にとっては価値が高いですよね。しかし市場価格は105円。これぞ掘り出し物ですねえ。しかもまだそこそこ使えるパフォーマンスを持ってるようですね。いま105円で何が買えるだろう?缶コーヒーも買えませんよねえ。

アンドロイドのはこはそんなに大きいのですか。写真では小さく感じましたが。画家ってほんとすごいですね。あれだけの絵でもなかなか描けるもんじゃない。

私もたぶん指向性は「おたく」の部類に入るのだと思います。萌え系のイラストやフィギャーなんかも好きですね。
返信する
HP更新してます・・・ (kaoaru)
2013-03-06 22:56:40
105円でカセットデッキを調達してきました。

詳細はHPにて!

では!
返信する
アンドロイドの箱 (kaoaru)
2013-03-05 23:57:46
あの箱、なかなかいいのですが、少々大きめかも?

500mlのペットボトルが4~5本くらい入る大きさです。

デザインはどちらかというと、私向きではないかなぁ~?と思ってはいますが・・・。

あれ、箱だけでも飾っておいたら「ダッチ」だっていうのがバレバレですな!

たしかに、イヤらしさは感じないデザインではあります。


そのうち、全身ダッチにも挑戦(?)してみようかと・・・。


フィギュアは、実は台座のピンが1本折れていて、それが原因で300円だったのでしょう!中古ですけど・・・。

まぁ、スレンダーなりに脚線美なので、結構いいです!

「エヴァ」のほうが認知度高いんで、安くないんです^^;

ボディ的にはそっちのほうがいいんですけど・・・。

3Dモデリングでなんかやろうかと思ってやりかけたのもあります。

Windows98の頃、myShadeを自腹(11800円)で買って、当時は自分のクルマ・パイザーのモデリングに挑戦してみましたが・・・なかなかうまくいかんもので・・・。

それがうちのまにか仕事でも使うハメになって・・・。

立体的に構成するハードウェアだったので、かなり役に立ちました。

案外、こういう方面は好きだったりする私です・・・。でも「おたく」と呼ばれるのは抵抗がありますが・・・。
返信する
NSP最高潮 (ホロン)
2013-03-05 22:17:08
NSPが炸裂してますね。春を目前にした寒い3月。季節はNSPなんでしょうねえ。私はいまはまってる曲はチャイコフスキーの交響曲第5番です。まあ今更でもない曲なんですが、西本智美.が指揮するロシア国陸交響楽団の演奏が実にいいので、このところ毎日聴いています。これと現在製作中のパワーアンプとがリンクしているわけですね。今日は朝からさっきまでオーディオ三昧でした。アンプの方は完成が見えてきて、あと初段と2段目のバイアスを微調整する予定です。

アンドロイドは箱の絵柄が実にいいですね。箱が欲しくなりました。(^^)
おまけのフィギアもいいじゃないですか。写真も綺麗にとれていてグッドです。私は以前勤めていた会社で綾波レイとアスカ・ラングレーの2体のフィギアを机に置いていたことがありました。パソコンの壁紙もエヴァでしたね。
返信する
こまごまと・・・また・・・ (kaoaru)
2013-03-04 11:11:46
ここらへんでやめとこ!

「おはじき」

私の中では、こいつは「カッティング奏法」の定番です。
こいつで「カッティング」をマスターしたようなモノです。


先の「あの娘をひとりじめ」ですけど、ソロの部分、絶対Charですよ!最後のところのあの「しつこさ!」いかにもCharらしい。
返信する
他には・・・ (kaoaru)
2013-03-04 11:06:45
「待っても待っても」

これは、まさに私そのもの!って思います。


「あの娘(こ)をひとりじめ」

私には「これだけはぜぇ~ったい縁ないね!」っていうところ・・・。


ここ数年、また聞き出したNSPです。さびしいものです・・・。
返信する
これも敬遠される・・・かも? (kaoaru)
2013-03-04 10:54:58
NSPの「砂浜」という曲なんですが、これもやはり高校卒業近辺でよく聞いたのですが・・・。

2年前の「津波被害」を連想してしまうかもしれない部分が、曲の一番最後のほうにあります。

案外、こういう部分ってデリケートな世の中になってしまっているんだと思うんですけどねぇ~!
返信する
NSPの曲で今は放送できないもの? (kaoaru)
2013-03-04 10:46:28
「さようなら」のドーナツ盤シングルのSIDE2は「新青春」っていうのが収録されているのですけど、こいつは今のご時世では、ご法度かもしれません。

「殺す」という文句がなんとも「秋葉原の無差別殺傷事件」を連想してしまうかもしれないからです。

たしか、1stライブ盤にも収録されていたかと思います。

とにかく「歌詞」の内容が、現代の若者が起こしている事件と結びつくのです。

まぁ、「若い」というのは、そういう方向もあるのですけどね!

返信する
そうだ、思い出した! (kaoaru)
2013-03-04 10:40:57
2000年頃だったか?

CDMDラジカセを買った頃で、FM放送を留守録する日々があって、MDLP4のモードでかなり溜め込んでいました。

今もメディアは聞く事がありますが、「中島みゆき」の特集ももちろんありました。


「あした天気になれ」っていう曲名だったでしょうか?

これはなかなか気に入った曲でしたね!

「旅人のうた」はなんか「軍歌」のような雰囲気がなんとなくイヤかなぁ~?

「地上の星」は好きです。

まぁ、私がもつ「中島みゆき」のイメージは「ひとり上手」なんですけど^^;
返信する
フィギュアの件 (kaoaru)
2013-03-04 09:07:47
ブックマークされているトップからいけます。

URLに貼っておきました。

9番目のネタですが、そのトップはスキップして・・・(笑)


「中島みゆき」ですが、NSP以前にこちらのほうが先でしたよね?だって、ポプコンで優勝してデビューしたのは彼女のほうが先だったかと・・・。

「時代」は中学生の頃聞きましたね!

まだテープレコーダ持ってなかった頃で、ラジオだけでしたけど・・・。深夜放送を聞き始めた頃です。

新潟なのに無理やりTBSとかニッポン放送、朝日放送・・・フェーディングがすごかったですけど、なんとか聞いてました。

新潟では、初期の頃は放送してなかった・・・というよりも深夜放送そのものがなかったのですね!
返信する
「春はもうすぐ」 (ホロン)
2013-03-03 23:24:43
そう、春はもうすぐですね。とは言え春までのこの1カ月が長く感じてしまうのですが、もうしばらくは寒さは続きますね。でもまあ、そう言ってるまもなく桜が咲く季節になるのでしょう。

自分にとって、その時々の特別の曲ってありますよね。私の場合はほとんど「中島みゆき」になりますが。とりわけ「時代」は普遍的ですね。私にとっては、みゆきの多くの曲が癒しに、またやる気を醸してくれます。「ファイト」などはモロ来ますね。

はい、テルミンの製作を開始しました。今日はとりあえずサイン波を生成してH8が内蔵している10bitのDACから出力してみました。オシロで見るときれいなサイン波が確認できてまずまずです。あとはドレミファに対応する各周波数に切り替えれるようにしておけば、とりあえず出力部はできあがりますね。周波数を無段階に変化させるのではなく、音階にして欲しいというのがクライアントの要望です。

昨日購入されたというフィギアがぜひ見たいですねえ。(^^)。どこを探せば見れるのでしょうか。トップページのブックマークから「倉庫・引越し編」にはリンクしてるのですが。

原点に立ち戻る。これは越えられそうもない壁にぶつかった時などの基本ですね。私もしょっちゅうやってるかな?
返信する
はじまりましたか・・・ (kaoaru)
2013-03-03 20:53:06
とうとう開始ですね!

こちらは「原点」に戻っています。

学生時代にこのシーズンだと、いつも思い出す曲があって、この数年もそうです。

「NSP」の「春はもうすぐ」です。

このコード進行はEm-D-Bm-Emというのがメインになっていて、循環パターンではないのですが、これをもとにギターをもってコードを鳴らしていくと、他も容易にわかる・・・そういう曲です。

どっかのサイトで「初心者向け」って決め付けていたようですけど、その基準は何?って思う私です。

当時はスリーフィンガーでピックは一切使えなかったのですが、違う弾き方を工夫したいと思っているところです。

ギターだけかかえてできるところがミソです。

メンドくささがないのがいいのです。だから「癒し」になるのですね!

昨日、フィギュアを1つ入手して(HP更新!)気分一新か?(ん、なわけないか・・・)


趣味のプログラミング・・・はもうやりたくないかな?

目的達成のためにどうしても必要・・・ということでもないかぎり、やらんでしょうね、たぶん。


では、無事達成できますことを!
返信する
6502 (ホロン)
2013-03-03 00:26:29
私が初めてCPUを見たのは(見てもあまり意味ないけど)かのアップルⅡ(コンパチマシン)のマザーボードに乗っていた6502です。アセンブラもほんの少しやったかな?DOS3.3とかいうOSに付属していたマクロアセンブラでね。その後、任天堂のファミリーコンピュータに採用されて6502は一躍有名になりましたね。その頃いた会社を辞めて35年が経過して、今またアルバイトとしてその会社に戻っているという状況です。

今日、ようやく重い腰をあげてテルミンの開発を開始しました。1年前にプログラムしたH8SXのソースの不要な部分をすべて取り除き、ビルドまで成功しています。動作の方も予定通り。HEWの使い方を思い出すのに苦労しましたが。ともかくも一歩は踏み出しましたが、はてさてゴールまでたどり着けるものやら?
返信する
68系ならば、特に気にすることも・・・ (kaoaru)
2013-03-02 19:55:48
6800からはじまって6802、6809、68000・・・といずれもメモリマップドなので、ポインタアクセスでポートアクセスは同義語となりますね!

三菱のワンチップ、M37450のシリーズは、コアが実は6502コンパチなのです。よって、これもメモリマップドです。
現在は38000シリーズに継承されていると思うのですが・・・まだディスコンじゃないと思うけど・・・。


私の場合、Z80や8086もハードをやってきていたので、どちらでもOKなのでした。

6809のスタックに積んで演算させるのだけはニガテなほうですね!アセンブラで逆ポーランド、というベキか?!


68000はシャープのX68000で、デバッガでプロテクトのチェックルーチンをさがすのにお世話になりました・・・。68000版のOS-9にはがっかりしましたけどね・・・。独自アプリがまったくなかった・・・。

8ビット転送とかはmove.qとかありましたね!

こういうのはH8が良く似ていますね!

日立はモトローラ系でしたからね。

86系はセグメントがいやがられていたんでしょうけど、今やそういうプロセッサは存在していませんし、フラットメモリモデルでプログラミングすることしかありませんから、気にしなくていいし。

PC系はインテルだけになっちゃったし、それ以外はARMのひとり勝ちですからね。

80386の系統のプロセッサはいまやハードウェアでエミュレーションされるという、まったくの別モノですから、プログラマという立場からはまったくといっていいほど意識しなくていい。OSがらみをやる場合は別でしょうけど・・・。
返信する
プログラムの夢。(;;) (ホロン)
2013-03-02 16:05:52
これは私も経験ありますねえ。特にバグが取れなくて困っているときなど。悪夢ですよねえ。確かに睡眠不足になりますよ。私の場合は昼夜逆転になりました。

char *ptadr;
ptadr = 0xfff0;
*ptadr = 0x00;
これは目に焼き付けておきます。ありがとうございました。

「inter.c」は見たことないですねえ。割り込みのソースが記述されているかも知れないのですね。分かるかどうかはともかくとして一度見てみますね。

80系86系はまったく経験がありません。68系のリニアなアドレス空間の方がエレガントだとよく言われますよね。まあこの先も80系に触れることはまずないでしょうね。
返信する
補足 (kaoaru)
2013-03-02 14:08:04
先ほどのポインタアクセスの例は、「メモリマップドIO」の前提です。

x86系のように、IOとメモリが分離されている場合はIO系用のルーチンが別に必要になります。

だから、inpとかoutとかのライブラリ関数があったワケなのですね!

こういう関数を自力でインラインアセンブラの記述をすれば、なんでも自在にこなすことができます。

組み込み系C言語の場合、アセンブラの知識がないと困るものです。

H8の場合は、割り込み記述のソースがinter.cになってましたっけ?

たまにはレジスタマップをじっくりごらんになるのもいいかと思います。

プログラミングのアイディアにつまったときとか・・・。

プログラムを組んでいる夢なんてしょっちゅうでした。

「パッ」と目が覚めて、気になったことはメモしておいたりしてました。まともに寝てなかったのですね、きっと・・・。


今はもう、そういうことはないです。

そこまで根をつめなきゃならん仕事なんてないですから。
返信する
絶対アドレス (kaoaru)
2013-03-02 13:53:44
すでに「iodifine.h」をごらんになって、もうすでにわかっていらっしゃるかと思います。

最後のところで「volatileほにゃらら・・・」で0xffffなんとか・・・っていう値が「ポートアドレス」です。

ポートアドレスは変更されてはこまりますから、volatile修飾されているワケです。

ポートアドレスもポインタアクセスは可能ですが、1つ2つくらいだと、あんまりやりませんね。

char *ptadr;

ptadr = 0xfff0;

*ptadr = 0x00;

っていうことだと、ポートFFF0hに00hを書き込むということになりますが・・・「iodefine.h」に定義されている構造体を使えばそんなことを考える必要もないですしね!

ポートアドレスにポインタを使う場合って、ポートに広い範囲のメモリを割り当てた場合なんかが便利ですね!

ここらへんは、もうご納得されているようですから大丈夫なんじゃぁ~ないですか?


私もここらへんは教えてもらったワケでもなく、自力で調べました。そして、自力でターゲットを1発で動かしました。

そのあたりは、「旧なんとか鉄工」の子会社の連中は「動かせない」と思ってたみたいです。バカにしてたんでしょうね!
返信する
ほう、なるほど (ホロン)
2013-03-02 12:48:59
「配列はポインタそのものみたいなモン」ということなんですね。つまりアドレスを指し示すモンってことでしょうか。私がポインタを使ったことが無いというのは「*」を含む記述をしたことがないってことですね。ポートアドレスやその他ペリフェラルのアドレスは絶対アドレスですよね。この場合にはポインタ変数を使う必要があるってことになるのでしょうか。

お話のH8に用意されているiodifine.hというヘッダーには共用体とポインタがびっしりと記述されていますよね。あれは読まなければプログラムが書けませんので、何度も参照しました。不思議なもので予備知識ゼロでも、記述をしばらく眺めていると、なるほどこうやってるのかと分かってきますよね。

「構造体のメンバに”前や次の構造体を指すポインタがある”、という至極単純な話」
これもなるほど納得です。
返信する
どうしてもポインタをつかわなければならない場合・・・ (kaoaru)
2013-03-02 01:09:52
「リンクドリスト」をやる場合はポインタから逃げられません。

つまり、構造体をチェインするような場合です。

デバイスドライバなんか典型的にそうですが、それ以外にも、UnDoやReDoを実現する場合にも活躍します。

組み込み系でも、履歴を残す場合なんかがこれに相当するかもしれません。


構造体のメンバに「前や次の構造体を指すポインタがある」、という至極単純な話でした。
返信する
いや、多分、無意識に使っていると思う・・・ (kaoaru)
2013-03-02 00:56:12
「特にポインタを使う必要もありませんでしたしね。」

これ、みなさん気づいていないのですよ、おそらく・・・。

「配列」ってポインタそのものみたいなモンですよ!


簡単な例で、1次元のchar型配列だったらどうでしょう?

char a[3];

a[0]=0xaa;a[1]=0x55;a[2]=0x00;

これだとわざわざポインタ変数を使うまでもないですね!

0,1,2の添え字がポインタのアドレスみたいなもので、a[0]ってやったときが参照のようなモノです。


ポインタが使えなかった頃は、とにかく配列で逃げていました。

でも、どこかのWebの記事でこのような内容を読んで、「そういやそうだねぇ~!」って思ったモノでした。

配列とうまくつきあえれば、無理にポインタを使うこともないとは思います。リングバッファをアクセスする場合なんかはポインタのほうが楽、とは思います。

パケットを作成する場合はsprintfが使えるととっても楽なんですけど、標準ライブラリを使えるだけのメモリ余裕があるかどうかで考えなければいけないですけど・・・。

MS-DOSでC言語やっていた頃の手法が、今の小規模の組み込みマイコンに結構合うものなのですねぇ~!

ビットフィールドも共用体を使うととってもわかりやすくプログラムが書けるのですけど、それがすんなりできるのはルネサスのマイコン用Cコンパイラくらいなものです。

HEWでH8とかSHとか日立系のCPUを選んだ場合に作成される雛型のヘッダに「共用体」、たくさん記述されてますね!最適化の対象から外すようにvolatile宣言もしてますし・・・。

ほんとにPC用のCコンパイラのようです^^;
返信する
ふむ、ポインタねえ。 (ホロン)
2013-03-01 20:22:31
C言語の初学者がかならず躓くといわれるポインタですよねえ。かく言う私もその昔入門書などでポインタが出てくると眠くなって寝てましたね。特にポインタを使う必要もありませんでしたしね。だから今でもポインタが何であるかは分かっていません。でも解説付きでこうやって書いてくださると、その他文献よりもずっとわかりやすいというか、何となくそうやって使うんだ、って感じにはなりますよね。ありがとうございます。

アセンブラはそれほど大規模ではありませんが、6502と8086、それとDSPの96000でやりましたね。と言っても、もう20年も前のことになりますが。だから細かいことはもうすっかり忘れちゃってますね。

フッと思い出した悲しくも切ない思いでですね。私にも似たような経験がありますよ。まあデリケートというかセンシティブなんでしょうねえ。(^^)
返信する
そういや、「フッ」と思い出したことが・・・ (kaoaru)
2013-03-01 13:18:17
いや、もう古い話で・・・。もう、ここの題とは関係ない話ばっかりになってしまっているので、ついで・・・ということで。

前に「ソープ」行ったことをちょろっと出しましたけど・・・。

そのときのことを思い出したのです。

最初は「騎上位」だったんですけど、挿入してから「あぁ、演技してるな」と思ったところから、こっちのほうが萎えてきてしまったのですね!

そういう大袈裟なことをを露骨にやられるとイヤですねぇ~!

嬢は、あわてたのかどうかはわかりませんけど、「パンパン」と勢いが激しくなりましたねぇ~!そいつがかなりキツかったことはよく覚えてます。


こういうことをね、「フッ」と思い出すことあるんです。

「ひとり身であることの感覚」が長いからですね、きっと。
返信する
アセンブラをやったことあるのなら・・・ (kaoaru)
2013-03-01 10:25:24
内容はともかくとして、アセンブラ経験があるのなら、「ポインタ」の習得は比較的なじみやすいのでは?

たとえば

main()
struct strABC{
char a;
char b;
char c;
};

struct strABC abc;
struct strABC *p;

p = &abc; // ここで構造体のアドレスをセットする

p->a = 0x30; p->b = 0x31; p->c = 0x32;

printf("%02X\n",abc.a); // メンバaだけHEX表示してみる

}

なぁ~んてやると「30」って出ます。(実際に動きます^^;適宜、インクルードするファイルを指定してコンパイルすれば・・・)


でも、これ、マイコンで直接表示できません。統合環境のデバッガやシミュレータならば、デバッグペインで確認することができるかもしれませんが・・・。

こういう確認作業にPC用のCコンパイラを使う、というのが一番いいです。

特に、統合環境でデバッグ環境もついていたいたほうが、これからとりかかかる方には楽かもしれません。

フリーコンパイラというのもたくさん出回っているので、出費もないでしょうし・・・。

私は自腹購入のCBuilder(しかも初版)があるんで、そういう用途にはもってこいのヤツです。もちろん、Windows用アプリの開発にも活躍してましたが・・・。


※プログラマ稼業?をやる以前からソフトには結構出費してたのですけどねぇ~?早計すぎたよなぁ~?って思ったものでしたが・・・。だって、当時はまったく「ネコに小判」どころではなかったからねぇ~!
返信する
いまはどこも同じですよ! (kaoaru)
2013-03-01 09:13:47
少なくとも、日本国内で自社生産と販売をしている電子機器製造系の会社なんてほとんどないですよ!特に大手は・・・。

昔でいうところの「ガレージメーカ」的な小さな規模のところがまだ残っていて、細々とやっているに過ぎません。

特に、無線LANなんか国内では一切ハードなんかやれてないですよ!やろうとおもっても、そういう技術がありません。国内でできるものといったら・・・PC用のドライバを除くアプリ部分だけでしょう?!

それですら、BUFFALOの社内ではすべてをまかなえないんじゃないでしょうか?核心部は外注に頼らざるを得ないでしょう!

CANONはハードに付随するソフトはみんなグループ会社が作っています。ほとんど「新潟キャノテック」かもしれません。

昔からそうなんですけど、自分のところで全てをまかなうことがやれたのは、小さい会社だけだったのですよ!技術力をウリにしないと生き残れないですからね!

大手の製品見たら、「これ、どこに作らせているんだろうね?」って自然にそういう風に思う自分が悲しいですが・・・。

「知らぬが仏」

まさに、そのとおり!^^;

返信する
一番重要なところ (ホロン)
2013-02-28 20:03:04
「小さなルーチンの積み重ねが、なんと巨大なモノをつくる発想にいつのまにかなってしまう」
そうですね。これはよく分かる話です。世の中のシステムと呼ばれるものはすべて同じですね。でも私の現状はといえば「えっと、変数宣言ってどうやるんだっけ?」ですよ。(笑)

「派遣のほうがスキルがある」と思い込んでいるのは、たぶんそのように教育されたからでしょうね。日本型年功制という強固な仕組みを破壊してしまったのですから、それなりの嘘八百が当時が当時は溢れかえっていました。しかしそれが大嘘であったことは今の惨状が証明しています。中間層が貧乏人になり、貧乏人はさらに貧乏人になり、金持ちがさらに金持ちになったということだけですね。こんなものが総体として持ちこたえるはずがありません。インチキプログラマもたくさん産出したのもうなづけます。

IOデータには私もなんども泣かされましたが、やはり粗悪だったんですね。バッファローはその点なかなか良いのではと思っているのですが。経験的には。
返信する
せいぜい組み込みマイコンの小さなプログラムを組んでみるだけ。 (kaoaru)
2013-02-28 00:05:17
実はそれが一番重要なところです。

大体は、意気込んで、いきなりたくさんコーディングしてみようとしたりするモノなのですよ!

小さなルーチンをたくさん試してみて身に付けるものなのです。

楽器の練習もそうでしたね!

「部分練習」というものがそれに相当しますか・・・。

それの繰り返しです。

その積み重ねが、なんと巨大なモノをつくる発想にいつのまにかなってしまうのですね!

組み込み屋を離れてPCプログラミング、VB6でしかないものですが、(一部、Cで組んだのもありますが・・・)扱っているのはかなり巨大なものばっかりになってしまいました。

他の派遣会社から来てたプログラマもいた時期があるのですが、「実はゼロからつくったこがない・・・」という、ほとんど「未経験者とおなじじゃねぇかぁ~!」という人たちが簡単に音をあげてしまうほどのボリュームです。



小泉内閣の時代・・・それは、インチキなプログラマをたんさん産出してしまったどうしようもない時代だったのです。

遡れば、「派遣法」なんてのを制定したこと事態がまちがいのもと!昔は「出向」とか「借役」とか言ってましたけど・・・。

「派遣先の社員の思惑」というのは虫のいいもので、「派遣のほうがスキルがある」と思い込んでいるんですね、それは今いる会社がモロそうでした。現在は派遣会社と縁がきれたので派遣ではないですが・・・。

正直な話、「派遣プログラマ」で若いヤツはみんな「コピペプログラマ」か「未経験なのに経験者と偽っていた」のばっかりでした。

こういうモノを生み出してしまった功徳は、たしかに法律のせいだと思いますね!

今現在、「正社員」としてしがみついている人たち、おそらく使い物になんないくらいダメな連中ばかりだと思う。

そういう人たちが全部外に丸投げで、ダメな品物を世に送り出すという悪循環はさらに加速する・・・ってとこですかね?

そのいい例がPCとかPCの周辺機器です。

PCIとかコレガとかはもともと自社生産はまったくないので話になりません。

コレガの初期の頃のルーター、どこで請け負ったか知っています^^;新潟のとある会社で、どうにもなんなくなって、「旧なんとか鉄工」のグループ会社のほうにまで回ってました。

アイオーデータとか三菱とか、LCDディスプレイを分解してみますと、「外注に丸投げ」っていうのが見え見えです。価格優先で、1台あたりの納入価格を決められてしまって発注しているんだろうな、と感じました。

だから、ハードウェアの検証なんてやってないですよ、絶対!内部はあまりにも粗雑な造りです。

「どうせ安いんだから、不良だったら交換すればいい・・・」という声が聞こえてきそうなモノばっかりです。

もともと「量産品」というのは好きなほうではない私です。製造の現場を知っていましたんで・・・。だから、オーディオ機器を買うと、すぐにバラしてました。ハンダ不良っぽい部分なんか見つけると修復してました。サンスイのチューナーなんかネジが1本なくてスイッチを押すと引っ込むという・・・なんとも信じがたいこともあったのです。

まぁ、今はまったく電気製品関係には興味ありません。だから買うこともないですし、そんな余裕もありません。

「何も期待していない」っていうのは、こういうところに根源があるのですよ・・・。
返信する
でかいアプリケーション (ホロン)
2013-02-27 22:58:28
企業が固定費に手を付け始めてからアウトになりましたね。目先の儲けが最優先なら、低賃金の若手の給料を上げて高賃金の年寄の給料を下げれば固定費が縮小して利益が増える。手っ取り早い方法ですね。アメリカの命令とは言え、これが小泉と竹中の構造改革の本質だったのだと思います。

それはさておき、適齢期を過ぎたというか、私がもうこの歳で大きなアプリケーションをプログラムするということはあり得ないですね。せいぜい組み込みマイコンの小さなプログラムを組んでみるだけ。これを仕事と捉えると辛すぎます。趣味ですよ、趣味。動機としては「好きだからやる」「楽しいからやる」ですね。

とはいえ「巨大なアプリーケーションであっても、中身は”単機能なルーチンの集まり”」などの話は興味を惹かれますし、ひとつのツボを教えてくださっているのだと思います。さて、この先私は「単機能のルーチン」を幾つ作ることができるでしょう。まあたかが知れています。せいぜいあと10年。何をどこまでやってみましょうかねえ?
返信する
プログラムってね・・・ (kaoaru)
2013-02-27 12:56:02
大きなアプリケーションを作りたかったら、各ルーチンは機能最小限で単純に組むように心がけてください。

昔のCOBOLとかBASICプログラマだと、たくさんのことをいろいろやろうとしてハマりますが、そういう方法をやっていると、大きなアプリケーションなんて絶対に組めません。


ある意味、OS自体も大きなアプリケーションなんです。

人間くさい部分の処理があったりして・・・。


ループ構造の繰り返し・・・それがプログラミングのコツでしょうかね?

PCの場合は「オブジェクト指向」を身に付けないとやっていけないモノです。でも、基本は同じです。


それを心がけるようにやってきたからこそ、スクラッチ(何もない状態)からものすごくでかいアプリケーションをこなせるようになった私です。

もう、ハード屋さんのあの頃の悩みというかわからない?というのはなんだったんだろうか?今はそれがわかりません。

でもね、「コピペプログラマ」っていう呼び方を私はするのですが、Webにあるやつをコピペしただけで内容なんてロクに検証や理解もせずに「作りました」っていうのが仕事しているのをみると腹が立ちます。

そういうのといっしょにやっていた時期もありますが、そいつは「切られました」ね。

巨大なアプリーケーションであっても、中身は「単機能なルーチンの集まり」なんです。

それが感覚的にわかっている頃、おそらく何か大きなプロジェクトに着手しているのでしょうね、たぶん。
返信する
いや、そういうことではないと・・・ (kaoaru)
2013-02-27 09:36:59
あまり、そのように考える必要もないかと・・・。

年寄りは敬遠される・・・ただそれだけのことです。

まぁ、もっとも、それを感じたのは41で転職活動をはじめた頃の話ですけどね!

日本国内の産業は空洞化が進行しすぎて、今じゃもうどうにもならん状況だと思いますよ!

何も期待してないんで・・・いいんじゃないですか?!困るのはこれからの世代の方々と敬遠された方々。

とくに敬遠された方々は、じきに同じ目に遭うので「おあいこ」でしょう!かなり「イタイ、ペナルティ!」ってとこですかね?

そのくらいに考えておかないと、自ら命を絶つことになりますよ!

わざわざ、自ら命を絶たなくても、全うするほうに限りなく近いわけですから、そのままいけばいいだけの話です。


ただ、それだけのことですよ!

(我ながら、いつも思うのは、よく誤字脱字が多いよねぇ~、ポストしてから気づくことばっかです^^;)
返信する
真骨頂 (ホロン)
2013-02-27 02:55:25
マイコンにまつわるうん蓄。まさにkaoaruさんの真骨頂かのような。しかし私には多くが馬の耳に念仏のようで残念です。もう少し分かってくれば具体的にお尋ねしたいこともたくさん出てくるのでしょうが。

「”C言語はみんな同じ”というのは、ルネサスのラインナップだけです。PICやAVRはもう、手軽に入門するためのツールと解釈したほうがいいでしょう!」了解しました。非常に分かりやすい説明で、なるほどと納得です。前回のH8のプログラミングでは「愚の骨頂」を連発していた私です。待ちはすべてfor文while文で書いていました。それでできてしまう用途だったからですね。今回は何としても「タイマー割り込み」を克服してやろうと思っています。

「”タイマ割込み”では、タイマをカウントする変数を操作するだけで処理を終わる、という基本的な考え方がないとウマくないです。数10msecも同じところをループさせるのではなく、1mSecでタイマ割込みがかかるだけの雛型を作ります。10mSec待つにはカウント値が10回経過すれば目的達成ですから、メインループでそれを監視するだけでよいのです」。このあたりの話が分かるようにならないといけないんですよね。現時点では「???」です。(;;)「なるべく早いうちに割込みはマスターすべき!」了解!!

派遣の話、職安の話、現状の話。ほんとにもったいないですよね。kaoaruさんのようにまだ若くて、お持ちの高等なスキルをうまく使える会社がほとんどない。ほんとは喉から手が出るくらいにそのスキルが欲しいはずなのに。やはり(日本の)世の中、狂ってしまってるんでしょう。大小問わず企業はすべて崩壊してしまうでしょう。まあ意図してそのようなメカニズムに変えてしまったわけですがね。
返信する
この期末が結構アブナイ? (kaoaru)
2013-02-26 11:59:08
今いる会社、この期末を乗り越えられなかったら、今年アウトでしょうね、たぶん。

特に業界が冷え切っているので否定できない材料ばかり・・・。

そうなったら、また職安いくしかないかなぁ~?

でも、なかなかないんだよねぇ~!
返信する
さらに補足すると・・・ (kaoaru)
2013-02-26 11:16:09
その後、そこの「偽装派遣」はヤメました。

丁度「製造業も派遣可能」という法律が施工された月でした。

単価は安いし、バカバカしくてやってられなかったし、社員にはイジメ抜かれたので、「うつ病」にかかる寸前までいったからなのでした。

自覚できてたのがキッカケだったんで、迷わずヤメることにしました。

それが、あの「旧なんとか鉄工」のグループ会社だったのです。

まぁ、派遣会社(株トーコー)がいくら請求していたのか、請求書を見かけたことがあってわかっていたのもあるのですが・・・。

職安で紹介してもらって手当ても支給されていたこともあり、「1年はやるか・・・」というつもりでしたので・・・。

その後は現在に至ります。

2004年の5月から今まで、労務関係だけが変化しても仕事は継続している・・・という奇妙な状態です。

まぁ、紙の上では「無職」と同じなんですけど・・・。
ちゃんとした「労働契約」なんてしてないし・・・。
返信する
ワーカースレッド (kaoaru)
2013-02-26 10:57:02
たしか、2003年くらいだったか・・・。

VC++6を使うハメになりました。

ソフトの注文主が「VBじゃイヤだ!」というんで、私のところにまわってきました。

VCなんて使ったことがなかった。個人ではCBuilderを使っていたのですが、クラスライブラリがまったく違うので、そこからのスタートです。

1ヶ月近く、あーでも、こーでもないといじりまわしてそっから着手してどうにか納品しました。

納品してから「ボタンをクリックしたらそのボタンが押せないからなんとかしてほしい」というんです。

そりゃぁ~そうです、シングルスレッドのアプリですからあたりまえのことです。

丁度5月の連休のことだったのですが自宅で1晩かかって「マルチスレッド」に作り替えました。

それがはじめての「マルチスレッドプログラミング」になりました。

そのときやったのが「ワーカースレッド」というヤツで、「目的を果たしたら、自動消滅する」ものなんですが、これが一番簡単です。

CBuilderにはそういう概念がなかったのですが、やってみたらアッサリできちゃいました。

こういう経験が今の私の根底にあるのですね^^;


いまは「マルチスレッド」なんてどうってことないのですけど、デバッグがやりにくくなるのは今も昔も変わらないです^^;スレッド中でブレークすると統合環境が最悪ハングします^^;

いまやVB6なんであんまり関係ない・・・ってこともなくて、VB6もね、完全にActiveX依存の統合環境なんでハングするんですよ・・・困ったモノです。

ま、一応そんな感じでフルタイムやってます。
返信する
ダミーウェイト (kaoaru)
2013-02-26 10:31:19
マイコンプログラミングでありがちな「待ち」ですが、どんな方法を考えますか?

これは「待つ時間」によって使い分けなければいけないでしょうね!

「タイマ割込み」では、タイマをカウントする変数を操作するだけで処理を終わる、という基本的な考え方がないとウマくないです。

数10msecも同じところをループさせるのではなく、1mSecでタイマ割込みがかかるだけの雛型を作ります。

10mSec待つにはカウント値が10回経過すれば目的達成ですから、メインループでそれを監視するだけでよいのです。

待ちに端数がある場合、それがマイクロSecくらいだったらその場をループさせるようなものでもいいと思います。

そういう部分はCでやるのは結構カットアンドトライが必要になるかと思いますが、できないことではありません。アセンブリルーチンを作る余裕がなくて、そうやったモノもありますんで^^;

最初のプログラミングは割込みなし、というのが定番になっているようですが、それは間違いだと思います。

なるべく早いうちに割込みはマスターすべき!

マイクロチップから供給されているアセンブリソースの雛型は「割込み」となっていて、これが基本です。

割込み処理部のことを「割込みハンドラ」なんて言っていた時代はいずこに・・・現在はOSがらみが主体ですから、割込みはOSが管理することになります。でも、アプリケーション側もOSから呼んでほしい場合もあります。

それが「コールバック」と呼ばれるものです。

これがわかるまでに苦労しました。

UNIXとWindowsではまったく構造が違うので、いきなりUNIXなんかに着手すると混乱が続くかもしれません。

でも、フリーの開発ソースって、ほとんどがUNIX(Linux)上で開発されているんですよねぇ~!

もちろん、マイコン系のツールなんかもそうで、HEWの核心になるCPUチップのコンパイラやアセンブラはおそらくUNIX上で開発されたものだと思いますよ!HEWにその痕跡らしいものを垣間見たことがあるんで・・・。

開発系の中心はかなり以前にUNIXにシフトしています。開発系をやるんなら、これからはUNIXも無視できないでしょう!

ちなみに、最近の「スマホ」と呼ばれる中の「Andoroid」ですが、こいつは「Linuxカーネル」そのものです。

Eclipseという開発環境が標準で指定されているのですが、私のところはWindows2000なんで、どうがんばってもAndroid1.1くらいまでしか扱えません。

ほんのすこしだけやってみたことがありましたが・・・。


今のPCが壊れない限り(壊れたら困るけど^^;)、そのままいくつもりです。
返信する
一番効果があるのは・・・ (kaoaru)
2013-02-26 09:24:08
Cのソース書いて、そのアセンブリリストを出す・・・よくわかりますね、この方法。

ただ、アセンブリのほうを見てわからないといけないので、アセンブラから入っているという前提条件になってしまいます。

組込みではまったく意味がないのですが、main関数への引数引渡しに至る過程は複雑です。コンパイラによって違っていて一番複雑な部分でした。

C386っていうMS-DOS時代のコンパイラがあったんですけど、そいつだけはシンプルだった。やはり、386のネィティブモードがターゲットのやつはそうなっちゃうのですね!

「C言語はみんな同じ」

こいつは必ずしもそうではなくて、PICなどは「方言のオンパレード」で低機能です。ロクにマクロも使えんし・・・。

しかも、共用体もありませんので、「ほんとに組込み用?」って思います。

だから、PICのC言語なんか使いません。だって、こまかいタイミング制御の部分はやはりアセンブラじゃないと計算できません。

WebでみかけるPICのCプログラミングのマネしちゃだめですよ^^;ってなところですかね?

待ちを作るのにfor文で空ループさせるなんて愚の骨頂です。それを堂々とWeb公開しているワケですから、恥じといえばそうなるんじゃないでしょうか?

マイクロチップのアプリケーションノートをみんな見てないんでしょうね、たぶん。

ほとんどは英文だから、というのもあるのでしょうが、見ていればわかるように書かれているのに・・・。

このあたりに日本の「PICマイコン族(?)」現状の悲しさを感じます。


「C言語はみんな同じ」
というのは、ルネサスのラインナップだけです。PICやAVRはもう、手軽に入門するためのツールと解釈したほうがいいでしょう!
返信する
ああ、はいはい (ホロン)
2013-02-26 00:33:43
4-20mAが0~FFFFに対応しているのは、そのように了解していました。電流伝送ですから長距離を引っ張ることが可能ですね。私がバイトをしている会社の工業用計測器も出力は4-20mA(アナログ量)で、ユーザーは250Ωの負荷抵抗で受けて1-5Vに変換して使っていますね。

そうですね。時として立ち止まることも必要なのは「魔女の宅急便」がうまく描いていました。私の「立ち止まらない」は「継続すること」と言い換えた方がいいですね。だって1カ月も離れたら自分のプログラムでも見る気がしなくなりますから。

何はともあれ、アセンブラはマイコンチップごとに異なりますが、C言語はみんな同じなので、やはり目指すはC言語のマスターですね。H8SXと雑誌のおまけのHEWを使って頑張ります。(^^)
返信する
4-20mAモードというのは (kaoaru)
2013-02-25 13:07:29
いや、そうではなくて、16ビット値0~FFFFhが4mA~20mAの出力となるモードです。

つまり、電圧出力ではなく、電流出力で使うのです。

この「4-20」というのは業界標準になっていて、ディーゼルエンジンのコントローラはこのインターフェースが多いのです。

「立ち止まらないことが重要ですね」

どうしても詰まるときがあるものです。立ち止まるのも必要ですよ、たぶん。

あ、それと正確にはH8/2000はH8/2000Sという、末尾にSがついたものでしたね!

私がチョイスしたものではなく、それに決められてしまっていたので、どうにもなりません。ましてや「偽装派遣」の時代の話ですんで、そんな権限なんてあるはずもありません。

それが、はじめてのH8体験だったのです。

まぁ、それでもコーディングからターゲット動作させるまで1ヶ月ほどかかりましたか・・・。

H8のシリーズは末尾にSとかつきはじめるといきなり「SuperHか?」と思うような高機能なものに変わります。

下のクラスのほうはそうでもないのですけどね!

そちらもかなりやられて「ハマったよう?」ですから、その調子であれば大丈夫なんじゃないでしょうかね?

いろんなプロセッサをさわれば、「みぃ~んな同じ」という感覚になるのでは?その頃には退役(?)、そりゃ、私のことじゃぁ~!

でも、未だにZ80のインストラクションは美しくないなぁ~、と思います。8086のほうがよっぽどいい・・・という私です。
返信する
そうですよね。 (ホロン)
2013-02-25 00:56:52
はい。SPIの方がずっと楽なのは体験的に理解してます。何といっても前回の仕事の大詰めはI2Cによる通信に成功するまででした。あとは比較的スイスイと。(^^)
「邪魔くさい」はマイクロプロセッサにまつわる諸々を総じてのことです。私の頭の中にはまだ一本線が通っていないのでとりわけそう感じるのでしょうね。

漁船のエンジンコントロールにH8を使われたのは以前にも話してくださいましたね。4-20mAモードでのシリアル通信ですか。そんなのもありましだですかねえ?アナログ信号のやりとりをするのに4-20mAはよく使ってはいましたが。

ともかくもスキルアップとしてkaoaruさんもお奨めのH8SXを極めてみようと思います。できるかどうかはともかくとして。立ち止まらないことが重要ですね。(^^)
返信する
SPIのほうが簡単ですよ^^; (kaoaru)
2013-02-25 00:17:35
やはり、双方向でしたか・・・。

双方向だとディレクションの切り替えが必要になり、メンドくさくはなりますが、基本は同じです。

それと、SCIに反転が必要な場合、ムリにゲートを使わないでビットシリアルの処理もソフトでやったほうがいい場合もあります。転送レートと受信を割り込みでやるかどうかで違ってきますけど・・・。

H8SXシリーズですと、過去に使ったことがあるH8・2000シリーズの系統ですね!

場合によっては「コンペアマッチ」も使えるといいのですけど・・・ね!

とても多機能なマイコンです。それでも、ARMほどではないので、スキルアップにはちょうどいいかもしれませんね。

SPIで邪魔くさい・・・ってのはどうも・・・一番楽なんですけどね、そいつが・・・。

DACはほとんどSPIですよ。漁船のエンジンコントロールではよく使います。4-20mAのモードで。

SCIはたしか2本あったかと思いますが、1本はデバッグモニタ用に使います。ターミナルモードのPCにつないで、動作モードを変えたり、キャリブレーションをとるモードを操作したり・・・と。

特殊なやりかたでは、プログラム実行中に内蔵フラッシュROMを一部書き換える処理があったり・・・そういうのもあるものなのです。

SCI、SPI・・・いずれもビットシリアル処理なんで、そんなに邪魔くさいとは感じない私です^^;むしろ、それがフツー^^;ただし、組み込みマイコンの場合ね!OSがらみだとやりにくい場合が多いのは確かです。実行スレッドの優先順位を気にしなければいけなくなるので・・・。
返信する
I2C (ホロン)
2013-02-24 23:36:47
私がkaoaruさんにこんな話をするのもおこがましいですが、I2Cは2線式の双方向です。正式にはI^2Cで、「IスケアC」と言うようです。昨今SPIがどんどんI2Cに置き換わってきてるんですよね。前回H8に取り付けた外部デバイスはADCとDACとE2ROMだったのですが、同じアナデバながらDACのみSPIで少々邪魔くさい思いをしました。H8のシリアルインターフェイスはSCIですよね。だからCSのみ反転させるために74HC00を一個使う羽目になりました。まあ私にとってはすべてはこれからですので、気長にやろうと思います。それにしてもまあ邪魔くさい。(^^)
返信する
I2C・・・? (kaoaru)
2013-02-24 21:53:54
もしかすると、それって「SPI」のことですか?まぁ、双方向のヤツもあるみたいですけど・・・。

そうですか・・・そういうモノにたよらないとできませんか・・・。

「SPI」って、私は「パタパタ制御」って命名してます。

CS、クロック、データの3本だけでとっても簡単な制御インターフェースです。

CSを落として、データラインを確定させておいてからクロックを1パルス送る・・・という操作を必要ビット分完了したらCSを戻す。たったそれだけなんですけど・・・。

そういうのは、Cでもさんざん書きましたし、アセンブラのほうが楽ですけどね、そういうのは。

外付けEEPROMとか、ディスプレイコントローラとか、チューナーのプリスケーラとか、いろいろありましたねぇ~!

PCのパラレルポートを使ってそういうのを書く練習をするといいんですが・・・今どきパラレルポートついているの、ウチのPCくらいだろうなぁ~?

私はI2Cだったら、どんなマイコンでもプログラミングでやっちゃいます。シリアルポートだって、なければソフトでやりますんで・・・。

でも、そういう制御系部分に振り回されていると先が長くなることでしょう!スキルが早く本題に近づくといいですねぇ~!
返信する
なんとDSP搭載ですか (ホロン)
2013-02-24 17:50:32
すごいですねえPICは。もはや何でもアリのデバイスというか、最小規模の8pinから上はDSP搭載のものも。これは用途によって使い分けれるメリットと同時に、目的が明確でなければ、どれを選んでいいやら迷ってしまいそうですね。まあ私は前述のとおり1つのプロセッサを、まず骨の髄までしゃぶろうと思います。それで選んだのがH8/SXということですね。PICやAVRはその後ワンクッションおいて入ろうかと。C言語もマスターしないといけませんしね。

「マイコンに種々のコンバータが載って便利に思えるというのは、もしかすると経験が浅いせい?」
たぶんその通りなんだと思います。前の仕事でH8/SXを選んだのもI2Cのインターフェイスが内蔵されているというのが動機でした(トラ技の付録で出回っていたこともあるのですが)。客先から指定されたADCがI2Cだったんですよね。でもこれは随分と助かりましたね。I2Cのアーキテクチャを自作するなど、とうてい私には無理でしたので。

「冷静にドキュメントを読む」はほんと大事ですよね。
「プログラミングは熱くなったらつとまりませんって!」
はい。重々承知しております。(^^)
返信する
最近のPICはDSP搭載 (kaoaru)
2013-02-23 20:25:30
最近のPICはDSPが載っているチップがあります。

リアルタイムに高速演算を繰り返す必要があるアプリなら必須です。

ただ、PICのもともともアーキテクチャはクロックの4分の1が基本サイクルなので、もともと速くはないのです。

コンパクトで処理速度を優先するなら、AVRがいいですよ!

AVRは初期の頃仕事で使いました。インストラクションはPICよりもZ80をやったことがある人のほうがとっつきやすいです。

ただ、一言申し上げておくと、特定の特定機能に着眼すると思わぬ落とし穴があるということです。仕事ではイヤというほどそういう目に遭っていましたので・・・。

だから、単純に「静電容量」だけに着眼しないことも肝要です。プログラミングする上で有利になるような構成も検討する、ということなんです。

これは、組み込み系が長かった私の経験から言えることですが・・・必ずしも他の方すべてにあてはまるということではありません。強要はしませんが、そのあたりは柔軟に考えられるとよろしいかと・・・。

あと、マイコンに種々のコンバータが載って便利に思えるというのは、もしかすると経験が浅いせい?と思うのは私だけかな?

案外プリチャージタイムや変換時間などがかかりすぎて暗礁に乗り上げることも多々あります。

あんまり期待せずに「冷静にドキュメントを読む」必要があります。

「クールすぎる!」と思われるかもしれませんが、組み込み系長いと、こうなるモンなんです。


プログラミングは熱くなったらつとまりませんって!
返信する
自作できる唯一の部品 (ホロン)
2013-02-23 19:57:06
多くの人がコイルが苦手で、私もまあ得意とは言えませんが、わかってくると、なるほどなるほど愛い奴じゃ、となるのがコイルですよねえ。
一時このブログによく来てくださっていたC言語使いの元エンジニアの女性は、「だって自作できる唯一の電子部品じゃないですか」と言って、自分で巻いたコイルの写真を自身のサイトにアップされたりしてましたね。まったく同感です。彼女はスイッチング電源を作るためのチョークコイルを自作するというなかなかの猛者でした。

「こんなにもコストがかからない素晴らしいものはない!と思っているワケです。手間はかかるけどねぇ~!」
kaoaruさんに諸手を上げて賛成~!(^^)

テルミンは空間の静電容量を検出するんですよお。近頃CDC(静電容量-ディジタルコンバータ)が内蔵されているPICもあるようで、あれなんかを使えば簡単にできてしまうかも知れませんねえ。
返信する
高周波モノですと・・・ (kaoaru)
2013-02-23 18:12:02
テルミンもここのカテゴリになりますか・・・。

昔、自分で作ったラジオが手を近づけたり離したりして動作が不安定だったのもテルミンみたいなモンか?!

バイポーラトランジスタ1発でも充分実用になるAMラジオは作れるものです。

もちろん、コイルも手巻き・・・バーアンテナは適当なジャンクから取ったヤツで・・・。大体、適当なジャンクから取ったコイル類で使いまわしできないことが多いです。結局は手巻き・・・手間ですけど、時間がかかるだけでお金はかかりません。

エナメル線は前のヤツをほぐして使いますから・・・。

こういうことをやってると、結構身に付くものです。

でも、傍目から見た姿は異様でしょうね!

「おじさんが糸巻きに熱中している」様にしか見えませんから・・・。

実際、昔から磁気を応用したセンサが一番多かったのです。パルスを印加した状態でねじるような力を物理的に加えるとパルスの変化が出ます。

こういう現象を応用した「はかり」があったようです。

他にも、特定のガス用センサにも磁気センサがあったらしいのですが、詳細な情報は得られていません。

電子系エンジニアの中にもコイルを嫌う人は多々いるようですが、こんなにもコストがかからない素晴らしいものはない!と思っているワケです。手間はかかるけどねぇ~!

材料はフェライトバーとエナメル線、たったそれだけ!
あとはヤル気。
返信する
ミュージシャン?! (kaoaru)
2013-01-09 17:22:05
いや、そんなことではないです。

中学生の頃からフォークギターをジャカジャカやりはじめたのがキッカケなだけです。

私も「高周波屋さん」ではなかったのですが、もともとは「ラジオ少年」だったのです。それにフォークギターが加わった・・・というのがホントのところ。

中学生の頃は「クラッシック」のダイジェスト盤がウチにあったのでよく聴いてました。自分で修理した真空管式電蓄で・・・。小六~中学生くらいの頃だったと思います。

自分で修理して、それで聴く・・・っていうのしかなかったなぁ~!

カセットテープレコーダも壊れたおさがりをその後にもらって、メカ部を修理して使っていました。

LL(なつかしいですね!)だったので、多重録音もどきをやってみたりしました。おぉ~、自分でもできるんだなぁ~!って思いましたよ。
返信する
わかるわかる。 (ホロン)
2013-01-08 20:53:12
kaoaruさんは工業高校なんですね。私は某外国語大学中退です。趣味が高じていまのようになってしまいました。

抵抗のカラーコード。「黒い礼服、茶を一杯」などと覚えましたよ。でも慣れというのはすごいもので、毎日見てると瞬時に抵抗値が分かるようになりますよね。最近ではしばらく遠ざかっていたもので、何度もコードを数えていますが。

私は実は高周波の経験がないのです。ですからコイルとの縁はあまりなく、苦手な素子のひとつです。これらの記事は自分の勉強用ですね。

kaoaruさんはミュージシャンでもあるんですね。素敵ですね。私はもっぱら聴くのが専門です。何でも聴きますがクラシックが一番多いかな。
返信する
なつかしい内容だぁ~ (kaoaru)
2013-01-08 14:57:24
なんか「コロナ社」刊行の「電子工学I」を読んでいるみたいだぁ~!なつかしいなぁ~、工業高校卒だから・・・。

「ファイ」を小文字で書く場合は「磁束密度」を指す使い方がその世界では普通です。

そういう「暗黙のルール」はいっぱいあります。

筆記体で小文字のiだと交流電流とか・・・。

そういう世界で染まると全然違和感がなくなるものです。

抵抗のカラーコードなんかもそうかもしれないですね!
慣れるとゴロあわせなんていらなくて、3本目の色をみてオーダーの判定をして・・・というクセがついてしまうと何の不便もないものです。


コイルの誘導作用を応用したものは現実にたくさん使われていて、一番身近なものですと「スマホ」とか「携帯電話」は意外だと思われるんじゃないでしょうか?

電源部のインバータはみんなそれの応用ですから・・・。

まぁ、マグネッチックイヤホンとかエレキギターのピックアップもそうですけど・・・。
返信する

コメントを投稿

電子回路」カテゴリの最新記事