サンプルホールドも内臓されているのも良い。アンプで増幅している。側、プロトコルの解析ルーチンにバグがあり、多少時間がかかったが、何とか正常に動作するようになった感じ。しないと、何となく気持ち悪い。代わりをさせてみました。データのやり取りは、シリアルコミュニケーションで行う為、オーバーヘッドも少なく、そこそこ良いシステムだったのですが、問題は消費電力です。駆動すれば、かなり消費電力削減に効果を上げるのですが、それはそれで、マイナス面もあります。側に電気が逃げます、これを避ける為にダイオード入れるとか多少回路を工夫しないと駄目とゆー面もあります、なかなか一筋縄ではいきません。専用デバイスを付けました。250円のデバイスが売りだされていたのがトリガーなんですけどね(笑)これは、インターフェースもシリアルタイプで、以前に500円で売られていたやつ(I2C)とは違い、インターフェースも簡単です。やりとりをさせています。ありますが、10ビットなので、今回は、入力ポートとして使います。※操作ボタンを付けました~※現在のソースコード一式を、いつものアーカイブ場所に上げておきます。ソースコードに書いてあるので、特に回路はいらないでしょう~、暇が出来たら、回路図を引きます。言語インターフェースで読み込みを書いた。pngin.h、pngin.c、jpegin.h、jpegin.cがそれだ。一応回答が来たー、「問題無く動作する!」そちらの環境を送って欲しいとゆーものだった。gccを使う事を前提にしている、自分はcygwinでMakefileなのだが、それでも、オプションなど調べてKIPT+HEWの環境と同じになるよう配慮したつもりでいるが、まだ何か足りない部分があるのだろう。HEWでは、プロジェクト毎に独自のライブラリーを作成している、これに何かマジックがあるのかもしれないが、調べた限りでは、それも無い感じだし。グローバルコンストラクターも初期化で呼んでいるし、他に何があるのだろうか??まぁ、今回は、メモリーも少ないし、(1MB)CとC++のクラス程度で、自分フレームワークを使う事も限られると思うので、何とかなるだろうけども(何とかする!?)・・-----現在、開発用に使っている基板は、車体に積んでテストするようには考えられていないので、ケースに入れられるベース基板も作る予定、そんで、インターフェース6月号をもう一冊買った。使えない問題で、多少の進展があったが、まだ解決していない。スタートアップオブジェクトから、__main関数が呼ばれて、その中で実行するのが通例のようだが、組み込みプログラムなので、crt0.oは使っていない。初期化関数で、「_main」とは区別される。プログラムが綺麗に走るようになってから、すっかり忘れていた。ライブラリーだが、これをリンクするだけで、非常に巨大となり、今回のようなシステムでは、ちょっと使えない感じ、vectorやstringを使うだけで、100キロバイト程大きくなる。使うと、300キロとか大きくなる。自分用の小規模で機能を絞ったSTLに相当する物を用意すれば良い気もするが、これは相当大変そうである。プログラムは、先人が創ったように完成度が高く、絶妙で巧妙な仕組みを用意するのは、自分のスキルを越えていると思う。ソースコードからビルドする試みも試しているが、cygwinでちゃんとコンパイル出来ないでいる。pad(10);とかで、初期化段階でサイズを指定すると、使える。バグレポートを送った。※時間と手間がかかるので余りやりたくない。動かないと自分のフレームワークも全滅と思うが、画像操作系など、コンパイルだけはしてみた。ライブラリーをソースコードからコンパイルして、ライブラリーを作ってみた。よって開発環境の状態を取りこむのだが、クロス環境で自動で行うには、configureを改造する必要がある為、手作業で作ってみた。コードで簡単な読み込みを書いて、テストしてみた。SH-2AにはFPUが入っているハズだが、思った程高速では無い・・・FPUを使う為におまじないが必要なのかもしれない・・アーカイブにライブラリーなどをアップしておく。テストしていないが、動くと思う。実装も進み、何とか普通に使えるようになってきた。雑誌の記事にあったソースコードをコピーしたものだったので、全面書き換え、元々ポーリングだった動作を、送信、受信割り込みに変更した。これで、パフォーマンスはある程度期待できると思われる。実現している為、バッファサイズはいくらでも大きくできる、パフォーマンスはハードで処理するFIFOよりは悪いと思うが、まぁそれでもポーリングよりはずっと良いと思っている。タイプでは無いが、結構電気食う。プロセッサなんでー-----インクルードガードの話:インターフェース誌のサンプルプログラムとか、色々観たけど、サンプルとは言え、品質が良くないなぁと感じる。※いいかげんな書き方や、厳密では無い書き方が、あちこちに観られる。※FatFsは「ELM」さんの実装だが、これはプロダクトとしては非常に考えられていて良く出来てる~http://elm-chan.org/fsw/ff/00index_j.html素晴らしい~(ありがとう~)さて、本題!、良くヘッダーを多重にインクルードしないように、インクルードガードを書くけど。XXX・・・#endifこの「XXX」で、みんな、こんな書き方をしてる、ファイル名が、「init.h」なら、「__INIT_H__」とか・・このアンダースコアーをダブルで加える書き方は、システムライブラリーなどで予約された書式なので、アプリケーションレベルのソースコードには書いてはいけない。説明や引数、戻り値の説明も書いておいて欲しい。展開すると幸せになれるようになるべく記述してる。基本の「const」も必要なら、ちゃんと書こう!※それだけで、バグを減らせるのだから。言語(gcc)でプログラム出来、高速で安くて、使いやすい。して使う事にしました。プロセッサとして機能するようにします。欲しいので、その変換なども受け持たせる予定でいます。関係の実装がだいぶ進みました~printf、fopen、fclose、などなど、通常のファイル読み込みと書き込みは出来るようになってます。※時間関係ハードが無い為、書きこんだファイルは、2008-1-1、0:0:0になります。本当は、テストプログラムを一通り作る必要があるのですが、簡単なテストのみで済ませています。※「mainloop.cpp」にある。書き込んで下さい、対応したいと思います。ハードウェアーマニュアルを読んだけど、RTCのバックアップ動作に関しての項目を見つけられませんでしたが、内臓RTCはバックアップは考えられていないのでしょうか???でも、そんなの意味無いですよね。なんでハードロジックで全て構成するのが多いのか、ただのバイナリーカウンターだけで良いと思いますが・・・マキシムのRTCには、32ビットのバイナリーカウンターだけで構成されたRTCのデバイスがあるようですね、チップワンストップとかでも購入できるので買ってみようかと思ったけど、電圧タイプが不明なんで(1.2V、3V、3.3V仕様などがある)スルーしました。液晶キャリーボード、確かに便利で安いし、あれば重宝する事間違い無しなのだが、色々問題もある。1)LEDバックライト用のDC/DCコンバーターに問題あり・電流の大小で明るさが変化するLEDデバイスに対して、定電圧の回路になってる。この液晶のバックライトは、白色LEDが6個直列に接続されたものみたいなので、23Vなら、妥当な値かもしれないが、バラツキで高い電圧が出て、LEDを壊す事が無いよう、パターンを切って、直列に抵抗を入れておいた、大体100オームくらい入れておいたが、もう少し少なくして明るくしても良いかもしれない。・回路図では、出力側に、22uF、0.1uFのコンデンサが入っているようなのだが、この表面実装部品、ほんとに22uFもある?って感じで、実際、電源入れると、安定しない(寄生発振してるようだ)、コイルやダイオードが凄く発熱する。そこで、並列に10uFのコンデンサを入れてみたら、安定した。2)液晶モジュールのロジック電源がいいかげん過ぎる・この液晶モジュールは2.5V~4.5Vまでの定格なのだが、この基板では、LCD-POW(自分は5Vで使っている)から、抵抗を直列に入れていきなり繋いである。ロジックは3.3Vなので、この抵抗を外して、3.3Vの電源ラインを繋いでおいた。以上の改修で、問題無く使えるようになっている。「R0~R7」は赤ではなく、青へ、「B0~B7」は青では無く、赤へ、つまり、赤、青が逆になっていて、さらに、LSB、MSBも逆になっている。・この液晶、RGB888で1600万色フルカラー対応なのだが、SH-2Aは16ビットカラー出力(RGB565)なので、5ビットを8ビットへ、6ビットを8ビットに拡張する必要がある。その拡張は、上位ビットをそのまま下位ビットに順番に繋ぐだけなのだが、思いついた時には、クールだと思った(笑)キャリーボードには、2.54ミリピッチと2ミリピッチ用コネクターが出ているので、使わない2mmピッチ側で拡張しておいた。何だかんだ言っても300円だからね。-----あ、そうそう、LCDモジュールのLEDバックライト用のフレキは、正位置にそのまま繋ぐと、表裏が逆となってしまうので、1回転する。hiraコメントする現在実装中のソースコードをココに置く。モーター・サイクル・コンピューター・ソースコード・アーカイブ↑ここに最新版のソースコードを置いておくが、必ずしも十分なテストが行われている訳ではなく、いきなり動作しないかもしれないので注意する事。テスト用のコードが含まれていたり色々です。安定版が出来たら、別途アーカイブをアップする事とする。GNUSHv10.01-ELF」を元にしている、標準ライブラリー「libc.a」に独自の改修を行っている為、インストール後に改修を行う必要がある。※readme.txtを参照の事。生データ※起動時に画面表示に使ってる。