- 1 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 08:40:10 ]
- まったり逝きましょう。
ハード寄りの話も大歓迎です。 道具話も楽しくやれるならやってくらさい。 この世界は処理系依存はあたりまえだから、処理系明記するのを忘れないでね! 過去ログ 制御系なら俺に聞いてもいいぜ(8) pc8.2ch.net/test/read.cgi/tech/1125994426/ 制御系なら俺に聞いてもいいぜ(7) pc8.2ch.net/test/read.cgi/tech/1109102528/ 制御系なら俺に聞いてもいいぜ(6) fun.kz/test/read.cgi/tech/1099574832/ (新タイプミラー) 制御系なら俺に聞いてもいいぜ(5) fun.kz/test/read.cgi/tech/1079102543/ (新タイプミラー) 制御系なら俺に聞いてもいいぞ(4) pc5.2ch.net/test/read.cgi/tech/1068869894/ (行方不明) 制御系なら俺に聞いてもいいぞ(3) pc2.2ch.net/tech/kako/1059/10594/1059488975.html 制御系なら俺に聞いてもいいぞ(2) pc2.2ch.net/tech/kako/1038/10380/1038094914.html 制御系なら、俺に聞け! pc3.2ch.net/tech/kako/1002/10021/1002176627.html 関連過去ログ ●●●くみこの組み込み相談室●●● pc3.2ch.net/tech/kako/988/988084737.html
- 49 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 01:31:08 ]
- 直感に反するけど、そうだったんです。CPU全てでキャリーがどうだというルールはない
ようでした。 もう20年近く昔の話ですが。 その後ソニーの8bitでも似たような命令セット見たことがあります。
- 50 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 04:11:28 ]
- >>49
ンニーの8ビットって、すーはみのAPUに使われてた奴かな? あれは6502のぱくりだ。 6502の設計はある意味究極なので、知識がないヤシはぜひつまみ食いしてくれたまい。 でも組み込みで6502系を採用したって話はなかなか聞かないなぁ。
- 51 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 04:16:48 ]
- 50さんも早起き? 私が見たソニーの石はcが無くてASMしかなかった。あれじゃクミコは大変。
- 52 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 07:22:03 ]
- A-B 命令は (A + 全ビット反転(B) +1) として実現されるので
回路をケチるとボローは 桁借が無い時に1になります。 SUBBの時は(A + 全ビット反転(B) +CY) と実現するので、 これを理解すれば、ボローはキャリーの反転が自然だという事になりますね
- 53 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 10:04:03 ]
- 6502がそういう設計ってことは、ARMなんかもそうだったりするのかな?
ARMは6502の子孫って聞いたけど
- 54 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 10:38:58 ]
- i8080は10進補正のために加算か減算かを保存する必要があった。
そのためのロジックがあればボローを反転させるのは簡単だ。
- 55 名前:デフォルトの名無しさん mailto:sage [2006/10/09(月) 18:07:10 ]
- 夕方に、駅前の電線にムクドリの大群がねぐらを求めに来ます。チュンチュン大騒ぎするのですが、
よく見ると連中のやってることはバブルソートですね。 個体間の順位(=ソートキー)があって ある固体が電線にとまろうとするときに、自分より格下が居ると威嚇して追い払う。追い出された 固体はそのまた格下に対して同様の事を実行する。これが日が暮れるまで続きます。 ピュー太のソートと違うところは、翌朝大量の糞が道路に残って養鶏場の臭いになっている事。 情報処理にもエネルギーを使うのが実感できます。でも彼らの使うエネルギーは、糞は出すが PCより効率良さそう・・・
- 56 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 20:35:45 ]
- スレ違いならご容赦願います。
「CDドライブっつうのは、こんな原理で動くんですよ」というデモをしたいなと考えています。(普通の人、子供向け) スピンドルの回転、ピックアップの前後移動、レーザーのOn/Offあたりを、実際に見せられたらなと思ってます。 必要な物品と技術的なハードルについて、御教示頂けないでしょうか? もし、自作プログラムでATAPIなんかのコマンドを送ることで自由にドライブが制御できれば、話は簡単なのでしょう。 ですが、そもそもこんな低レベルの動作を、インターフェース(SCSI/ATAPI/USB)から制御できるのでしょうか? トレイの開閉やデータ読み込みくらいの実例はWebにもあるのですが、メディアも不要なこんな動作については見つかりませんでした。 学ぶべき事柄や書籍などありましたら、ヒントだけでも構いませんので教えて頂けないでしょうか?
- 57 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 20:41:34 ]
- >>56
透明ディスクでよさげと思う
- 58 名前:デフォルトの名無しさん mailto:sage [2006/10/20(金) 22:33:58 ]
- 最適制御のフィードバック量が
inv(R)B'Px になるワケを教えて下さい。 お願いします。
- 59 名前:デフォルトの名無しさん mailto:sage [2006/10/21(土) 10:45:39 ]
- えっと、光ピックアップのレーザーって直視しても大丈夫だっけ?
- 60 名前:デフォルトの名無しさん mailto:sage [2006/10/21(土) 22:32:56 ]
- >>59
光量による、、、、、が 常識的に考えて、そんなわけ無いだろう
- 61 名前:デフォルトの名無しさん mailto:sage [2006/10/21(土) 23:44:07 ]
- CDケースに "CAUTION" って黄色い注意書きが貼ってあるでしょ?
"恥ずかしいからじっと見つめないでね。 はぁと" って書いてあるよ。
- 62 名前:デフォルトの名無しさん mailto:sage [2006/10/21(土) 23:53:03 ]
- レーザー機器のクラス分け
ttp://www.sunagaimpulse.com/Syozai/Lasersite/Laserclass.html
- 63 名前:デフォルトの名無しさん mailto:sage [2006/10/21(土) 23:54:53 ]
- だからそれをよい子のみんなに見せようって人がいるわけだけど。。
もちろん「見られる」角度に配慮すれば光線を直視することは回避できるだろうが、 レーザーって反射光でもまずい場合もあるよね確か。
- 64 名前:デフォルトの名無しさん mailto:sage [2006/10/22(日) 00:09:55 ]
- トイレにドアがあるのに、わざわざ全開にしてウンコするようなもんか?
しかも便器を洋式から和式に替えて・・・
- 65 名前:56 mailto:sage [2006/10/22(日) 03:30:08 ]
- みなさまご返事どうもありがとうございます。
>>57 たしかにそうですね。ちょいと用意してみることにします。 >>59-64 直視(のぞきこみ)は避けねばなりませんが、紙に当てて 光ってるのを見る程度ならば問題ないと思います。 さらには、低出力でも見えやすいDVD用のレーザーを使う工夫も必要でしょう。
- 66 名前:デフォルトの名無しさん [2006/10/22(日) 10:01:29 ]
- 10倍ぐらいに拡大した模型作って、サーボコントローラ+シーケンサーでやればそう難しくないだろ。
- 67 名前:デフォルトの名無しさん mailto:sage [2006/10/22(日) 10:03:47 ]
- 本来の質問の回答は誰もないね。
まあこの業界(どもこそうかもしれんが)俺も含めて低レベルな奴が9割だからねえw とりあえずこんなの見つけたけど。 いやまあググればすぐでてくるようだから、既に知ってるかもしれないが。。 itdesign.jp/cdromp/index.htm これでとりあえず実現可能か試して、それから自分でATAPIのプログラミングについて 勉強するって手順でどうかなあ。 ATAPIに関してはCQからムックが出てるようだけど、あのシリーズって内容あてにならんことが 多いからなあ。
- 68 名前:デフォルトの名無しさん mailto:sage [2006/10/23(月) 07:51:57 ]
- >>58
その RとかB'とか inv() とかが、何なのか定義してみて
- 69 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 22:00:11 ]
- inv(R) はRの逆行列。
B' はBの転置行列。 Q, R は単なる重み。 xの微分値がAx+Buの形で表される線形システムで、評価関数∫(x'Qx + u'Ru)が小さくなる制御入力uは u = -(Rの逆行列 * Bの転置行列 * P * x) で与えられる。 ただしPは次のリカッチ方程式(省略)を満たす解とする と本に書いてあるんですが、入門書のためかその式の証明がありません。 リカッチ式あたりをいじって変形してやれば出てくるんですか?
- 70 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 04:14:16 ]
- うわあああ!数式見るとジンマシンが・・・ それは、例えば何かを安定化させる制御とかそういうの
に使うの? アームの位置が目的のとこでぴたりと止まる、とか。 この業界だったら、使えるって判ってる式は証明のとこは飛ばして使っちゃうからなあ。
- 71 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 09:10:47 ]
- >>69
ここは制御系プログラミングのスレで制御理論のスレではないからね。 板違いだから帰れとは言わないけど、答えられる人は少ないかも。 で、ググって見た、 ttp://ysserve.int-univ.com/Lecture/ControlMecha2/node27.html ここの(2.402)式が少し形が違うけど>>58の式。導き方はその上に書い てあるから読めば分かるんじゃない。漏れは分からなかったけどw
- 72 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 20:53:20 ]
- そうか、プログラミングのスレでしたか。
ググったら「聞いてもいいぜ」なんて出てきたんで、早速聞いてみたんですが、 その前に、どのカテゴリのスレから確認すべきでした。 どう考えても数学系ですね。。 ありがとうございました。
- 73 名前:デフォルトの名無しさん mailto:sage [2006/10/25(水) 22:11:38 ]
- いや、本来「制御」ってカテゴリーは制御理論を使うような分野のことを
差すんだろうとは思うんだけどね。 リミットスイッチだのタリーだのポーリングしてチマチマやるようなのは 制御なんていうのはおこがましいよねw
- 74 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 05:36:46 ]
- 大昔はクミコ系って言ってたよね。そっちのが実情には合ってるかも。
- 75 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 21:27:09 ]
- 何で俺の妻の名前が久美子だって知ってるんだ。
- 76 名前:デフォルトの名無しさん [2006/10/31(火) 00:34:01 ]
- 収束していないステップ応答出力から
伝達関数を1次遅れ系に近似して導出する方法ってありますか?
- 77 名前:デフォルトの名無しさん mailto:sage [2006/10/31(火) 08:20:52 ]
- 1次遅れなら、1つ前の値との比率だけで求まりそうなものだが?
俺、なんか勘違いしてるのかな?
- 78 名前:デフォルトの名無しさん mailto:sage [2006/11/08(水) 06:10:44 ]
- 3MHzの8085のお仕事、まとめて6本キター------- 1,2週は楽しめそう・・・
- 79 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 05:18:01 ]
- 続けてまた2本キター。まあ、大して\にはならないんだけど、チッチャイプログラムひねくる遊びとしては
面白いんだよね。大昔はbit誌のナノピコ教室とか好きだったし。 この石でsin/cos出してくれ、って言われたときはちょっとあせった。
- 80 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 07:58:33 ]
- 私ゃテーブル作ったよ。
#お蔭で、sqrtよりsin/cosの方が速い罠。
- 81 名前:79 mailto:sage [2006/11/11(土) 13:00:20 ]
- >>80 私もそうです。1度単位で出ればいいので[360]のテーブルですんだ。
ルートはどうしたんですか?
- 82 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 13:53:37 ]
- どうせ実数のライブラリ使うなら素直にライブラリの関数使えばいいのに。。
ひょっとして俺様定義の実数をアセで使ってるとか? それならそんなことよりごく普通に10進の文字列との相互変換とか、 そのあたりの方が余程難しい気がするんだが。 っていうか三角関数ってテーブルを素直に参照するだけのやり方でも pi/2まであれば十分なはずだけど。
- 83 名前:80 mailto:sage [2006/11/11(土) 15:21:14 ]
- >>81
あー、テーブルのエントリー数は0-90度を100個にしてたかな。だから厳密には度じゃなくて0-100グラジアン。 奇数で順番に引く方法で計算してた。16ビット整数だと高々256回回るだけだから。 >>82 そんな贅沢なものを使えるほど余裕がないときもあったのよ。 んで、10進16進変換辺りは10進補正命令も駆使して作った記憶がある。
- 84 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 15:29:19 ]
- なんだやっぱり知ったかか。
unit やintじゃないんだから単純にBCDに変換なんてできるわけないじゃんw それともint + decimal pointなんていう効率の悪いことしてるのかな。
- 85 名前:80 mailto:sage [2006/11/11(土) 15:39:34 ]
- おや、誰か浮動小数点数を扱っていると申し上げましたでしょうか。
- 86 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 16:14:01 ]
- ああ固定小数点って奴ね。
それなら確かに。 しかしそれじゃ利用範囲はかなり限定されそう。
- 87 名前:デフォルトの名無しさん mailto:sage [2006/11/11(土) 22:21:11 ]
- 8085使うようなシステムの三角関数に汎用性や精度を求める奇特な人が居るな
- 88 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 02:53:02 ]
- 汎用性や精度は求めてもいいんじゃね?
速度とか実用性はしらね
- 89 名前:デフォルトの名無しさん [2006/11/12(日) 03:01:56 ]
- 私,現代制御理論を勉強してるんだけど,学校で指定されてる教科書は,
「システム制御理論入門」(実教出版)なんだけど, わけわからなくなって,新たに奨められた参考書 「現代制御論」(吉川井村)(昭晃堂) 買ったんだけど余計わからなくなって,問題解ければいいやと思って, 「演習で学ぶ現代制御理論」(森) を買って確かにかなりわかりやすかったけどうちの先生数学チック (Lyapunov方程式でA^TP+PA=-CC^Tにおける唯一解Pの存在条件出せとか) なのが好きなんだよね.こんなかんじの現代制御で数学チックでわかりやすい問題集無いかな>< どなたか迷える私にご教授ください(汗
- 90 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 03:23:49 ]
- >>89
ここが何の板だか分かった上での質問か?
- 91 名前:89 [2006/11/12(日) 03:30:17 ]
- もしや板を間違えましたか?すみません.違うところに行きます.
不機嫌にさせてしまい申し訳ございませんでした!
- 92 名前:79 mailto:sage [2006/11/12(日) 05:32:31 ]
- >>82の >pi/2まででいい、ってのは知ってます。ただ範囲によって符号をひっくり返したりする
のがめんどうなので、ROMが余裕あるかぎり1周分用意しちゃいます。 >>83 がsqrtの説明なんですか?頭悪いんでもうちょっとくだいてくれると嬉しい。 >>88 汎用性はゼロでいいです。精度は16〜32bit整数で計算できるように押さえます。 ex) 16bitのsin/cosなら±1.0の間だから、符号1bit 整数部1bit 小数部14bitで充分な精度。 速度と実用性こそまさに求められることです。なにせ3MHz(^o^) 今どき8bitの石でも20MHzなのに
- 93 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 07:10:05 ]
- 制御系でも javaで組むことって可能なの?
もし組めたとしても、リアルタイム性は確保できるのだろうか?
- 94 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 10:30:57 ]
- WEPキーをしりたいんですけど、パソコンのどこを調べたらいいんですか?
- 95 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 11:57:54 ]
- 制御系はC++ですらサブセットしかないのにJavaが乗るわけないだろ
- 96 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 14:22:33 ]
- PLCって制御系?
- 97 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 17:10:15 ]
- リレーの制御を書くような奴? ちょっとスレチかな。 いちおうマイコンのプログラムまでと
おもってる。
- 98 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 17:20:13 ]
- でも組み込み用のJavaってあるよな
- 99 名前:デフォルトの名無しさん mailto:sage [2006/11/12(日) 19:37:53 ]
- >>93
リアルタイムなところははサブCPUに任せて
- 100 名前:80 mailto:sage [2006/11/12(日) 20:36:48 ]
- おっ、やっと荒らし規制明けた。
まぁ、私が扱ってたのは2バイト整数とその派生の固定小数点数だから。 >>92 今更ソースはないし、説明も面倒なんでCで書いてみた。 int main(int argc, char ** argv) { int x = atoi(argv[1]); int xn; int r; for (r = 1, xn = x; xn > 0; r += 2) { xn -= r; } r >>= 1; if (xn < 0) {// 切り上げなら不要 if (r * r - r >= x) --r;// 切り捨てなら不要 } printf("%d:%d\n", x, r); return 0; } 四捨五入しなくていいなら掛け算も使わないのが味噌屋根。
- 101 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 02:07:12 ]
- >>98
RTOSの上にJavaタスクが乗ってるって奴じゃ? たとえばJBlendだとITRONの上にJavaタスクが乗ってる リアルタイム処理はITRON、リッチな処理はJavaでやる
- 102 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 05:01:20 ]
- >>100 ありがとうございます。筆算で開くやり方と似たやり方に見えますね。メモメモ・・・と
ITRONを130MHzぐらいのSHで使ってみたけど、mSオーダーのリアル性はダメダメでした。 いいとこ10mSオーダーまでかな。MSECを1にしたら重くなるし。
- 103 名前:102 mailto:sage [2006/11/13(月) 05:10:55 ]
- 以前、ringバッファの滞留数をwp,rpから計算する手法をここで聞いたし、石選択の相談もしたし、
2chで仕事の役に立つネタを拾う俺って・・・まあ、頭悪いんだからしょ〜がない\(^o^)/
- 104 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 05:48:42 ]
- >>98
ジャズルジャズル
- 105 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 11:38:03 ]
- >>100 奇数を加算した回数が n^2になるという方法だね。
簡単だけど、大きい数で時間がかかりすぎるかもね 16bitなら sqrtの結果は8bitに収まるんで x^2のテーブル作ってバイナリ検索も簡単で、ソコソコ早いよ
- 106 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 15:38:10 ]
- テーブルに何入れとくんですか?
あ、0,1,4,9,・・・(255)^2を入れといて当たりの位置がルートですね? これだと256個のテーブルの2分検索だから高々8回のループでよい、ということですか? 固定少数点で16bit求めようと思うともっと大変ですよね?
- 107 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 17:03:05 ]
- 頭悪いんだからしょ〜がないっても、そんなことまで聞くほど馬鹿だとは思わなかった。
- 108 名前:デフォルトの名無しさん mailto:sage [2006/11/13(月) 20:45:09 ]
- >>106
入力が32bitの場合の事? 掛け算が使えるならニュートン法が一番高速と思うけど 掛け算使えないなら、 (a+2^n)^2= a^2 + 2^(n+1)*a +2^2n を使って処理するといいよ。 n=0の時はこの式は (a+1)^2= a^2 + 2*a +1 で a^2に 2a+1を加算すれば(a+1)^2になる事を意味してる=奇数を加算すればいい 具体的には、 aとa2 の2つの変数を最初0から、n=15から スタートして 入力値Xと a2 とを比較しては a2=a2 + 2^(n+1)*a +2^2n ; a=a+(2^n) ; と更新してゆくわけ
- 109 名前:106 mailto:sage [2006/11/14(火) 09:04:06 ]
- 16bitでS4.11(上5bitがsignと整数部、下11bitが小数部)みたいな約束で、同じ精度でsqrtを
求めたいときでも、そのアルゴリズムは使えますか?sin/cosなんか±1.0の間だからS4.11 みたいな16bitで持ってたので、そのオーダーの数値で少数点つきで扱うときに使えるといいなと。 アルゴリズム辞典みると、実数についてしか書かれてなくて、応用の仕方がわかりません。
- 110 名前:デフォルトの名無しさん mailto:sage [2006/11/14(火) 09:35:07 ]
- それならニュートン法で。
- 111 名前:デフォルトの名無しさん mailto:sage [2006/11/14(火) 09:57:40 ]
- >>109
nは負数でも式の形は同じなので使える事は使えるよ ただシフト方向が逆になるのでメンドクサイが 掛け算が使えるなら、2ビット単位に見て初期値を決めてニュートン法が一番早い 掛け算が使えないならこの筆算法がまあ我慢出来る範囲だと思うよ
- 112 名前:106 mailto:sage [2006/11/15(水) 06:06:54 ]
- いろいろありがとうございます。四則演算しかできないヘタレなので、助かります。
- 113 名前:デフォルトの名無しさん mailto:sage [2006/11/15(水) 11:06:34 ]
- a =0
a2=0 n =2 a2d=a2 + 2^(n+1)*a +2^2n = 16( 実際には16<<11) と最初は比較して それ以上なら a2=a2d , a=a+2^n 次にn=1,n=0で同じ事を繰り返して nが-11になるまで繰り返す 途中 aのシフト方向が反対になる だからループで処理するより ループを展開して 書いた方がいいと思うよ
- 114 名前:デフォルトの名無しさん mailto:sage [2006/11/25(土) 06:15:01 ]
- いつもの3MHzの8085の人です。入力が数十秒切れ目無く続くとき、出力にring上書きのような
バグが出て困ってます。入力はヘッダ文字〜<CR>で切り出してstrcpyで保存、タイマで数秒 ごとにそこから出力するようにしてるので、処理が間に合わない的なことはないはずなのですが 正体が判ったらネタ書きますね。
- 115 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 00:13:24 ]
- >>114
単純に入力のバッファ溢れだったりしてな
- 116 名前:114 mailto:sage [2006/11/27(月) 04:20:15 ]
- ああ、それか(*o*) 入力ringで上書きが起きたら、そこから読み出すタスクは変なフレームは
捨てると思ってましたけど、ヘッダを検出後、蓄積状態になってから入力ringに上書きが 起きたらそうなりますね。頭ABC,123,・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・<CR><LF> ↑この辺に別の頭CDE・・・がかぶったりします。 入力taskでちょっと重い処理=整数変換のsscanfとsprintfをやってたとき出ました。 タイマ処理で減算するタイマの種類も増えたし。 以前出力ringで上書きが起きて、そのときは ringが置かれるアドレスによって出たり出なかったりしたことがあり、そっちに頭が行ってました。
- 117 名前:114 mailto:sage [2006/11/27(月) 04:40:40 ]
- 軽くする対策としては、こんなのが効き目がありそうです。
・入力処理では数値計算はやらない。→strcpy程度なら間に合うだろう。 ・変換/編集は出力のときにやる=数秒に1回でいい。 ・変換/編集の間に上書きがおきないよう、入力ringのサイズを増やす。 >>115さん、ありがとうございます。また2chが仕事に役立ってしまった\(^o^)/
- 118 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 04:57:00 ]
- >>117
人が助けてくれたんだよ 役に立つとは何事か?
- 119 名前:114 mailto:sage [2006/11/27(月) 05:42:59 ]
- ごめんなさい。言葉が悪かったですね。
>>115さん、ありがとうございます。また2chで助けてもらっちゃいました\(^o^)/
- 120 名前:114 mailto:sage [2006/11/27(月) 05:43:58 ]
- この業界って夜型が多いイメージがあるんですが、私以外にも早起きさんがいるんですね。
- 121 名前:デフォルトの名無しさん mailto:sage [2006/11/27(月) 07:38:33 ]
- 徹夜だったりして
- 122 名前:デフォルトの名無しさん mailto:sage [2006/11/28(火) 04:55:39 ]
- でも、月曜の明け方・・・って、日曜から徹夜?ウヒャー
- 123 名前:115 mailto:sage [2006/11/29(水) 00:48:27 ]
- まぁ、そのぐらいの言葉遣いはどうでもいいが、、、、
ネタで初歩的なミス書いたのに、そのものズバリかよ。。。。。。。。
- 124 名前:デフォルトの名無しさん mailto:sage [2006/11/29(水) 08:10:05 ]
- 技術者同士だから当然だと思って説明に書かなかったような事でトラブルって良くあるよ
多重割り込がかかるとだけ書いたら、スタックが2度使われてると文句が出たり 帰還の入ったデジタルフィルターを低い周波数に設定したらノイズが出るって文句が出たり
- 125 名前:114 mailto:sage [2006/11/30(木) 05:38:26 ]
- 確認してきました〜、そのものズバリでした。入力時に数十ミリ毎に乗除算をするともうダメ。
>>117の対処でバッチリでした。あらためて、>>115さん、ありがとうございます。 この手のソフト、20回近く作ってるのに、ありとあらゆるミスをくり返してます。トホホ・・・
- 126 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 08:15:25 ]
- まるで漏れが面倒見る羽目になりそうなプロジェクトのようだな。
- 127 名前:デフォルトの名無しさん mailto:sage [2006/11/30(木) 12:25:39 ]
- なんていうか、むしろ>>114みたいな意味不明の文章を解読できる人間が
本人以外に存在するってことが驚きだよ
- 128 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 00:26:32 ]
- >>127
「CPUがおかしい」とか「ライブラリのバグ」とか「コンパイラのバグ」って 言う奴の報告なんて大抵あんなもんだろ
- 129 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 03:42:41 ]
- >>127 前スレあたりで、「3MHzの8085Aを使ってuartの入出力をやってます。ROMはxxxx、
RAMはこの位・・・」とかシステムの概要は説明されてるので、それ読んでる人にはそんなに 意味不明でもないな。同業だし。unix系とかcobol系の人には意味不明かも。
- 130 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 05:51:37 ]
- 前スレ見てきたがもう1年経ってるんだな
1年やっててそのレベルか・・・
- 131 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 12:08:00 ]
- この程度の規模だと、大体そういうミスをやらかすんだよな
俺も最近、出力が止まるミスをやらかしたが、 割り込みで出力して出力中フラグを立てて、 次の割り込みで出すデータが無くなったらそれを倒す、って作ったら 割り込み内で処理が終了する場合があって、 そのときにフラグが永久にたったままに…
- 132 名前:141 mailto:sage [2006/12/01(金) 17:29:27 ]
- ナカーマ!・・・でも私なんかと仲良くしたくないよね。バカが伝染る(^o^)
- 133 名前:デフォルトの名無しさん mailto:sage [2006/12/01(金) 18:12:02 ]
- 確かに数字を間違えるようじゃ制御系では致命的だからな。
- 134 名前:114 mailto:sage [2006/12/02(土) 02:19:26 ]
- あちゃ〜(*o*) こないだも1と2見間違えて動かないのに3hはまった・・・ディスプレイのせいにしよ
- 135 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 11:29:26 ]
- だから即値を使うなとあれほど
- 136 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 11:55:59 ]
- 即値とマジックナンバーは違うでしょw
- 137 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 13:56:03 ]
- いや、#defineの名前じゃなくて関数名にch1puts()とch2puts()ってつけて、引数も同じだし。
隣のCHに出してた・・・orz
- 138 名前:デフォルトの名無しさん mailto:sage [2006/12/02(土) 22:11:17 ]
- >>137
だから、共通化して引数でCH指定しろと何度(ry
- 139 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 00:30:05 ]
- 結局1と2の間違いはどこまでも付きまとう予感。
- 140 名前:137 mailto:sage [2006/12/03(日) 04:37:45 ]
- >>138 昔、G.J.マイヤーズの「複合設計」という本に感銘を受けて、「制御結合イクナイ」が
刷り込まれてるのですよ。この場合だと、呼ぶほう puts(1,"abc\r\n"); 呼ばれるほう void puts(int ch, char* str) { if( ch==1 ) ch1のringへ出力 elseif( ch==2 ) ch2のringへ出力 elseif( ch==3 ) ch3の・・・ なんて感じになりますよね。 この1つ目の引数は マイヤーズの言う「制御パラメータ」で、オーバーヘッドです。呼ぶとこでは1/2のどちらに出すか 判っているのだから、それぞれの機能の入り口があればそこを呼べばいい、という考えです。 でも、Win系に慣れてる今の人はこういうののほうが違和感あるみたいです。会社で書かれる コードの殆どはchを引数に持ちますね。「それムダじゃん」って突っついても「これが標準化 だから」で終わり。 まあ、今のPG環境には「不足」よりは「過剰」がトレンドですからねえ。 こういう人たちに3MHzの石使わせると「動かねエ・性能出ねエ・石ダメじゃん」は必至。
- 141 名前:137 mailto:sage [2006/12/03(日) 04:47:18 ]
- で、139さんの言うとおりなんです。今の画面は10年前のイイヤマの15吋なんですが、縁ばかり
デカくて、点々が荒い。客の会社であたりまえに使われてるDELLの17吋がキレイで夢みたい。 1と2の入口名をchONEputs()、chTWOputsとでもしないと、このディスプレイでは、またやりそう。
- 142 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 12:29:59 ]
- >>137
あんたも同僚さんも教条主義的に物事考えすぎなんじゃないの? その方法がよいか悪いかを判断する基準を、あんたの現場を知りもしない どこかの学者さんとかに任せるの?w プログラムは問題解決の手段なんだから、判断基準は、どちらがその問題を解決するにあたって 適合的かどうかでしょう。 まあそうはいっても、「特別の理由がない限りは」引数でChannelを指定する方法を 採用すべきだろうね。理由は、 (0) コードの直観性に関しては、呼び出すその部分だけ見ればどちらも大差ない。 (1) 余程頻繁に呼び出されるのでもない限り、Chによる処理の分岐程度のオーバヘッドは 大昔のマイコンのような貧弱な環境でも問題にならないはず。 (2) 指定するチャンネルを動的に変化させる必要がある場合、>>137式のコードの場合、 呼び出し元の数だけ呼び出し先を選択する余分なコードが必要になる上、 そのコードを読む者に「こんな冗長なことをあえてしているのには何か特別な理由があるのか?」 と余計な詮索を強いることになる。
- 143 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 15:23:21 ]
- そもそも数字を間違う時点でお察しなのはおいとくとして。
保守性を考えればどちらにすべきか一目瞭然ではないかと。 仮に性能が出ないというのであれば、それを実測した後に対処すればいいとおもうが。
- 144 名前:デフォルトの名無しさん mailto:sage [2006/12/03(日) 15:56:53 ]
- だいたい>142-143のいうとおりなんだが、付け加えるなら
Ch1とか2とか抽象化している時点で>137の考えは破綻しているような。
- 145 名前:137 mailto:sage [2006/12/03(日) 16:14:35 ]
- ども。こんなアホの相手してくださって嬉しいです。そうですね、保守性の点では他の大多数の
PGが見ることを考えて標準的な書き方にしといたほうがいいですね。いつか誰かが読んだとき (2)みたいなことで頭ひねらせたらすまないですもんね。割り込み処理がCH分あるのは しょうがないとして、タスク側のインターフェースはスキーリしますね。 箇条書きの項番が(0)から、ってのが、さすがクミコ屋さん。
- 146 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 08:10:03 ]
- まあch1/ch2なんて名前じゃなくて Main/Subとかの方がいいだろな
1を使うか2を使うかは#define で切り替えればいいのだから
- 147 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 10:29:33 ]
- ch3は何と名付けようかね
- 148 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 10:33:11 ]
- Main/Sub/Sub2/Sub3・・・
- 149 名前:デフォルトの名無しさん mailto:sage [2006/12/04(月) 12:55:03 ]
- primary
secondary tertiary
|

|