組み込みプログラマーこそ真の一流!その6

このエントリーをはてなブックマークに追加
1仕様書無しさん
前スレ
組み込みプログラマーこそ真の一流!その5
http://pc11.2ch.net/test/read.cgi/prog/1173280307/

関連情報

【軍曹が】携帯電話開発の現状【語る】
http://s03.2log.net/home/programmer/archives/blog38.html
http://s03.2log.net/home/programmer/archives/blog39.html

携帯開発0x13 派遣会社の容赦ない中間搾取に喘ぐPG
http://pc11.2ch.net/test/read.cgi/prog/1185201881/

組み込み系の人って痛いよねw【低収入】
http://pc11.2ch.net/test/read.cgi/prog/1140501913/
2仕様書無しさん:2007/08/19(日) 18:38:58
インターフェースとかトラテク難しいんだけど、
なんとかしてよ
3仕様書無しさん:2007/08/20(月) 19:58:22
実機いじるのが一番早い。
4仕様書無しさん:2007/08/21(火) 13:37:59
Javaエンジニアとかだと未経験なにもわからなくてもOKです^^みたいなのが多くて
ひどいけど
組み込みも最近は文系未経験OK^^^みたいなの多くないですか?
5仕様書無しさん:2007/08/21(火) 14:58:10
まぁ誰にでも出来るような層・機能でもやらせるんでしょう。
6仕様書無しさん:2007/08/21(火) 15:07:23
廃人嗜好の人が多いみたいだから...
7仕様書無しさん:2007/08/21(火) 19:35:27
>>4
そして、難しいことやらされて、廃人になるんだよ。
8仕様書無しさん:2007/08/21(火) 20:31:34
>>2
俺も分からん
4月から買い始めたがいつになったらまともに読めるのやら
9仕様書無しさん:2007/08/21(火) 22:21:34
>>8
そんな時は組み込みプレス?
10仕様書無しさん:2007/08/21(火) 22:27:51
こんなスレで質問していないで、早く試行錯誤でバグ回避策を見つける仕事に戻るんだ!
何?やる気がありません?なら辞めろや、他の派遣雇うからw
11仕様書無しさん:2007/08/21(火) 22:51:06
試行錯誤でバグ回避をするのか…
12仕様書無しさん:2007/08/21(火) 22:59:28
>>11
スキルの低い集団ではよくあること
13仕様書無しさん:2007/08/21(火) 23:15:41
ハードウェアが自社製だと結構試行錯誤がメインにことも。

ハードのバグをソフトで回避するとか言うのやめて〜〜・・・・orz
14仕様書無しさん:2007/08/21(火) 23:20:52
まあ、その手の試行錯誤は単価の安い派遣にふられるんだけねw
15仕様書無しさん:2007/08/21(火) 23:30:45
PCでプログラム書けといわれると、どうしても
試行錯誤とコピペやってしまう。
嫌だといってるのにやらせる奴が悪いんじゃ。

と、現実逃避。
16仕様書無しさん:2007/08/21(火) 23:51:48
>>13
そんなの日常茶飯事、ってのが悲しい現実だよな。
量産に入られるとハードの変更は結構厳しいものがあるから仕方ないのはわかるが・・・
17仕様書無しさん:2007/08/22(水) 16:42:00
>>2 >>8 どの辺が難しい?と聞く前に、2と8のスキルを知りたい。
Windowsプログラムなら分かるというレベル? C言語知らないとかいうレベルなら帰れ。

CQの雑誌は実務向けなので初学者に難しいのはわかるんだが。
18仕様書無しさん:2007/08/22(水) 17:28:03
なんかソフトウェアしか知らないプログラマってインチキ臭いってのは
わかるんだが
アセンブラで機械制御はいまどきどうかと思うんだが
19仕様書無しさん:2007/08/22(水) 20:11:08
うちのプロジェクトで使ってるマイクロコアはコンパイラ無いよ。
アセンブラは昔自作(俺が作ったわけじゃないけど)のを使ってる。

・・・あんま世間を知らないんだが、マイクロコアってもしや方言?
20仕様書無しさん:2007/08/22(水) 22:51:17
>>18
今時1クロックの無駄も見過ごせない みたいな仕事は無いんだろうね。

Cじゃないと皆理解出来ないし。
21仕様書無しさん:2007/08/22(水) 23:03:41
1クロックの無駄が見過ごせないわけじゃないが、それに近いことやってる。
22仕様書無しさん:2007/08/23(木) 21:47:36
web系の奴らに時代遅れのC言語厨とか言われてるが
果たしてそうなのだろうか?
23仕様書無しさん:2007/08/23(木) 22:54:03
>>22
ユビキタスコンピューティング社会の要はセンサネットワーク
その多くは超低消費電力ワンチップマイコンで動く
ってことは、アセンブラ、C言語でガリガリ書くってことですよ!!!!

俺たちの時代です
24仕様書無しさん:2007/08/23(木) 23:39:02
>>22
web系で今流行ってる言語は数年程度で時代遅れになるが、Cはあと数十年くらい現役なんじゃね?
25仕様書無しさん:2007/08/23(木) 23:54:24
もっと使いやすい言語ができてCが駆逐されるならそれはそれでいいんだが、
今web系とかで流行ってる言語だと、速度とリソースの量が組み込み的には致命的なんだよな。
26仕様書無しさん:2007/08/23(木) 23:57:24
web系とかの砂上の楼閣感がなんか嫌
27仕様書無しさん:2007/08/24(金) 11:37:21
方向性が全然違うんだから、Javaが組込みに来るって事はないんじゃない?

アセンブラは、だんだんと無くなっていくだろうし、
Cの需要が増えるだろうな。
28仕様書無しさん:2007/08/24(金) 11:39:16
C++ってまだマイナー?
29仕様書無しさん:2007/08/24(金) 13:16:39
ARMってJavaのバイナリがネイティブで動かなかったっけ
30仕様書無しさん:2007/08/24(金) 13:41:14
Jazelleかな。
ARM××で後ろに「J」が付いてるやつなら。
31仕様書無しさん:2007/08/24(金) 18:34:51
>>28
newを上書きして、固定長メモリブロックから取ってきてくれるように
してくれるなら使ってみたいw
32仕様書無しさん:2007/08/24(金) 19:54:49
>>31
簡単に出来るんだから自分でやれば?
33仕様書無しさん:2007/08/24(金) 22:40:48
そうやって車輪をまた発明する
34仕様書無しさん:2007/08/25(土) 00:25:13
組込みっていってもひろいもんな。
携帯みたいにOSがあるような組込みならC++で開発してるとこもありそうだけど・・・
うちはC++にしたらROMに乗り切らなくなるw
35仕様書無しさん:2007/08/25(土) 00:46:24
>>27
制御側だけが組み込みじゃないとは思うけど。
携帯のアプリ層は一応組み込みに入るんじゃないかな。

あと、AV関連でもJavaなミドルウェアはある。
36仕様書無しさん:2007/08/26(日) 14:41:49
素人なんだけどJavaとかは誰が作ってもだいたい同じで
組み込みCは性能差が人によってでるの?

エンターティメント系のアイディア勝負!とかって書いてあるの実にインチキ臭いんだが
37仕様書無しさん:2007/08/26(日) 16:50:07
意味の通じる日本語を書けよ。
38仕様書無しさん:2007/08/26(日) 16:52:28
是外行,不?与Java?制作大致同?
也?入C性能差根据人出来?

entatimento系的想法??!?写着??欺?臭
39仕様書無しさん:2007/08/26(日) 18:38:34
Javaだって書く奴によって性能は変わる
ま、Hello World だったら誰が書いても大して変わらないがな
40仕様書無しさん:2007/08/26(日) 20:35:16
性能の差っていうと定義が微妙すぎるよな。
どの言語だって実装次第で性能はかわるもんだし。
組込みってのが環境がシビアでわずかな性能の差も見過ごせない
という状況が現れやすいとかいうのならわからないでもないかな?
41仕様書無しさん:2007/08/27(月) 01:14:41
最近30代で年収550ぐらいの正社員募集が目に付く。

そんぐらい貰えるのが業界の常識なんだろうか?
おしえてたもれ。

今、年300万契約社員…転職しようかな…出来るか判らんけどw
42仕様書無しさん:2007/08/27(月) 02:17:53
わずかな性能差が仕事の成否を分けることもある。間に合うか間に合わないかって仕事も何度かあった。

それはそうと、200kbyte近くのバイナリのうちたった数行のチューニングで数倍性能が変わるのを体験してしまったorz
パレートの法則だとかそんなチャチなもんじゃあ断じてねえ。もっと恐ろしいものの片鱗(ry
43仕様書無しさん:2007/08/27(月) 18:58:56
>>42
今頃そんなこと言ってるって大丈夫?
いや煽りとかじゃなくて

そんなの「プログラミング概論」みたいな講義で一番最初の方に習うことだろ。
っていうか、自分で考えればそんなの当たり前だってわかるじゃん。

1μSesに一度実行されるコードの処理時間を1nSec短縮することは
一秒に一回実行される処理をどれだけ短縮することに相当するか。
44仕様書無しさん:2007/08/27(月) 20:15:10
1μsに1ns短縮だと1‰だな。数倍には程遠い。
45仕様書無しさん:2007/08/27(月) 20:50:34
>>43
マジレスすると組み込み系にはソフトの正規教育を受けないで入ってきているのが多いから
たとえ院卒でも

>「プログラミング概論」みたいな講義

何ぞ、そもそも受けたことないのがざらにいる
46仕様書無しさん:2007/08/27(月) 21:43:27
>>43
全体のコードの一パーセントにも満たない部分が
全体の七割近くの時間を食っていて、それをほぼ0にできて感動してたのが
そんなに悪いのかね。

プログラミング概論みたいな本は今までよんだことがないよ。
畑違いの学部を出たんだ。
47仕様書無しさん:2007/08/27(月) 22:36:00
おもしろいと思うから、勉強してみたら。
48仕様書無しさん:2007/08/27(月) 22:56:47
処理を高速化するのは楽しいよね。
HWの性能の差が処理速度の決定的差でないことを教えてやる!って感じで。
49仕様書無しさん:2007/08/27(月) 23:00:09
何とも感じない奴のほうが問題。まぁそういう奴はそのうち辞めるだろうけど

>>46
講義や本で学んだ知識より実際に見て感動した事の方が大きいと思うよ。
元々誰が書いたコードか知らないけど、大幅な効率UPできた時の感動は分かる
50仕様書無しさん:2007/08/27(月) 23:05:51
リファクタリングには前担当を否定する暗い喜びがある。
51仕様書無しさん:2007/08/27(月) 23:22:36
>>50
それが楽しいんじゃねーか。

それぐらいの楽しみが無ければ、組込み屋なんかやってらんねー

バグ見つけて通信機器2機種を販売終了させたのは良い思い出だ。

前担当は仕事してねーだろw
52仕様書無しさん:2007/08/28(火) 03:24:19
リファクタリングと言いながら、インターフェイス以外はすべて作り直したことがある。
前担当者はかなりショックを受けたみたいで数日ほど会社を休んだw
53仕様書無しさん:2007/08/28(火) 08:26:36
>>46
悪いとは言ってないよ。

ただ、「俺は宇宙の真理を一つ発見した!!」みたいな勢いに見えたから(ごめん
この比喩はちょっと大げさすぎるな)おいおいそんなの常識だろ、って言ってるだけよ。
54仕様書無しさん:2007/08/28(火) 09:46:58
>>53
2ちゃん定型書式で書いただけで別に初めて遭遇したわけでもないし
ここまで劇的なのは初めてだったけど
55仕様書無しさん:2007/08/28(火) 13:20:32
>52
>前担当者はかなりショックを受けたみたいで数日ほど会社を休んだw

ショックを受ける=進歩する意思があるだけましだよ。
オレの所なんて、ボロボロのソース書いてそれを修正しても、
何とも感じない奴らの多い事多い事・・・
で、またボロボロのコードを量産していく。
56仕様書無しさん:2007/08/28(火) 23:53:25
>>55
あるなぁ、それ。
せっかく治したのに、またぼろぼろにされていく。。
57仕様書無しさん:2007/08/30(木) 17:43:51
今度のマイコンはROMが2KBだだだだーーーー
58仕様書無しさん:2007/08/30(木) 18:37:37
先駆者の苦労は、底知れない。..と思うが
59仕様書無しさん:2007/08/30(木) 18:52:29
>>57
あいまい3K それRAMってことかい ちょっ
60仕様書無しさん:2007/08/30(木) 18:56:12
>58
底知れなくても、
設計してない+試行錯誤+コードそのまま
ってのは、マズイんだと思うのだが・・・
61仕様書無しさん:2007/08/30(木) 19:07:45
流れぶった切って悪いが
プログラマを馬鹿にする「プログラム書き」っていないか?
俺は製品開発しているんだから、プログラマじゃない。だから、
設計だの手法だのリアルタイムOSだの、まったく興味がない!
俺が考えたように適当にやるんだ!問題ない!
っての。

ハジメテミタんだが、これってどうなんだ?
62仕様書無しさん:2007/08/30(木) 19:58:02
大嫌いな奴を組み込み系の展示会で見かけたときは
殴り倒してやろうかと思った。

性格が悪くて仕事もできねー奴は糞。
便所に流してやりたい。
63仕様書無しさん:2007/08/30(木) 19:58:38
ほら吹き?
64仕様書無しさん:2007/08/30(木) 20:01:54
>>61
自分に被害が無い限り、放っておくのがいちばん
65仕様書無しさん:2007/08/30(木) 20:05:28
うんこな組み込みプログラマーはトイレにつっこんで流そう
貧弱で体力ないしヘタレだから抵抗できねーし
66仕様書無しさん:2007/08/30(木) 20:31:45
相手もそう思ってるだろうし


たぶんおまえらも糞。
糞は糞を嫌うか。

まー俺も糞。
所詮組込みは糞溜めだな。
67仕様書無しさん:2007/08/30(木) 20:37:14
世間には、まったく動かないデバイスドライバを納品しても
それのクレームにまったく対応しなくても
それで月130万円以上の単価ぼったくろうとも
講師としてひな壇にあがり、他人様の製品に関して得得と語ったりする。

ひんまげないと動かないボード10枚以上ならべて、
「どれでもいいから動くものを選んでデバッグしてくれ」
と、にやにや宣う髭面がいまや自作の神扱い。

そんな奴の方が生き残れる業界なんだよ。しがみつくのも
ほかにできないからしかたないけどな。で、多職種からは
蔑まれ、ごみよくずよつかいすてよと冷笑される。

あははのは。
68仕様書無しさん:2007/08/30(木) 20:44:14
>>60
設計してない+試行錯誤+コードそのまま
ってのは、マズイんだと思うのだが・・・

 そのとーりなんだけど。
  基地外がドシロート拾って作った代物なんだから。今も同じか?!
69仕様書無しさん:2007/08/30(木) 20:48:39
設計したといいつつ、設計ってコーディングのことだとか
フローチャート書いて思い付きの処理メモするだけだって
奴なら星の数ほどいるわ。

もっとも、Windowsとかならググってサンプル探して
斜めよみして切り貼りしてもしかたねーだろ。
いいじゃんか、人もソフトもどうせ使い捨てなんだし。
70仕様書無しさん:2007/08/30(木) 21:04:08
プログラムは、技術と思ってないお偉いさんが、諸悪の原因だろうねぇ〜♪
71仕様書無しさん:2007/08/30(木) 21:06:38
それを嗤うおまえもな。

シンデシマエ。
72仕様書無しさん:2007/08/30(木) 21:08:07
まぁ内部設計ぐらいまで終わってりゃ、技術無くても動くプログラムは出来るからなぁ。
技術があると、パフォーマンスとか保守性とか品質が上がる。
73仕様書無しさん:2007/08/30(木) 21:12:05
「別の」プログラマが悪いんだが、他職種こそスキルほぼなくても
なんちゃってエンジニアでも設計できちゃうだろ。
CAD/CAM/NC/シミュレーションツールの出来といったら。

PCやらWSの上で踊ってるのは同じなのに、具象にならないからって
冷笑されるのはなんかあれだが。

まあ、内幕暴露とかで楽しめることもあるがな。
74仕様書無しさん:2007/08/30(木) 21:21:16
>>72
後者に自信あるけど、前者だらけで肩身が狭い今日この頃...orz
75仕様書無しさん:2007/08/30(木) 21:33:53
組み込みって人気無いの?
76仕様書無しさん:2007/08/30(木) 21:49:20
>>74
自信持て。
いざと言うとき頼りにされてるハズだっ

>>75
人気無いっつーか、華が無いっつーか。
一般人の目が行きそうなトコって精々携帯くらいじゃない?
77仕様書無しさん:2007/08/30(木) 22:53:11
技術職の中では最下級かと。

うっかりすると技能職より(ry
78仕様書無しさん:2007/08/31(金) 02:51:24
地味な事こなす奴がいないと世の中回らなくなる...
79仕様書無しさん:2007/08/31(金) 17:43:28
というか物作り自体が時代遅れ
80仕様書無しさん:2007/08/31(金) 21:58:38
そんなことをいってるから日本の産業界が傾く
81仕様書無しさん:2007/08/31(金) 23:56:29
日本は景気拡大を続けているそうだが
82仕様書無しさん:2007/09/01(土) 00:05:11
物作ってるからね
83仕様書無しさん:2007/09/01(土) 00:09:40
製造は仕方ないとしても設計は三国に持ってかれないように頑張らなきゃ
84仕様書無しさん:2007/09/01(土) 01:01:27
TOPIXは全然上がらないけど。
下げはダウと連動するけど、上がるときは上がらない。
85仕様書無しさん:2007/09/01(土) 03:34:31
>>67
素人はそんな奴に騙されて、堅い奴の言う事は一切耳を貸さない。

技術者が矛盾だらけの会話をしてるのに、それに気がつかないか
気がついても聞き流すってのは今流行してんのかねぇ。

いわゆる文系ってそんなに阿保なのか。
86仕様書無しさん:2007/09/01(土) 04:04:56
あまりの矛盾だらけの会話に呆れているのでは
「こいつらありえねえ・・・・・・・」

理系キモイよ理系
87仕様書無しさん:2007/09/01(土) 04:50:18
>>86
ホロン部もこんな朝からたいへんだねぇ。
88仕様書無しさん:2007/09/01(土) 10:34:09
今の日本は、ものを作って得た金よりも、金貸し業で儲けた金の方がおおいそうだね。
ものづくり=理系、金貸し業=文系 の仕事だから今は文系の方が強いのかも
89仕様書無しさん:2007/09/01(土) 13:40:10
「今は」ってずっとだろw。
文系にとっちゃ、理系=土方くらいの認識だろ。
90仕様書無しさん:2007/09/01(土) 13:46:51
ここで言う組み込みプログラマには、WindowsCE 上で動作するプログラムを
VC++エンベデッドで開発している俺みたいなのも含まれますか?
91仕様書無しさん:2007/09/01(土) 14:11:14
含まないんじゃないかな
92仕様書無しさん:2007/09/01(土) 14:41:50
ドライバからシコシコ作ってるんなら含むんじゃないかと思う
93仕様書無しさん:2007/09/01(土) 14:44:51
PL法やらなんやらで、やたら技術に対して厳しくなる方向に結びつきつつあるしな。

いくら技術が高度になろうとも、文系共にとっては便利になったな〜ぐらいしか感じてないだろうし。
でもって不具合があると、過剰な反応を示す。
94仕様書無しさん:2007/09/01(土) 14:49:19
>>93
それは文理関係なくお前さんの感覚がオカシイと思うぞw
Windows以降の(MS文化とも言うべき)この業界の非常識に毒されすぎだよ。

ユーザーとしては不具合が認められないのは当たり前だろう。
お前さん、自分が買った新車が、雨の日の後にはヘッドライト内が水滴で
曇るような車でも文句言わないの?
95仕様書無しさん:2007/09/01(土) 15:49:10
96仕様書無しさん:2007/09/01(土) 16:02:01
>>94
ユーザーがメーカーに文句言うのは構わない。
>>93はそれを技術者のせいにする「メーカー内の文系」に対して文句言ってるんだろ。
97仕様書無しさん:2007/09/01(土) 16:16:58
>>96
責任とれない丸投げ野郎が多いからね〜〜〜〜〜〜〜〜
98仕様書無しさん:2007/09/01(土) 17:17:47
>>96
君頭悪いでしょw
じゃあ自動車メーカー内部の「文系」は、ユーザーからのクレームを
「技術者」にフィードバックしないとでも言うのかねw

というか、頭の悪い奴に限って文系理系ってプロレスみたいな対立が大好きなのは
何かの法則かね。

まあ、そこそこの学校出てる人間ならたいてい「オールマイティ」だから
コンプレックスの持ちようがないんだけど、そうでない人間はそうはいかないんだろう多分。

ちなみに、文系理系って無意味な区別は日本にしかない。
これ本当。
99仕様書無しさん:2007/09/01(土) 17:25:55
>>98
フィードバックするのと技術者のせいにするのは全然違うだろ。

文系も理系も協力して問題に取り組むのが本来あるべき姿。
現実には、そうでない会社なんていくらでもあるんだよ。
100仕様書無しさん:2007/09/01(土) 17:26:00
以上、自動車ディーラーの戯言でした
101仕様書無しさん:2007/09/01(土) 17:29:48
ネタも出さないで”やれやれ”じゃ、まともなもん出来んでしょ。
102仕様書無しさん:2007/09/01(土) 17:30:05
なるほど、「文系も理系も協力して問題に取り組む」とは、
「ボキュの仕事に偉そうに口出しするな」って態度のことを言うのかw

最近こういう人間が多くて困るよねまったく。
>>99みたいのがネタとは思えないのが現代日本の病理の一つだ
103仕様書無しさん:2007/09/01(土) 17:37:12
この業界、ほら吹きが多いみたいだよ。
104仕様書無しさん:2007/09/01(土) 17:39:34
と、異形の詐欺師とよばれる>>103が申しております。
105103:2007/09/01(土) 17:46:30
俺はやられたことあるよ。ある意味、被害者なんだけど...
106仕様書無しさん:2007/09/01(土) 17:52:24
>>102
そうそう。「文系の仕事に理系が口出しするな」って態度の奴が多くて困る。
107仕様書無しさん:2007/09/01(土) 18:39:24
>>98
ホロン部もレベル上がってきたな。
良い事だ。
108仕様書無しさん:2007/09/01(土) 20:55:59
能力もなくて性格も悪い離婚された奴のことか?
ウラで「ゴマスリチ●カス」と呼んでたけどな。
109仕様書無しさん:2007/09/02(日) 18:22:03
(・ω・)ノ
110仕様書無しさん:2007/09/02(日) 19:37:36
「ゴマスリチン●ス」って「チマチョゴリ」に似ているよね
111仕様書無しさん:2007/09/02(日) 20:53:20
ロジアナを常用してる俺たちなわけだが、
こんだけ使ってるとロジアナを作りたくなってきたり

な?
112仕様書無しさん:2007/09/02(日) 23:39:58
サウンドカード使って簡単にPCで実現できんだろか。。
113仕様書無しさん:2007/09/03(月) 14:54:43
どんなサンプリングレートのサウンドカードだよ
114仕様書無しさん:2007/09/03(月) 19:56:20
そもそもHW的に直流分カットされてるだろうし、RCAのダイナミックレンジって...
115仕様書無しさん:2007/09/03(月) 20:36:10
I2S インターフェース可能なのを探して、 データを入力にすれば
16bit48Kサンプルで 16*2*48000 約1.5Mのサンプリングレートだな

ただ1ビットではロジアナというには厳しい

http://akizukidenshi.com/catalog/items2.php?q=K-01799
これに1Mのクロックを入れてやれば 8bitのロジアナに出来るかもな 
980円
116仕様書無しさん:2007/09/03(月) 22:48:31
ICEがうまく使えない、路地穴なんて触った事もないソフト屋が
ハード屋と一緒にデバッグしたんだよ〜とか紛らわしい事言って自慢してるけど、
雑用コーディングする以外何が出来るんだろうか?

それで居てハード屋にデバッグさせるんだから凄い政治力だと感心した。
そのせいで以降ハード屋の対応が物凄く悪くなってそのとばっちりを受けてるorz

素人と仕事したハード屋お疲れさんでした。
俺なら1ヶ月と持たず辞めるよ…
何時切れて殴るか判らんから…

賭博関係業界は腐ってるな。
117仕様書無しさん:2007/09/04(火) 00:12:26
>>116 程度が見えないレスだなぁ・・('A`)
118仕様書無しさん:2007/09/04(火) 01:22:22
組み込みならやっても言いと思う。
119仕様書無しさん:2007/09/04(火) 07:22:33
そのハード屋さんも簡単なソフトが書けなかったってこともあるんだろうしな。
そこら辺はお互い様なんじゃない?
120仕様書無しさん:2007/09/04(火) 20:15:51
>>116
1機種リリースするたびに、膨大な文書を役所の外郭団体に提出しなければならない
業界の方でつか?
設計よりも認定用のドキュメント書きのほうに時間を喰われるんで辞めた先輩がいた。
ハネモノもスロットもハンパないドキュメントの量だったらすい。
121仕様書無しさん:2007/09/09(日) 10:49:26
ハードバグが原因での動作不良に出会ったとき、
組み込みソフトを実感する


そして憤慨する
122仕様書無しさん:2007/09/09(日) 11:49:01
ハードバグを取るためのソフトいつの間にか作らされてたり
システム設計皆無でてけとーにつくったソフト保守させられたり

後で見返すと、一ヶ月100行弄繰り回してただけだったりとか。
そんな仕事も多いだろ。
123仕様書無しさん:2007/09/09(日) 17:47:43
ハードバグなんてつきものだろ。はじめからスケジュール考慮しているよ。

適用につくったデバッグ用機能がいつまでも保守せざるをえないのも
苦しいな。
124仕様書無しさん:2007/09/09(日) 21:11:29
ロジクールのとこの奴は糞
125仕様書無しさん:2007/09/09(日) 22:30:54
でもさぁ、ハード屋が同じフロアに居るから強く文句言えないんだよなぁ
126仕様書無しさん:2007/09/09(日) 22:42:24
>>125
居るから文句言えるんじゃないのか?
127仕様書無しさん:2007/09/09(日) 22:45:13
ひきーなんだよ、内弁慶なんだよ
2chでしか強気にな僕になれないんだ!
128仕様書無しさん:2007/09/10(月) 20:32:33
>>123
>適用につくったデバッグ用機能がいつまでも保守せざるをえないのも
>苦しいな。
あるあるww
DbgとかTestとか言うモジュールやら変数やら、いつまでも残ってる。
消すのか消さねぇのか、さっさとハッキリして欲しい。
消さねぇんだったら仕様書に反映してプリフィクス変えさせてくれ、と思う。
129仕様書無しさん:2007/09/21(金) 16:54:03
楽しそうだなぁ
http://hmdt.jp
130仕様書無しさん:2007/09/23(日) 13:48:17
組込みやってるならMotoGP見るよな!!!

14時からだぜ!!!!!!!!
131仕様書無しさん:2007/09/24(月) 10:47:39
「これからの時代はxxだ」と嘯きながら何もしない上司が多数。
真意は、xxを馬鹿にしてるだけ。そんな業界。

右も左もアセンブラ大好き。アセンブラ天国。
Cを独習して書きはじめた奴から退職していく。
そんな業界。

ゲーム業界行った方がマジでいい。
132仕様書無しさん:2007/09/24(月) 17:41:09
今でもアセンブラでやってるところあるのか、いいなあ
133仕様書無しさん:2007/09/24(月) 18:08:44
C言語によるPICとかFPGAとかH8というような
書籍がありますが、これらはいわゆるマイコンの種類ということで
よろしいのでしょうか。
あと上にもありますように、アセンブラは勉強しておいたほうがいいですか?
CASLUとかちょっとかじったことがあります。試験用の言語でしたっけ。
134仕様書無しさん:2007/09/24(月) 18:12:42
>>132
俺も思った。
ただ、その技術って逆に、組み込み以外の業界では全く潰しのきかない技術だよなぁ。
ま、Cとか使うハードよりのプログラム書くのには、知ってた方がいいと思うけど、
そこの部分をバリバリにやってもって意味で。
Java+Oracleとかバリバリだったら、今は相当潰しきくけど、
135仕様書無しさん:2007/09/24(月) 18:26:36
>>133
>C言語によるPICとかFPGAとかH8というような
>書籍がありますが、これらはいわゆるマイコンの種類ということで
>よろしいのでしょうか。

ぐぐれ

>あと上にもありますように、アセンブラは勉強しておいたほうがいいですか?
>CASLUとかちょっとかじったことがあります。試験用の言語でしたっけ。

大まかな概念を理解していれば大丈夫。
細かいことは必要になってから勉強すれば十分。
136仕様書無しさん:2007/09/24(月) 18:50:07
>>133

Cは必須。
アセンブラは担当するマイコンにより命令がころころ変わるので、必要な時に覚えればよい。
昨今、ほとんどの開発はCを用いるので、Cを知っていればつぶしはきく。
137仕様書無しさん:2007/09/24(月) 19:51:37
組み込みやるなら、アセンブラは少なくとも知識としては知ってて欲しいかな
あと、C言語使うにしても、コンパイラがどんなコード吐くかとは知ってて欲しい
関数の呼び出し方とか、スタックフレームの生成方法とかね

もう、組み込み一筋10年の人でもアセンブラ知らない人のが多いからなあ
C言語の関数設計させると、戻り値とか引数とか char にしてんの
なんで?って聞いたら、メモリ節約のためだって・・・
138仕様書無しさん:2007/09/24(月) 19:59:18
LSI-C80かね。なつかしいな。
charだとAに乗るんだよ。
139仕様書無しさん:2007/09/24(月) 20:01:56
帰り値はともかく、引数はcharにすれば メモリ節約出来るCPUはまだ多いだろ
140仕様書無しさん:2007/09/24(月) 20:55:23
それ以前にコストとか消費電力とか諸々の理由で、
いまだに8bitマイコンのアセンブラで組まざるを得ない分野はあるんですよ。
141仕様書無しさん:2007/09/24(月) 20:58:19
4ビットマイコンならともかく、8ビットなら、
最近はPICでさえCコンパイラを使うけどな。

殆どアセンブラと変わらん使い方だけど、
パソコン上で検証出来るのが大きなメリットだ
142仕様書無しさん:2007/09/24(月) 21:57:55
4ビットマイコンを強制されるプロジェクトも中にはある。
Cなぞ使えない上にメモリ空間ガチガチ。
実装出来なかったら左遷。実話。
143仕様書無しさん:2007/09/24(月) 22:02:11
まあ一昔前は4ビットマイコンで 1ビットのフラグを求めて必死になったもんだけど
今はソコまで厳しくないな
・・・・ と思ってる間に、4ビット使うようなのはもう全部海外に行っちゃった・・・・既に思い出。
144仕様書無しさん:2007/09/24(月) 22:03:17
基板設計まで自前でやっている独立系の会社ならCが使えるね。
「いまどき〜」が通用しない業界ですよ。
RTOSなんて話にも出ませんでしたよ。

ところが中途募集見るとどこもRTOSとかネットワークとか書いてあるんだな。
配属先は外注管理じゃないか?とも思う
145仕様書無しさん:2007/09/24(月) 22:06:51
いちおう付き合いのあった外注先ひっくるめてのレベルです。
大手だとほとんど外注に出すから実態を知らないんじゃないかな。

携帯やるのが組み込みだと思ってる。
146仕様書無しさん:2007/09/24(月) 22:35:47
PICはハード屋が片手間でやる遊び。ソフト屋の仕事ではない。
147仕様書無しさん:2007/09/25(火) 00:30:14
引数やリターンのリソースを削減したいんなら、まず関数の呼び出し規約くらいは見てからにしてほしいよね
148仕様書無しさん:2007/09/29(土) 19:57:08
今度やるプロジェクト、ソースコードだけで4MBもある・・・
どうしてこうも開発規模が大きくなるんだ
もういやだ
149仕様書無しさん:2007/09/29(土) 20:58:54
>>148
何作ってるのか知らんが、ソースコードの大半が「データ」だったりしないか?
150仕様書無しさん:2007/09/29(土) 21:05:15
それプロジェクトのzipサイズでbinファイルごとってオチじゃあるまいな
151仕様書無しさん:2007/09/29(土) 23:34:06
4Mも?。
ちっと、月曜日職場に行って、今年のプロジェクトのソースを圧縮してみよう。。
tar.gzにして全部で90Mあるから、オリジナルの部分でそれくらいは余裕でありそうな気がする。
152仕様書無しさん:2007/09/30(日) 03:41:09
434 :名無しさん@そうだ登録へいこう :2007/09/29(土) 00:20:17 ID:5BCnHtRm0
左胸に○○工業とロゴが入った上下お揃いの作業着に、小学生の上履きのような静電靴を履いて、
朝から晩までPCや機器と向かい合っているようなイメージでよろしいでしょうか?
スーツは嫌いです。
153仕様書無しさん:2007/09/30(日) 04:29:19
>朝から晩まで ってとこが間違いだな。 朝から夜明けまで、が正しい。
154仕様書無しさん:2007/09/30(日) 05:14:16
工場を改造した配管むき出しのスペースにPC並べて
熊みたいで口だけのリーダーを中心に
若いのがお気楽にVSを上げたり下げたりして
「UIでは一切エラーチェックやってません」みたいなソフト作る
そんなイメージです。

「〜工業」という名はここ10年位の不況のどさくさで改称して消えて、
親会社の名前に何だかよくわからない外来語がくっついてます。
155仕様書無しさん:2007/09/30(日) 07:10:37
作業着いいよね。冬は暖か、夏は涼しい。
156仕様書無しさん:2007/09/30(日) 07:51:00
冷暖房完備だがやたら機械の騒音がでかいところで
機械系メンバー数人、工法系メンバー数人に対して一人しょんぼり
電気配線からプログラムから荷物運びまでマルチで活躍できるすばらしい職場です

今ならリアル200V体感ツアーやプログラム暴走軸クラッシュ体感ツアーも用意しております
157仕様書無しさん:2007/10/03(水) 03:19:31
>>156

NC/FA/制御系?
158仕様書無しさん:2007/10/08(月) 03:33:45
リレー制御はするが、強電じゃないし、アクチュエータの制御もないから、危ない思いはしないな。
(俺のは通信機だから、せいぜい通電/切断とか、周波数選択程度)

釣り銭機とか、改札の通せんぼとか、ロボットのアームとか、ああいう物理動作を伴うものの
制御は、面白いのと危ないのが表裏一体という感じ。デバック中にぶん殴られたりとかしそう。
159仕様書無しさん:2007/10/12(金) 20:16:01
実践的に組み込みソフトのノウハウを勉強したいんだけど、組み込みプログラムのダウンロードサイトってありませんか?
160仕様書無しさん:2007/10/12(金) 20:26:17
>>156
非常停止を押して停止せずであぶねぇあぶねぇ
アームがこの野郎って....ガクブル
命がけだな、俺らって
161仕様書無しさん:2007/10/12(金) 22:50:47
日本信号で改札機のファーム組んだ奴、出て来い!
大変な損失が出ているぞ〜!

もしかして、誰かが仕組んだウイルスか? 一斉に止まるのはおかしいよな。
162仕様書無しさん:2007/10/12(金) 23:15:12
どうせどっかの偽装請負が組んだんだろwww
163仕様書無しさん:2007/10/13(土) 13:02:40
時限バグ弾
164仕様書無しさん:2007/10/15(月) 10:54:33
まあ、ある程度巨大なシステムになると
その仕事を取ってくる方にエネルギーを費やしてしまって
完成させる為のエネルギー不足になりがちって事なんだろうな。
165仕様書無しさん:2007/10/15(月) 23:03:49
>>163
誰が上手いこと言えと…www
166仕様書無しさん:2007/10/16(火) 21:37:22
元を作った人が会社にいなくて引き継ぎで手探りで修正している様子が目に浮かぶ。

コード書きはまず無理な納期で仕事をねじこまれるところから始まる。
仕様はあやふや、大枠は無茶苦茶なのにほぼ決まっているが、詳細はすべてコード書き任せ。
機材やライブラリの手配もままならない。上も動きやしない。
書けども書けども進捗率は上がらず納期ばかり確認される。
間に合わないから変えてくれと言ってもダメの一点張り。
偉い人に煽られれば煽られるほどコード書くのが遅れる。
偉い人のそのまた偉い人まで出てきてコード書きを叩く。
開き直ってマイペースで書くようになる。心中穏やかでない。
ぼろぼろになってテストに回すとバグだらけ。
追及しきれずに出荷してその後も細かいバグがぼろぼろ出てくる。

忘れた頃に大きいのが、しかし原因はつまんないのがやってくる。
すかさず客先から袋叩き。出荷した物みんなみんなリコール。
コード書いた人間は責任問われて配置転換。
ぼろぼろになって逃げるように辞める。

組み込みってこういう世界です。別に儲かりません。
それでもやりたければどうぞどうぞ。
167仕様書無しさん:2007/10/16(火) 21:42:01
遅れてるプロジェクト(デスマーチ)に人員を追加しても進捗率は上がらない。
実話です。

無理な物は無理。
どんな納期の遅れでも修正する高度な政治力が下働きの時代から必要です。
168仕様書無しさん:2007/10/16(火) 21:45:17
バグを出す人間は悪い奴。
しかしバグはなくならない。
つまりコード書く奴は悪い奴。

上の認識は、物を作る奴はすべて遅れやミスをおかして会社の利益を損なう、悪い奴。

悪い奴になりたくなければ物づくりに携わるのはやめましょう。
169仕様書無しさん:2007/10/17(水) 15:35:30
まともな設計書もださんで、丸投げされれば、バグバグするのは当たり前なのでは?
170仕様書無しさん:2007/10/17(水) 16:19:27
要求が厳しくなってるから、設計とか実装とか考え直さないと自爆の道をまっしぐら...
171仕様書無しさん:2007/10/17(水) 17:45:34
ソフトでRTC作ったことあるか?難しいぞ。
172仕様書無しさん:2007/10/17(水) 17:52:59
TOPがバカだと、ほら吹き集団になるみたいだよ。
173仕様書無しさん:2007/10/17(水) 19:23:57
まあ利益率を一瞬無限大にするには、
会社を解散することだ門ナ。
174仕様書無しさん:2007/10/18(木) 10:17:27
>>167
禿同。

教育コスト・時間を考えろよな。
175仕様書無しさん:2007/10/18(木) 10:19:33
>>166 こういう状況は、前線で戦わされる足軽と同じだよな。
   生き残る方法は、ただ1つ。 命を捨ててかかること。

   簡単なところでは、欲と打算を捨てて腐らないことだ。
   無心に仕事に打ち込むことだ。

   欲と打算が頭をよぎるから、「あほらし〜!」とい気分になり
   良いアイデアが浮かばない。 そして、ますます作業効率が落ち
   細かいとこまで気が回らずバグを作りこんでしまう。

   命を捨てる必要は無いが、欲は捨てて無心になることだ。

   やり方によっては、効率が何倍何十倍いや何百倍にもなることを
   信じるのだ。 そうすれば、時給が100円でも実質数万円の時給に
   なるではないか? 

   単純過ぎて、申しわけない。


   
176仕様書無しさん:2007/10/18(木) 12:03:39
>>171
リアルタイムクロックの事? あるよ。 4ビットマイコンとH8とPICでやった事がある。
32.768Kの水晶付けて切り替えるのだけど
電池のもちを長くするのに、色々大変。

でも結局一番効いたのは32K水晶の発振部分の抵抗値の調整だったりして
177仕様書無しさん:2007/10/18(木) 18:03:38
>>176 出来合いのRTC使うのとどう違うの? そういう構成のメリットとかあるの?
178仕様書無しさん:2007/10/19(金) 06:55:44
どう違うって、コストが違うだろ
179仕様書無しさん:2007/10/19(金) 10:46:51
百円位安くなるかな
180177:2007/10/19(金) 14:16:20
なるほど、ハードのコストを抑えるということですね。マイコンでふつうに時刻更新してゆくと
天文時計とずれてきますよね。RTCらしくさせるにはどういう補正を加えるんですか?
181仕様書無しさん:2007/10/19(金) 17:57:43
日が更新されたときに月や日の整合性を保つ。
うるう年も考慮する。
だるいけどそんな難しくない。
182仕様書無しさん:2007/10/19(金) 18:12:41
クロックがずれる揺らぐ誤差がたまるからどーすんだといってるように見えるが?
183仕様書無しさん:2007/10/19(金) 18:43:46
1秒当たりのズレを補正するって意味なら
製品出荷時に実際に1秒を何カウントで行うかをキャリブレーションするソフトを入れたりするけど。

それRTCとは関係ないよ
184仕様書無しさん:2007/10/19(金) 18:47:19
>>180
時刻が大事な機器でスタンドアロンなら、RTCがないってのは余り考えられないかと。
185仕様書無しさん:2007/10/19(金) 19:01:23
バックアップとかきにするな。

M$様の製品を見るんだ
186仕様書無しさん:2007/10/19(金) 19:02:00
RTCなんてそんなに当てになるの?
まぁマイコンでカウントするよりはましなんだろうけどさ
187仕様書無しさん:2007/10/19(金) 19:33:01
クロックの精度次第なのはRTC使おうがソフトでやろうが同じことだね
188仕様書無しさん:2007/10/20(土) 02:52:52
そう言えば、パソコンだってRTC入ってるはずなのにnetと同期取らせてないと狂ってきますね。
RTC持ってても、時刻が大事な装置なら天文時計とのリンク手段を持っているべきなんですね。
189仕様書無しさん:2007/10/20(土) 07:01:59
リアルタイムは、「その都度」という意味であって、「ホントの時間」って意味じゃないよ。

RTCは電源を切っても動き続けているというような意味でリアルタイムクロックと呼んでるの。

マイコンでワザワザ実現するのは、コストのほかに小ロット品なんかで部品調達のリスクを減らす目的もある。
専用IC使ってしまうと、廃品種になった時にその部品探して右往左往する事になるからね。

まあでも、最近CPUそのものが廃品種化するスピードが速くて、そのあたりは諦めてるけどね。
もうPIC使って、RTC使って、さっさと作って廃品種になったら作り直す方がマシだと。
190仕様書無しさん:2007/10/20(土) 07:57:22
>>188
時計の読み込みは起動時に一回だけで、カウントはRTC関係なしにやってるから。
191仕様書無しさん:2007/10/20(土) 08:34:53
マイコンが廃品種になる理由って考えたことあるか?以下適当に

・製造プロセスが変わって旧マスクは使えなくなったから
・マイコン=実は特定企業向けのASSP、そこでの生産終わって予定数製造終了
・本当に作れないほど古いのに、ボケ入った企業の連中はずるずる使いつづけるのに付き合ってきたが
いよいよ物理的に不可能になったため
・売りたい新型にとっとと置き換えたいため
・理由などなく、単に保守対応年度が過ぎ去ったため
192仕様書無しさん:2007/10/20(土) 11:55:56
・ラインナップ上原価割れの価格設定をせざるを得なくなった
・売れないので管理コスト削減のため
193仕様書無しさん:2007/10/20(土) 14:13:50
・メーカーが潰れた
194仕様書無しさん:2007/10/21(日) 12:21:35
ソフトでRTCって
全処理のクロック数を合わせるってこと?
195仕様書無しさん:2007/10/21(日) 12:36:01
なんらかのクロック源を適当に分周して、
時刻を表す値(yy/mm/dd) HH:MM:SSの更新をソフトで行うことを言ってるに決まってるじゃん。
196仕様書無しさん:2007/10/21(日) 14:31:27
WindowsでもLinuxでもOSが普通にやってることだね。
197仕様書無しさん:2007/10/21(日) 14:49:11
あれはHWのRTCが入ってるんだよw
初代のIBP PCからしてそうだよ。

それどころか日本のPC-8801とか、X1の世代のPCですらそう
198仕様書無しさん:2007/10/21(日) 15:20:35
もともとRTCのチップをH8で作るって話なんだろ?

H8tynyでもオーバーキルな気がするが、
供給立たれるよりはまし。
199仕様書無しさん:2007/10/21(日) 15:55:08
>>197
既出だがOSは起動時しかRTCをアクセスしないよ。
起動後はシステムクロックを元にしてソフトRTCしてるんだYO!!
200仕様書無しさん:2007/10/21(日) 23:58:55
組み込み勉強中です
カーナビはWindows Automotiveに移行しているようですが
Windows Automotiveも勉強したほうが良いでしょうか
201仕様書無しさん:2007/10/22(月) 03:39:32
>>200
いや、すぐ廃れる流儀なのでVxWorksやりな。
202仕様書無しさん:2007/10/22(月) 19:08:38
>>190 ほんでもって、ソフトRTCの精度維持にはGPSを使っている。

   GPS衛星自体が原子時計を積んでいるので、高性能なGPSレシーバー
   使えばマイクロ秒レベルの誤差に抑えられる。
203仕様書無しさん:2007/10/23(火) 09:04:16
衛星との誤差μSレベルってのはどういうことを言うの?
衛星から電波が飛んで来るのに数百mSかかり、3〜4個の衛星の情報使うんでしょ?
秒がきっちり合ってればそれでいい気がするが。
204仕様書無しさん:2007/10/23(火) 17:26:48
>>203
秒単位で合えばいいかどうかはアプリケーション次第。

衛星から電波が飛んでくるのに時間がかかり3〜4個の衛星情報を使う。
そこまで知っているって事はGPSの仕組みをちらっとは読んだことがあるんだな。
GPSでμ秒単位で衛星と時刻同期ができる方法を考えろ、というテーマは
組込プログラマ向けのFizzBuzz問題に使えそうな気がする。
205仕様書無しさん:2007/10/24(水) 07:23:17
>>194
それはプアなタイマーしか持ってない1チップでやるテクニックだね。
206仕様書無しさん:2007/10/24(水) 16:22:36
実際にソフトウェアRTCをCで実装するとしたらどんな感じですか?
定番アルゴリズムはあるのですか?
どなたかサンプルを提示していただけませんか?
【仕様】
YYYY:HH:MM:NN形式の時刻文字列を2007/01/01からの通算秒に直すとか、
いくら考えてもわかりません。
207仕様書無しさん:2007/10/24(水) 16:36:53
>>206
学生くん?
208仕様書無しさん:2007/10/24(水) 16:43:44
>>207
はいそうです。ここでRTCの話が出ていて興味を持ったのですが何を参考
にしたらいいかも分かりません。
209仕様書無しさん:2007/10/24(水) 16:49:39
>>206
うるう年を考慮に入れて計算していけば求まるんじゃない?
それより通算秒→yyyy:mm:hh:mm:ss
のほうが難しいかもね。
もう少し考えてみな。
210仕様書無しさん:2007/10/24(水) 21:05:12
うるう年問題はよく言われるがうるう秒は皆スルーするのは不公平だと思うんだ。
211仕様書無しさん:2007/10/24(水) 23:19:13
>>210
たしかにそうなんだが、うるう病って不規則じゃないか?過去のものは
配列か何かに持つとして、将来のものはどうするよ?
212仕様書無しさん:2007/10/25(木) 00:36:21
>>209
Cの標準ライブラリにそんな関数があったような
213仕様書無しさん:2007/10/25(木) 00:41:02
>>212
組み込みだとハード構成によっては時間関係の関数はうごかんぞ。
それを自作するって話だろ>ソフトRTC
214仕様書無しさん:2007/10/25(木) 00:47:52
time関数は使えないかもしれないが、
一秒毎に通算秒をカウントアップして、その値をlocaltime関数か何かに渡せば良くない?
215仕様書無しさん:2007/10/25(木) 01:03:16
>>214
それはできるな。すまん。
216仕様書無しさん:2007/10/25(木) 02:31:15
>>203
NTPプロトコルのRFCとか論文嫁。
飛んで来る電波の時間差を使う。
軍用だと更に位相差も使う。

>>199
*BSD系だと、ソフトRTCじゃなくて、
ソフトPLLで更に高精度に調整してる。
SYNC_PPS付きだと、さらにNTPパケット
の「割込み」に直にOSのソフトPLLが
同期する。

カーナビとか作るなら、一度ソース
読んどくと良いかも。
217仕様書無しさん:2007/10/25(木) 02:56:50
今ぶっちゃけいくら貰ってる?

俺は30男、手取りで32万。

1千万プレーヤーにはいつなれることやら
218仕様書無しさん:2007/10/25(木) 06:21:36
フリーで\60。同業にも安いと言われるが、ダンピング価格と言うほどではないとおもう。
稼働率も考慮すると楽ではないが、子育て終わってるし、自分の時間が多いほうがいい。
219仕様書無しさん:2007/10/25(木) 17:49:04
>>206
ツェラーの公式 とかで検索すれば色々みつかるよ
例:
ttp://www.tensyo.com/urame/date/dayTips.shm
220仕様書無しさん:2007/10/26(金) 00:29:57
>>219さん
ありがとうございます。早速探してみます!
221仕様書無しさん:2007/10/26(金) 11:37:59
>>216 このGPSレシーバーなんか使うと安いよ。

http://www.rakuten.co.jp/gps/387357/410134/425002/
222元理系院生 ◆Y6xa0fJPXc :2007/10/28(日) 13:10:29
組み込みプログラムやるのにハードを知っておくと良いと聞いたので、まずはハードの仕事を
やらせてもらってるんですけど、ひょっとしてあまり関係ないんでしょうか?
ソフト屋さんに渡す情報はレジスタとメモリアドレス空間の仕様くらいなんですが・・・。

今後、ソフトに移ることを考えるなら、今はどういうことを意識して取り組むと良いでしょうか??
223仕様書無しさん:2007/10/28(日) 13:24:57
ハードチェック用のテストプログラムをかけるようになれば、何かと便利。
動かない設計してはまりたくないでしょ?
224仕様書無しさん:2007/10/28(日) 13:37:22
>>222は、もっと別のことに興味を持つといいよ。

宇宙開闢のなぞとか、極地で生えるコケの生態とかそういうの。
225仕様書無しさん:2007/10/28(日) 13:50:21
>>222
一段上の仕組みを意識して取り組むべきだな。
ハード、ソフトなどの全体のシステムはどうあるべきか..なんてな。
それ、そのまま組織構造、社会構造につながるから。
そしたら文転汁!。
226仕様書無しさん:2007/10/28(日) 14:22:47
>>222
自分も同じことを聞いてハード志望したけどソフト配属に。
ハードの仕事知らないから何勉強すれば良いのかも分からないや
とりあえずこのスレに書いてあるような雑誌から手を出していけば良いのかなぁ
227仕様書無しさん:2007/10/28(日) 14:33:08
データーシートは読める(理解できる)よね?たまに、ひとりよがりなのあるけど...
228元理系院生 ◆Y6xa0fJPXc :2007/10/29(月) 00:02:46
>>223
なるほど。
動かないのが一番怖いです。
今、業者さんに自分の描いた回路を基板に実装してもらってるんですけど、ビクビクしてます。
テストプログラムのこと、意識しておきます。
>>224
それはおもしろそうですね。
でも仕事をおろそかにするわけにも・・・w
>>225
おお、組織構造や社会構造につながるとは興味深いです。
エントロピー増大の法則と人間集団の行動規則が似ているようなかんじですね。
>そしたら文転汁!。
ぶ、文系のお仕事は自分には合ってなさそうです(汗)
>>226
おお、共にがんばりましょう。

社内ネットでソフト屋さんのプログラムコードを覗いてみたんですが、難しくてゾっとしました・・・。
あんなプログラムを書けるなんて、組み込みプログラマーの皆さんを尊敬します。
ちょっとずつがんばります・・・。
229仕様書無しさん:2007/10/29(月) 08:42:40
>>228 最後の段落について:「仕事をしてる/した んだ」 ということをアピールするために
ハード屋の望まないノイズを山ほど入れるからね。複雑さに感動しちゃダメ。
徒に読みにくくするのが奴らの定石だから、むしろ怒らなきゃ。
230仕様書無しさん:2007/10/29(月) 10:14:07
とある大き目の会社の人が書いたソフトのメンテをやったことがあるけど、
しゃれにならないくらい汚くて読めたもんじゃなかった。
同じ結果を返す関数がいくつもあるし、同じ意味を持つ変数がたくさんあるし…
ソフト屋も望まないノイズが山ほどあったよ。
231元理系院生 ◆Y6xa0fJPXc :2007/10/29(月) 23:54:11
>>229
>>230
なるほどw
しかし、最適化してスマートなコードにすると仕事してないと見られてしまうなんてやるせないですね・・・
232仕様書無しさん:2007/11/01(木) 02:26:21
「行数は評価の対象にしない/ならない」という原則が定着して久しいが、それが悪いほうに
回ってるね。行数を評価するためには、「ある程度は最適化」 つまり少なくする努力をした上で
てのが前提になるから、無駄なコードは省こうとするし、「簡潔な美しさ」という基準もできる。
今は、どうせ評価されないなら、キレイにする努力はムダ、という原則だから、一度入ったゴミを
取り除く努力は誰もしない。その結果ソースコードのエントロピーは、製造後時間とともに増加
する一方。 熱力学の法則と同じになってる(w
233仕様書無しさん:2007/11/01(木) 08:27:31
頭悪いのかねw

行数は処理内容と232のいう「簡潔さ」の関数だとすれば(大方はこのモデルに異論はないだろう)
処理内容は評価の対象ではないのだから、最初から「簡潔さ」を評価すれば済む。
234仕様書無しさん:2007/11/01(木) 08:45:53
見積もり出来て成果としてだせる数値っていったらステップ数ぐらいしかねーから
開発規模を見積もるさいはステップ数を出すな

ただ書類上になるからであって妥当な値を記入するけどな
平均ステップ数/hなんてもんも各社用にもってるしな

まぁ 重要なことじゃねーが 客先が金出す判断に必要という以上ださなきゃしゃーねーわな

ちなみに最適化なんてのはあたりまえにすることであって何をいまさらって感じだな

235仕様書無しさん:2007/11/01(木) 09:33:59
いくらでも細工できるスッテプ数
236仕様書無しさん:2007/11/01(木) 09:38:12
そして、仕込みもバッチリ?
237仕様書無しさん:2007/11/01(木) 14:02:19
評価手法が無いのがいかんのよ。俺なら、参照されてないdefine値それぞれについて、
これはなぜ必要か?今参照されてないなら将来のいつ必要になると想定したのか?とか
全部レポート出させる。使われない関数についても同様。
こういう評価すれば「水増し」無くなるだろうし、保守の人の負担もずいぶん減るとおもう。
238仕様書無しさん:2007/11/01(木) 14:08:17
ヘタレ設計書見て、ヘタレが実装すれば、ワケワカメができるってだけでしょ。
239仕様書無しさん:2007/11/01(木) 15:52:32
その上、いいかげんなチェックして、責任にまで丸投げ...
240仕様書無しさん:2007/11/01(木) 18:42:36
>>237
コーディングチェックシートなら大概のメーカーもってるぞ(やってないメーカーも1社あった)
つーかそんなことレビューしたらレビューアが当然指摘するだろ
レビューイもレビューアもよっぽどならコーティングチェックツールとか使って致命的なのはつぶせばいいだろうて

あんたはいったい何を悩んでるんだ 核心を伝えてくれ

※コーディングチェックシート
 <概要>
 1モジュールなり1クラスなりを対象にアホアホな実装をしていないかチェックしていくもの
 納品対象となる場合もある。
 <実情>
 新人以外は、ソース書くさい引っかからないように書くのでレビューアは機械的に項目を埋めていく
 めんどくさいもの
241仕様書無しさん:2007/11/01(木) 21:41:14
>>237
評価手法っていうより嫌がらせに近いな。
実際に水増ししてきたやつがいたからかもしれないが・・・。
242仕様書無しさん:2007/11/02(金) 06:10:46
コーディングチェックシートより設計チェックシート作った方がいいんじゃないの?丸投げ君たち
243仕様書無しさん:2007/11/02(金) 07:25:49
>>242
半年ROMれ

丸投げって言葉は悪いことの代名詞のように古くから使われてきたが
決して悪い言葉ではないんだぜ

丸投げする側にとってはw
投げた後にきちんと返ってくる相手を見つけて確保するのがなかなか難しいんだがな

それに設計チェックシートを理解し運用できるやつがどれほどいると思ってんだ!おまいは

理想を言うのはいい
だが現実から目をそらすのはよくない
244仕様書無しさん:2007/11/02(金) 07:30:08
実装依存じゃ、もたないよ、よっぽどの経験者じゃないと...
245仕様書無しさん:2007/11/02(金) 08:39:57
実装しやすい状態遷移ぐらいは出してあげてね?丸投げ君たち
246仕様書無しさん:2007/11/02(金) 10:04:12
丸投げさんからもらった文書から遷移状態を起こしなおしてるよorz
247仕様書無しさん:2007/11/02(金) 10:09:47
すまん ちょっと割り込む

俺の勘違いじゃなけりゃ、設計書なりのドキュメントってのは
コーディングしてテストした後につくるもんじゃないのか?

俺は何か勘違いしているか?
248仕様書無しさん:2007/11/02(金) 11:36:36
('A`)一流が現れたぞ
249仕様書無しさん:2007/11/02(金) 11:54:35
回路図だけで作れってのは無理だよ。最低限の仕様は必要。
250仕様書無しさん:2007/11/02(金) 15:59:43
仕様書(要望書とも)→ユースケースや状態遷移などの動作を表すもの→実装→テスト→(主として保守のために)ドキュメント作成
251仕様書無しさん:2007/11/02(金) 17:39:54
もうどうでもいいじゃん。皆残業代がほしいのさ。
仕事上手にやって定時帰りしたり、しようとすると干される国なんだからさ。

てきとう・いきあたりばったり・因循姑息。

あははw
252仕様書無しさん:2007/11/02(金) 18:52:49
奴隷商会にお勤めの方ですか?
253仕様書無しさん:2007/11/02(金) 19:16:29
>>230

途中で仕様変更とかあるから、ある程度汎用性の高いコードを書き始めるが、
設計期間も少なかったために想定外のことが次から次に起こり対処できず、
結果的にやっつけ仕事でだらだら書きなぐったコードに仕上がるからではないの?

ソフト屋さんは頼めば柔軟に対応しなければならないという不文律が生きている。

ただ、かつて一人だけこれに抵抗した漢がいた。
自分の作った某制御ボックスの仕様がちょっと変じゃない?とお客さんがささやいたのを聞き、
その人にあんたの方がおかしいと怒鳴ったため、その場では臆したお客から営業の事業部長に
話が伝わり、以後その漢は出張禁止になった。 腕は立つのだが。。。
254仕様書無しさん:2007/11/02(金) 19:25:15
奴隷に作らせても、いいものはできないよ。
255仕様書無しさん:2007/11/02(金) 19:34:51
「ソフトを熟成させる」って発想無いだろ。あの連中
256仕様書無しさん:2007/11/02(金) 19:39:42
動いたら、儲けんもんって発想じゃないの?
257仕様書無しさん:2007/11/02(金) 19:45:54
言えてるかも。
258仕様書無しさん:2007/11/02(金) 19:50:24
最近はチェックもいい加減みたい。なに作らせてるのかもわかんないって感じ?
259仕様書無しさん:2007/11/02(金) 20:06:54
うん。対象物の動作すら解かってねーって感じ!
260仕様書無しさん:2007/11/02(金) 20:12:35
丸投げするところはおままごとが好きな所だから、当然なのかも?
261仕様書無しさん:2007/11/02(金) 20:29:02
スレ違いだけど"丸投げ"と"丸投げでない"の定義って何ですか?
"丸投げでない"仕事は偽装請負のにおいがする。
262仕様書無しさん:2007/11/02(金) 20:34:25
人がいれば出きるってもんじゃないよ。偽装請負はOAの発想。
263仕様書無しさん:2007/11/02(金) 22:17:43
けーたい。かーなび。そしてテレビを代表する家電。更には社会インフラを支えるシステム。

そういったもののかなーりの部分は・・・
264237:2007/11/03(土) 01:30:04
俺の居たとこ、つきあってるとこは、コーディングルールはあるがコーディングチェックシートは
無いな。そのルールも、頭の能書きとか段付けとか接頭辞に関するルールぐらい。

「参照されない名前を多量に書いてはならない」とか、「無駄な中間変数を書いてはならない」
など、当然と思えることすらルール化されてない。だからノイズは入れ放題。
つ〜か、そんなのルール化したら自分の首締めるの見え見えだからできないだろう。
265仕様書無しさん:2007/11/03(土) 07:43:20
コードレビューってしないの?
266仕様書無しさん:2007/11/03(土) 08:26:15
大体、そういう類は「言わせる、ガス抜く」そしてしらんぷり。

ソフト屋以前に「俺は○○屋だ!」と思ってるなんちゃって組み込みプログラマが多いからそうなる。
267仕様書無しさん:2007/11/03(土) 09:41:17
ヘタレのコードをレビューしても何も生まれないよ。
いかにしたらバグを作り込むかがわかるぐらい?
仕込みも見破れないやつらがレビューすれば当然なのかな?
268仕様書無しさん:2007/11/03(土) 12:43:40
ああ、237みたいな人ってよくいるねw
俺に言わせればこういう人は手段と目的を倒錯してると思う。
町内会やPTAでヒステリックに騒ぐ更年期ババアとよく似ている。
要するにそんなのお前の個人的な自己満足を充足させるだけじゃん、っていう話。

リファクタリングの目的は何?
普通はコードの可読性を上げるためだね。
では未使用の定数や関数があると可読性下がる?
いや、もちろんそれらがコードの読み手を惑わす場合がある以上皆無とはいえないが、
普通はそれほど影響はない。

そんなことより抽象化がうまくされているかどうかの方が致命的に重要でしょ。
たとえば、

・クラスやモジュールへの分割が適切かどうか
・メソッドの切り分けは適切か
・そして一番大事なのはクラスや構造体や変数の命名が適切かどうか
269仕様書無しさん:2007/11/03(土) 13:01:02
いかにバグを潰せるかを考えながら、やればいいんじゃないの?
実装ミスは人がやるからどうしようもないからね。
270仕様書無しさん:2007/11/03(土) 13:03:45
>>268
>・クラスやモジュールへの分割が適切かどうか
>・メソッドの切り分けは適切か

それってコードレビューじゃなくて設計レビューでやるもんじゃない?
271仕様書無しさん:2007/11/03(土) 13:22:11
未使用変数や関数は保守性が落ちるよ。定数は列挙することもあるかな。
リファクタリングの目的を保守性におく事もあるんじゃないかな。

あと、未使用は使い忘れの事もあるのでチェックした方が良い。
毎度チェックされることを考えると、消した方が良くなる。
272仕様書無しさん:2007/11/03(土) 13:37:07
話が通じないなあw
だから効能が[あるか/ないか]の話をしてるんじゃないの。
もちろんあるかないかで言えば効能は「ある」んだよ。当たり前じゃないか。

そうじゃなくて、効能の相対的な量や質の話をしてるんだよ。
別の言い方をすれば物事のプライオリティってこと。
要するにもっとずっと重要なことが他にあるだろって話だよ
273仕様書無しさん:2007/11/03(土) 13:47:49

まあ、なんだ、組み込みは滅びないかもしれないけど。
35超えてやるしごとではないと思う。
特に組み込みのソフトやは物流(本に金が絡む所)はタッチさせてもらえない
からあまり長期間やっても、政治的な発言権はない。
274仕様書無しさん:2007/11/03(土) 13:50:30
C++で変態メタプログラミングさせてくれるような組み込みにいきたいです><
275仕様書無しさん:2007/11/03(土) 13:53:56
思うんだけど、273みたいな奴に限って別のところでは
「日本では技術者が大事にされてない」とか言ってるんじゃないの?w
それお前のことじゃんっていうさ
276仕様書無しさん:2007/11/03(土) 14:02:23
>>273
ソフトなんて35超えてからが何ぼだろ
ただのコーダーはすっこんでろ
277仕様書無しさん:2007/11/03(土) 14:21:51
おまえら、団塊の書いたコード保守させられたこと、ないだろ。

・・・・・絶句するぞ。
278仕様書無しさん:2007/11/03(土) 14:22:00
>>276
最近俺もそう思うようになってきた
年取ってからのほうがまともなコードが組める
無理をしないようになってきた
279仕様書無しさん:2007/11/03(土) 14:37:23
昔、実績があったところは、今の時代についていけてないみたいだよ。
280仕様書無しさん:2007/11/03(土) 15:01:12
>>277
数十年後、同じこと言われてるかもな
281仕様書無しさん:2007/11/03(土) 15:53:46
欲ボケだけにはなりたくない。
282仕様書無しさん:2007/11/03(土) 16:02:29
>>280 数十年後?

日本、それまでもつのかね。
283仕様書無しさん:2007/11/03(土) 16:03:06
数十年もつのかね、この国
284仕様書無しさん:2007/11/03(土) 16:34:23
あと数十年もつのかな、俺の体
285仕様書無しさん:2007/11/03(土) 16:38:05
まあ、衰退と滅亡へのまったりした円舞曲でも踊りながら暮らせばいんじゃねえの?
理系院生みたいなのばかりになったら、いずれにしても終わるだろ。
286仕様書無しさん:2007/11/03(土) 17:02:15
おまいらwwwここ見てみwwwwwww天才降臨wwwww

1 :以下、名無しにかわりましてVIPがお送りします。:2007/11/03(土) 14:02:12.45 ID:o3DHz8v00
http://id13.fm-p.jp/185/notkephir/


裏絵バロスwwwwwwwwwwwww


やあ、ここのBBSのパス解析できたら明日おにゃのことセックルできるお(^ω^ )

http://wwwww.2ch.net/test/read.cgi/news4vip/1194066132/698-698
287仕様書無しさん:2007/11/04(日) 04:01:04
先月かなどっかのチームがリリース後に致命的なバグを出しやがった。

当然なんでそんなバグが出たんだ?って原因究明のため色んな禿たかにワチャクチャされてた。
結果、結論として外部レビューしてなかった。というところに落ち着いた。
(↑身内だけでのレビューだけをしていた↑)

その尻拭いで外部レビューなるものが義務付けられた。
で、そのチームが作ってるシステムの仕様もわからない俺にもレビューア側としてレビューに参加することに。。。

んな余裕ねーよ と思いながらも送られてきたソースに目を通す。
ん ネストってこんなに深くできるものなの?目がいたいよ。
ん これは関数ですよね なんでこんな長いの?
ん この条件には絶対入らないのになんであるの?
ん コメントアウトした過去コードはもう消せよ どんだけ前のだよ
ん あーifdefだ どっからどこまでifdefだ なんだこれとーらねーじゃん
ん メモリーリークってしってる?
ん ヒープがこんなに・・・・ おまえかRAM無駄に喰ってたのは
おまえ まだなんかしこんでんだろーーー!!

他のチームのソースは笑えないけどおもしろい。けど関わるとロクなことがない。


288仕様書無しさん:2007/11/04(日) 04:19:52
ほら吹きがSEもどきやってるとそうなるよ。
289仕様書無しさん:2007/11/05(月) 11:51:19
馬鹿でもコード置いてくれれば、動くと思ってる丸投げ君たちがいるの?
290仕様書無しさん:2007/11/05(月) 13:27:06
まぁなんだ。
費用対効果を考えれば、正式なドキュメントなんていらないよな。
どんなにがんばったってバグなんてなくならないし、ザルのレビューなんか
受けても仕方がない。ドキュメントなんて書いても読むふりするだけ。
オレはちゃんと管理してるんだぞという証明をして見せたいだけ。
そのためにどれだけ多くの人員を割いていることやら

生命に関わるならそれだけの体制をとるのは仕方がないが
どうでもいいものを作ってるのなら怒られたときの誤まり方勉強する方が
コスト的にはベターだと思うし、現状そうなんじゃない?
291仕様書無しさん:2007/11/05(月) 13:38:41
どうしたら、責任まで丸投げできるかを必死で考えてるんじゃないの?
292仕様書無しさん:2007/11/05(月) 21:31:18
>>290
お前みたいな奴がいるから
日本の技術が駄目になっていくんだ
反省しろ
293仕様書無しさん:2007/11/05(月) 22:37:41
>>290
自己紹介乙。
294仕様書無しさん:2007/11/10(土) 20:20:12
組み込み系のOSにはどんなのがあるの?
WindowsCE, Linux, TRON しか知らないんだが・・・
295仕様書無しさん:2007/11/10(土) 20:24:02
>>294
XP
296仕様書無しさん:2007/11/10(土) 20:47:18
VsWorksとか
297仕様書無しさん:2007/11/10(土) 20:51:17
FreeBSD
298296:2007/11/10(土) 20:54:09
VsじゃなくてVxだな
299仕様書無しさん:2007/11/10(土) 22:29:01
300294:2007/11/10(土) 23:22:39
>>295-298
トンクス

結構種類があるんだな
まだWIndowsCEで動作するのしか開発したことないけど、
次はTRONあたりの案件が来ないかなって思ってる
301仕様書無しさん:2007/11/11(日) 00:37:56
OS無しとか、独自のOSを作って使う、なんてのもよくある。
302仕様書無しさん:2007/11/11(日) 01:55:05
OS無しって想像できない。
一度OS無しで行こうという案件があったが、どう作っていいのか分からない
ので客を説得してμITRONの導入を提案して無事OSのある環境で開発できたこ
とあるよ。ハード変更(ROM増)になったけど。
303仕様書無しさん:2007/11/11(日) 02:15:48
小規模ならOS無しはデフォだな。tronOSあっても重たいだけ。 ドライバ層はデバイス毎に
書いて、それぞれの割り込みとアプリ層用の入り口を持たせる。mainループにはイベントque
を設け、イベント[n]でイベント処理[n]を呼ぶ。インターバルタイマを2種類ぐらい作り、
(1mSと10mSとか、10mSと100mSとか)それぞれの適切なオーダーでソフトタイマ作る。

16bit ROM64 RAM16 CLK10M台 なんてチップでトロン乗せたらスレッドが100mS単位でしか
動かなかったり。上の手法なら十分リアルに動く。8bit用のtronもあるけど、誰が使うんだ(w
304仕様書無しさん:2007/11/11(日) 02:28:34
たしかにもっさりしてたな。よくなかったのか。
305仕様書無しさん:2007/11/11(日) 02:30:00
メインループと割り込みが
ノンプリエンプティブマルチタスクで動くというだけだしな。
ミドルウェアの要請がなければOSなんて不要。
306仕様書無しさん:2007/11/11(日) 02:51:47
OSをいれないと動かないときの言い訳が出来ないからとか?
307仕様書無しさん:2007/11/11(日) 08:29:37
>>304 はヘボナンジャねえのか・・
308仕様書無しさん:2007/11/11(日) 08:45:52
>>303 は「スラッシング」起こすようなヘボ設計やらかしただけかとも思うぞ。
309仕様書無しさん:2007/11/11(日) 08:47:39
本来の意味とずれるが、かちゃかちゃかちゃかちゃショッチュウなんかをしてる状態になっとると。
まあどうでもいいけどさ。現実確かに今は8ビットじゃ考えないんだろうな。
310仕様書無しさん:2007/11/11(日) 10:51:10
>>309
日本語でよろ
311仕様書無しさん:2007/11/11(日) 11:05:08
眠い。だるい。もうだめかもしれんな。
312仕様書無しさん:2007/11/11(日) 13:02:50
ecosとかOS-9とかニュークリアスとかQNXとかthread-Xとか。

313仕様書無しさん:2007/11/11(日) 21:04:28
デジタル家電ならOS必須だけど、世の中には扇風機とか
掃除機とか作ってる人もいるわけで、
いちいちスイッチ読み取ってモーター回すだけの動作にOS介して動かすわけないだろ?
俺にはOS無しが想像できないやつがいる事のほうが想像できない
314仕様書無しさん:2007/11/11(日) 21:09:59
ものは使いようで、扇風機や掃除機にも複雑な制御入れて単価吊り上げる向きもある。
そもそもマイコン自体要らないじゃないか、>>313の物言いだと。

OSOSいうから大仰なんだけど、ITRON系のような軽いものなら、プログラム読みやすくさせて
バグ減らすだけのために入れたって引き合うことだってないとはいえないだろ。

315仕様書無しさん:2007/11/11(日) 22:01:35
brewはマルチ化失敗で死亡だしな。
316仕様書無しさん:2007/11/11(日) 22:28:44
>>314
>プログラム読みやすくさせて バグ減らすだけのために入れたって
うーん・・・それでもやっぱりリソース食うわけだから、
今の企業のコスト意識だとちょっと考えづらいかなぁ。

うちは逆にハードの製造コスト下げるために、
開発途中で1つのモジュールのCPUとOSが消えたことがある。

開発コストは最初だけだけど、製造コストはずっと掛かるからねぇ・・・。
研究用の実験機、とかならあるか
317仕様書無しさん:2007/11/11(日) 23:00:05
>>314
>プログラム読みやすくさせてバグ減らすだけのために

その程度のOSモドキなら自分で書く。ITRONなんて重い重い。
まあ、どっちがより良い方法かはケースバイケースだけどな。
318仕様書無しさん:2007/11/11(日) 23:21:20
>>316
「すでに量産してしまったボードを消化するためのプロジェクト」
開発期間:ちょっと 生産台数:残ってるだけ

というのもたまにはあるっしょ
319仕様書無しさん:2007/11/12(月) 03:56:34
ガスコンロなのに単一電池2本、メンブレンSWで操作してピー!って音で返事する。
これってマイコン載せてるよなあ・・・ 
チャタ取りと不感時間の設定がいい加減でよく2度押しになるし。
320仕様書無しさん:2007/11/12(月) 06:47:28
中じゃ平気でms単位でループで無駄撃ち。

何をOSと呼ぶかは定義によるけど、4ビットでもない限りは何かを入れたほうが整理できる。
「たかが」MAX64KBでも、結構ごちゃぐちゃになるぞ。

321仕様書無しさん:2007/11/13(火) 03:02:33
通信モノ作るときはさすがにOS(NORTi)買ったな。TCP/IPミドルウェアも
一緒に。
余計なトコでバグ出したくなかったから。
今までよりソースが綺麗で保守性も高くなったと思う。
322仕様書無しさん:2007/11/14(水) 03:23:37
ある程度の規模なら、標準OS使ってさらに独自のラッパルーチンをかましてOSコールすると
いう風に組む。

目的は、ソフト資産の蓄積だな。
CPUさらにOSも変わっても、処理ロジックはそんな変わらないから。
323仕様書無しさん:2007/11/14(水) 06:57:11
確かにまともな大手のソースはそうなってるな。
324仕様書無しさん:2007/11/14(水) 07:29:14
大卒予定ですが組み込みPGで楽なお勧めの会社ありますか?
325仕様書無しさん:2007/11/14(水) 07:31:58
富士ソフト
326仕様書無しさん:2007/11/14(水) 08:28:17
>>322
まあそれが普通だわな。
327仕様書無しさん:2007/11/14(水) 09:31:35
ラッパかませられる奴がいるの?
328仕様書無しさん:2007/11/14(水) 11:03:04
ラッパってのは、単に似たAPIを同じ名前・手続きで呼べるようにするってだけの事だろ
#define ならROMコストは増えないかもしれないが、

俺はそういうのは、屋上屋を架すっだって思ってるけどね。
当人はステキだと思ってるのだろうけど
結局、そこのローカルルールを増やして閉鎖性を増しただけ。
新人の必要学習量を増やすのに役立つだけさ

置換ツールを作って一気に置換した方がマシだろうと思う
329仕様書無しさん:2007/11/14(水) 11:08:47
ソース分割して、グローバル変数てんこ盛りとか?
330仕様書無しさん:2007/11/14(水) 13:15:01
コーディングルール上直で下位関数呼べないからラッパーかます
というのはよくある。コンパイラの最適化で消えるけどうっとうしい。
携帯だけどね。
331仕様書無しさん:2007/11/14(水) 14:51:20
携帯スレから
826 :仕様書無しさん:2007/11/13(火) 16:55:59
日本は組み込みエンジニアが7万〜9万人不足している
http://www.atmarkit.co.jp/news/200711/12/tata.html

インドktkr
332仕様書無しさん:2007/11/14(水) 15:30:21
ほら吹きがラッパ吹いた。
333仕様書無しさん:2007/11/14(水) 16:01:35
でもさ、 屋根の上にもう一つ屋根を作る ってのは結構やると思うけどな

ハード的にチャタリング取って、さらにソフトでチャタリング取るとかさ
通信なんかもエラー検出をあちこちの層で重ねて行うとかさ
334仕様書無しさん:2007/11/14(水) 16:06:54
チャタリング知らん奴が書いた仕様書で作って苦労したことがある。
最近のスイッチはチャタとかないのか当時思った。
335仕様書無しさん:2007/11/14(水) 18:25:38
組込みはやっぱ地方の工場に飛ばされるんですか?
336仕様書無しさん:2007/11/14(水) 18:58:54
そうです。
山登りとかを趣味するのが可。
337仕様書無しさん:2007/11/14(水) 19:06:43
>>335
ハードがわかってるなら、そんなことはないかも?
廃人になりたくないなら、別な道を見つけた方がいいと思う。
338仕様書無しさん:2007/11/14(水) 19:14:01
すでに廃人しかやってないんじゃないの?
339仕様書無しさん:2007/11/14(水) 19:34:19
廃人保険とかないの?
340仕様書無しさん:2007/11/14(水) 19:47:38
地方って言っても単に金の使い道が減るだけじゃん
何を困る必要がある
341仕様書無しさん:2007/11/14(水) 19:59:51
金貯まるっていっても使い道ないじゃねぇ
地方は車が必須だし
342仕様書無しさん:2007/11/14(水) 20:55:57
>>334
それより、どこかで聞きかじった知識で「チャタリングを除去するには二回スキャンしてAND取る必要がある」
と思い込んでる奴に、それが間違っていることを理解させることの方が苦労するよ。
343仕様書無しさん:2007/11/14(水) 21:09:52
論理的思考がない奴が組み込みやってるの?
344仕様書無しさん:2007/11/14(水) 21:50:19
いや、チャタリングってのは、パタパタがたかだか一回起こるものだと
思い込んでいたんじゃないか?
345仕様書無しさん:2007/11/14(水) 22:07:59
ソフト開発なら都市部が多くないか?
工場とかだったら郊外ってこともあるけど。
346仕様書無しさん:2007/11/14(水) 22:19:32
>>343
むしろ組み込みやってる時点で三流じゃんw
認めたくないだろうけど事実でしょ
347仕様書無しさん:2007/11/14(水) 22:38:09
組み込みにもいろいろあるからな。
三流未満も多いが、超一流も少しはいるし。
348仕様書無しさん:2007/11/15(木) 00:06:26
一流でも論理設計から論理実装まで研究でも開発やってるよ。
まあ、既に新製品発表会やってる家電ソフトの結合試験で苦しんでる三流とか色々。
349仕様書無しさん:2007/11/15(木) 13:18:30
おままごと大手にお勤めの方は多いみたいだけど...
350仕様書無しさん:2007/11/15(木) 15:47:57
土方の実装を鑑賞、研究する馬鹿大手社員?
351仕様書無しさん:2007/11/15(木) 16:33:46
土方に品質求める馬鹿大手社員?
352仕様書無しさん:2007/11/15(木) 18:07:04
自分じゃどう実装していいかもわからない馬鹿大手社員?
353仕様書無しさん:2007/11/21(水) 16:03:36
理想のマイコン、理想のOSがあると思ってるハード屋と話したことあるけど、
この人、配線すれば動くと思ってるような感じがした。
354仕様書無しさん:2007/11/21(水) 18:02:56
ハードとソフト両方いける人はそれなりに珍重されるのだろうか
355仕様書無しさん:2007/11/21(水) 18:05:11
変人扱いされるのは?
356仕様書無しさん:2007/11/21(水) 18:12:59
>>354
障害対応で死ねるようになる。
357仕様書無しさん:2007/11/21(水) 20:01:55
>>356
どういうこと?
358仕様書無しさん:2007/11/21(水) 20:09:01
他に頼れる人がいません!
359仕様書無しさん:2007/11/21(水) 20:13:02
>>358
え、出来る人がいないってこと?
360仕様書無しさん:2007/11/21(水) 20:27:12
ということにしばしばなるわけだ
361仕様書無しさん:2007/11/21(水) 20:28:10
層で分かれるべき所の両側やるとどっちの問題か解らなくなる
362仕様書無しさん:2007/11/21(水) 20:30:15
>>359
他にできる奴がいるか考えるまでもなく、
そいつに頼めばどうにかなるでしょ。
363仕様書無しさん:2007/11/21(水) 20:30:44
なに作ってるのかわからない人たちがやれば、そうなるのでは?
364仕様書無しさん:2007/11/21(水) 21:16:08
ハード動かしてるのはソフト屋だからな。

ハード屋はいまはつないでいるだけ。
あとコスト計算ぐらいか。

365仕様書無しさん:2007/11/21(水) 21:18:50
>>364
そんなにひどいの?
366仕様書無しさん:2007/11/21(水) 21:41:05
確かにタイル屋という言葉が言われ始めて久しい。

んが、発言権がそのタイル屋より上回っていた例は聞いたことがない・・・
367仕様書無しさん:2007/11/21(水) 21:55:22
ハード屋は金を操る、ソフト屋は時間を操る。
368仕様書無しさん:2007/11/21(水) 22:00:37
ソフトに依存しすぎるとコスト高になるんじゃないの、ヘタレだと?
369仕様書無しさん:2007/11/21(水) 22:34:55
普通はソフト化すれば材料コストは安くなるはずだかね。
でも性能が出なければ材料どころではない。
370元理系院生 ◆Y6xa0fJPXc :2007/11/21(水) 23:47:37
>>364
たしかにそんな感じがしないでもないです・・・。
でもFPGAとかでロジックを作ったりしますよ。
やはり処理速度の点でハードは断然有利ですし、頭を使うところはあると
言えるのではないでしょうか。
371仕様書無しさん:2007/11/21(水) 23:55:21
>>370
そういう切り分けが出来る人があんまりいないみたいだよ。
372仕様書無しさん:2007/11/22(木) 02:30:37
今の職に就くまでは組み込みに関する知識はどの程度あったのですか?
組み込みエンジニア募集(未経験者可)とみかけて本当について行けるのか気になったもので
373仕様書無しさん:2007/11/22(木) 03:12:22
>>372
知識だけで出来るなら、廃人になる人いないと思うけど
374仕様書無しさん:2007/11/22(木) 04:18:16
>>372
皆無
スタートアップルーチンの存在すら知らなかった
ステートマシンは名前しか知らなかった
ソフトはOSがないと絶対動かないと思ってた
375仕様書無しさん:2007/11/22(木) 06:27:58
負論理の概念を知らず、ONがなんで0なんじゃい!と怒り狂ったな。
376仕様書無しさん:2007/11/22(木) 10:35:09
>>375
あるある
377仕様書無しさん:2007/11/22(木) 18:02:23
ハード屋の都合でいつの間にか論理が逆転してるなんてよくあること。
378仕様書無しさん:2007/11/22(木) 18:03:18
つうか。
駆け出し・・・・いろんなことで悩む。すべてに頭が上がらない。
慣れてくると・・・1ビットのバグを真剣に悩む。ハード屋にいまだ頭が上がらない。
更に慣れてくると・・・ハード屋にもへぼがいるのを理解してくる。
腐ってくると・・・残業代を稼ぐために不具合を容認する。
昇天寸前・・・それすら馬鹿馬鹿しくなる。
昇天・・・どうでも良くなる。
神・・・すべては人事。
379仕様書無しさん:2007/11/22(木) 18:24:32
ネガティブだなぁ
380仕様書無しさん:2007/11/22(木) 19:16:27
正論理、負論理とか知らん奴が仕様書書く時代だし...
381仕様書無しさん:2007/11/22(木) 19:17:22
>>379 負論理だけになwww
382仕様書無しさん:2007/11/22(木) 19:39:03
>>379 に 導電スポンジ 1枚やっとくれ。
383仕様書無しさん:2007/11/22(木) 20:29:26
>>380
負論理って、本当の意味はそんな偉そうなことを言ってる君が思ってるのと
たぶん違うよw

っていうか、誰も突っ込まないところを見るとここの連中は
負論理のもともとの意味を誰も知らないんじゃないの?
384仕様書無しさん:2007/11/22(木) 20:34:51
知らんからぜひ教えていただきたい。
本当の意味と、元々の意味と、380の思っている意味を。
385仕様書無しさん:2007/11/22(木) 20:51:58
負論理って1=L, 0=Hって意味じゃあないの?
386仕様書無しさん:2007/11/22(木) 20:56:58
負論理は論理素子と電気の節約になるんだよん
387仕様書無しさん:2007/11/22(木) 20:58:48
>>383=>>386

まさかそれが答えじゃあるまいな?
388386:2007/11/22(木) 21:00:13
>>387
ぼく>>383じゃないよん
389仕様書無しさん:2007/11/22(木) 22:18:20
0VふむふむGNDにつなぐっと、
電源はっと、−3V? あれ?
390仕様書無しさん:2007/11/22(木) 23:18:18
負論理ってググればいっぱい出てくるけど
何のために使うかがあまり多くかかれていない。

信頼性と安全性のためらしいけどいまいちよくわからず。
391元理系院生 ◆Y6xa0fJPXc :2007/11/22(木) 23:44:30
L時とH時で電流流量が違うので、消費電力や安定性を考慮する際に都合の良い方を
選べるように正理論と負論理の二つがある、というふうに理解しています。
392仕様書無しさん:2007/11/23(金) 00:08:48
TTLでは閾値電圧のLow側が低くて正論理ではノイズの影響を受けやすいからなのかな?
割り込みとか高速動作が求められるような部分ではいまだにTTLが使われているみたいだし
393仕様書無しさん:2007/11/23(金) 00:17:12
ワイヤードOR でググると一例が見えるかもしれない
394仕様書無しさん:2007/11/23(金) 01:25:49
なぜヒントを小出しにするんだろ?
いいたい事は言った方がすっきりするだろうに
395仕様書無しさん:2007/11/23(金) 08:13:34
ほら、「ハード知識のあるぼくちんってハイスキルてへ☆」ってのが沸いてきた。
まあいいけどよ
396仕様書無しさん:2007/11/23(金) 10:53:49
自分で調べないと学習しない
っていう宗教があるみたいよ。
397仕様書無しさん:2007/11/23(金) 11:48:44
ようするに、昔はトランジスタだったんだよ。
グランド側を固定にする方が楽だから2SCのようなNPNのものが主に使われる事になる。
絶縁に良く使われるフォトカプラなんかもそうだよね

で電子回路は5Vで動くけど制御対象のモータとかは12Vとか24Vとかなので、
トランジスタはエミッタ接地で使われる事が多い。この場合、トランジスタオンで0Vになる事になる

という事じゃないのかな
398仕様書無しさん:2007/11/23(金) 18:13:25
いわゆるバイポーラトランジスタを使用した論理素子の場合、その電気特性から
負論理にした方が電圧マージンが大きくとれてノイズに強いという事だな。

あと、OR回路を構成するのに単純にワイアードORで済む。

また、論理で「1」が意味ある状態で、その状態が短時間なら
負論理で「1」の場合のみ電流が流れるので消費電力は少なくて済むとか。

割り込み信号なんか、まさにこれらのメリットにドンピシャなので
未だに負論理が使われているとか。
399仕様書無しさん:2007/11/23(金) 19:52:29
最後の一行「未だに負論理が使われているとか」って、
まるで負論理は古臭い概念であるかのように言ってるけど
今でも普通に使われてる概念だぞ。誤解を生むような言い方だな。
400仕様書無しさん:2007/11/24(土) 03:39:13
DIPSWが負論理になってるのは、電流を多く消費すると思いますが、これは何でなの?
401仕様書無しさん:2007/11/24(土) 05:42:31
DIPSなどのスイッチ状態をICの入力ポートにつなぐ場合は
抵抗でプルアップまたはプルダウンを行なうよな。

プルダウンでつなぐとスイッチONでHighレベルが入力されるので
これは正論理だよな。 スイッチのインターフェースは負論理だけとは限らんよ。
402仕様書無しさん:2007/11/24(土) 07:29:30
CMOS使えば電力は無問題
403仕様書無しさん:2007/11/24(土) 10:07:17
>>400
片方の端子をGNDにつなぐ事が多い。 そうすると スイッチはオンかオープンなので
プルアップする事になる。 
そういう目的で1チップマイコンの端子は弱いプルアップが可能な機能があったりする。

>>402 DIPSWの場合はスイッチオンの状態で常に電流が流れてしまうのだから
CMOSとか関係ない。

無駄な電流を流したくないなら、片方の端子もポートにつないでおけばいい。
見たい時だけパタパタさせて、応答するかどうか見ればいい。

404仕様書無しさん:2007/11/24(土) 10:15:44
TTLのICは入力をオープンにするとHになる。
だからプルアップの方が自然だったんだろうな

4ビットのCMOSの1チップマイコンでも、出力はLしか出せないマイコンが多い
405仕様書無しさん:2007/11/24(土) 12:57:11
>>404
いってる事の意味が全然わからん。
406仕様書無しさん:2007/11/24(土) 15:01:44
オープンコレクタwww
407仕様書無しさん:2007/11/24(土) 16:57:30
つか、消費電力気にするような機械にDIPスイッチなんて無いんじゃ?
408仕様書無しさん:2007/11/24(土) 18:12:38
ウィーク プルアップはソフトで切れるので、
電池駆動なら普段はウィークプルアップを切って、ポートにはL出力をしておけばいいんだよ。
409仕様書無しさん:2007/11/25(日) 23:30:05
組み込み系の開発って、アセンブリ言語は必須ですか?
410仕様書無しさん:2007/11/25(日) 23:38:36
アセンブリ言語って何だ?
アセンブラ言語と違うのか??
411仕様書無しさん:2007/11/25(日) 23:38:50
>>409
昨今は必須って訳じゃない。
大きいシステムでは上物のアプリ開発が主ってのも多いし。携帯とかね。
デバイス制御もよほどシビアじゃなきゃCで書かれてるよ。
ただしこの場合は割り込みとかメモリとかマイコンそのものへの理解と
そのシステムでの対応方法への理解が必要になる。

プロセッサのリセットからCのmain()に飛ぶまでの処理に関わるなら必要な位かな。
412仕様書無しさん:2007/11/25(日) 23:46:22
ふつー
「アセンブリ言語」
「アセンブラ」かな?

「アセンブリ言語」の処理系が「アセンブラ」
「アセンブラ」の言語が「アセンブリ言語」
413仕様書無しさん:2007/11/25(日) 23:48:28
>>409
読むことができれば、
コンパイラが吐いたアセンブリ出力を最適化のヒントにするとか、
最適化かけたコードをトレースするとか、いろいろできる。
一方書くことに関しては、OSの実装とか特殊な場合以外いらないだろ。
ということで、必須とまでは言えないかな。
414仕様書無しさん:2007/11/25(日) 23:56:27
アセンブラに頼らないとできないことを考えてみる。
・スタックポインタの再設定
・キャリーフラグを活用した多倍長演算
・ライブラリで対応していない特殊命令の使用
415仕様書無しさん:2007/11/26(月) 00:20:19
組み込みって最近人手不足と聞くけど派遣だとどれくらい貰えるんですか?
javaやVCとかの派遣は架空案件で釣って、いざ面接すると値切られまくりでウンザリです。

募集3700円/h→登録2500円/hとか募集55万/月→登録40万/月とかどこも架空案件ばかりです。
416仕様書無しさん:2007/11/26(月) 00:25:12
>>415
それは君のスキルの問題。
その数字をもらってる人もいる。
むしろそれ以上の単金の方が普通。
つか、組み込みでそれ以下の単金なんてひ孫偽装くらい。
417仕様書無しさん:2007/11/26(月) 00:28:26
組み込みって、派遣でこられても役に立たないことが多いんだ。
役に立つ人は80万/月〜120万/月取られてる。
418409:2007/11/26(月) 01:24:01
レスありがとうございます

最低でも読めるように勉強します
419仕様書無しさん:2007/11/26(月) 07:02:49
多くは
仕事回してるほうが仕事を回せない(切り分けて人に説明して効率よく仕事させるスキルが皆無
脳内仕様書しかない、我流でぐちゃぐちゃのソフトしか「資産に」ない)という理由によるがな。
420仕様書無しさん:2007/11/26(月) 18:57:05
まーだ、そんなレベルなのか?良く耐えてるねぇ〜
421仕様書無しさん:2007/11/26(月) 18:59:07
でも、おまえ自分の仕事簡潔に説明して、1日で他人に引き継いでさよならできるかい?
422仕様書無しさん:2007/11/26(月) 20:33:25
雑用分けるの旨い人はいるけどねえ。
423仕様書無しさん:2007/11/26(月) 20:49:05
丸投げ君はわんさかいるみたいだけど...
424仕様書無しさん:2007/11/26(月) 21:29:22
雑用は作ってるんだよ。うまそうに見せるために。
○投げ君は・・・まあねえ・・・。
425仕様書無しさん:2007/11/26(月) 22:01:52
あと「問題」解決するのがうまい人とかね。
426仕様書無しさん:2007/11/26(月) 22:03:25
トラブルメーカーです
427仕様書無しさん:2007/11/26(月) 22:26:21
そらマッチポンプだ。
428仕様書無しさん:2007/11/26(月) 23:11:54
99 LIVEの名無しさん sage ▼ New!2007/11/26(月) 23:05:56.30 ID:OVZsuv8M [1回目]

684 名前: ゴーストライター(栃木県)[] 投稿日:2007/11/26(月) 22:59:47 ID:NYJDPbJj0
でかかったな
 ttp://up2.viploader.net/upphp/src/vlphp097219.jpg

685 名前: 留学生(神奈川県)[] 投稿日:2007/11/26(月) 22:59:52 ID:jQdh0AnZ0
各地の震度@関東
http://up.nm78.com/dl/49074.jpg
429仕様書無しさん:2007/11/27(火) 02:04:50
>>412 そのとおり! 
     言語を「アセンブリ言語」という。
     処理系を「アセンブラ」という。
     処理系にかけて、オブジェクトを吐き出させるのを「アセンブルする」という。

     ちなみに、古い人は、「アッセンブラ」とか発音してたな。
     年齢にして60を超えた団塊層の上。
430仕様書無しさん:2007/11/27(火) 02:37:08
>>429
いいすぎ
431仕様書無しさん:2007/11/27(火) 15:34:57
アイロンやミシンみたいなもんだろ
そんな瑣末なことに目くじら立てんじゃねーよ
432仕様書無しさん:2007/11/27(火) 17:23:32
最近の子は命令表とか読めるんかね?
433仕様書無しさん:2007/11/27(火) 18:43:23
>>429
アセンブリをアセンブラでアセンブルする、と覚える。

工場では小物部品のことをアッセンブリと言ってたな。
434仕様書無しさん:2007/11/27(火) 18:49:21
小物部品?
組み立て済み部品のことだろw
英語知らんのか
435仕様書無しさん:2007/11/27(火) 19:49:51
車なんかの部品で「ASSY(アッシイ)」という略語はどうなんだろう
436仕様書無しさん:2007/11/27(火) 20:07:44
ASSYは江戸語での一人称だよ
437仕様書無しさん:2007/11/27(火) 20:35:22
運転手の事だろう
438仕様書無しさん:2007/11/27(火) 20:46:29
山田くーん、こいつ等削除して。
439仕様書無しさん:2007/11/27(火) 21:02:44
moduleとassemblyの違いは何?
440仕様書無しさん:2007/11/27(火) 21:15:23
moduleは部品
assemblyは作った部品
441仕様書無しさん:2007/11/28(水) 04:40:59
#if 0
>>429-440
#endif
442仕様書無しさん:2007/11/28(水) 09:33:35
【コラム】 IPA認定の天才プログラマーは18歳!いったい、どれだけスゴ腕なの?
http://news.ameba.jp/r25/2007/11/8909.html
443仕様書無しさん:2007/11/28(水) 15:10:22
>>442
組み込みと関係ない。組み込みは注目されないから関係ないし。
444仕様書無しさん:2007/11/28(水) 15:12:12
そこで僕はこう返してやるんだ

コピペ君って馬鹿だな、まで読んだ
445仕様書無しさん:2007/11/29(木) 16:21:11
>>442 税金泥棒の天下り法人、まだ生きてやがるんだな。最近組み込み系にも手を
出して来てるので注意汁。

このスレ、シグマOS被害者とか多いかも。当時UNIXやってた技術者が最近は組み込みで
食いつないでることが多そうだし。
446仕様書無しさん:2007/11/29(木) 22:59:20
組み込みは人間性を捨てられるかどうかだもんな。
シグマでひどい目にあっていれば組み込みもありなん。
447仕様書無しさん:2007/11/29(木) 23:03:57
ウルトラでスーパーなシグマ?
448仕様書無しさん:2007/11/30(金) 06:47:41
CElinuxで騒ぎまくってた奴はNEWS残党だった、とかあれか・・・
449仕様書無しさん:2007/12/03(月) 22:46:58
「シグマでひどい目」を見て真っ先に思いついたのが
3シグマとか6シグマとかそういう話かと思った俺はどうなんだ・・・

6シグマ、ツラス・・・・・・orz
450仕様書無しさん:2007/12/09(日) 21:41:47
組み込み系だと やはりC言語が主流ですかね?
皆さんCですかね?
451仕様書無しさん:2007/12/09(日) 21:54:35
C++
452仕様書無しさん:2007/12/09(日) 22:22:03
最近はJava
453仕様書無しさん:2007/12/09(日) 22:24:32
>>452
それアプリだろ? どう考えても表層
454仕様書無しさん:2007/12/09(日) 22:37:29
うんにゃ。
452じゃないけど、ドライバがJavaなコトもある。
まぁうちのメインはCだけど。
C++も少なめ。

あとは・・・一部Schemeとか・・・
455仕様書無しさん:2007/12/09(日) 22:44:00
処理シーケンスの記述がJavaとか、そんな感じ?
まるでインタプリタ積んでた昔のパソコンのような組み込み機もあるんだぁ
456仕様書無しさん:2007/12/09(日) 23:07:37
そうですか
Cを分かっていれば C++を習得するのはそんなに難しくないんですかね?

ってか俺が来年就職するとこは Cなのかなぁ... まぁハード設計に徹するのかもしれないけど...
457仕様書無しさん:2007/12/09(日) 23:17:45
>>456
CとC++はまったく別の言語。一部共通部分があるだけ。
Cを知っていても、C++は使いこなせない。
458仕様書無しさん:2007/12/09(日) 23:49:21
まあ、C++をCのように使うこともできるけど。
組み込みだとC++の便利なところを使おうとしても使えない場面も多々あるし。

だけどC++とCとは根本的な思想の部分が違っている。
そこがわからないとC++を習得したとはいえない。
俺もかなりC++の経験はあるけど、全部理解したと言える自信はない。
459仕様書無しさん:2007/12/09(日) 23:53:18
そうなんですか..
自分はCくらいしか分かってないので..
ゆくゆくは組み込みもJavaが主流になるって聞いたんですけど
Cだけじゃもたないかぁ... アセンブラも知らないしなぁ...
460仕様書無しさん:2007/12/10(月) 00:44:42
>>455
ふつーにVM積んでたりとかあるんよ
オレも見るまではそんなのねーよ派だったから気持ちは察せる
461仕様書無しさん:2007/12/10(月) 01:14:38
>>459
うちもCがメイン。ごく一部にC++。表層でC#が使われだした。

Cのポインタと再帰が理解出来るだけの頭を持っていたら、他の言語に進むのはそんなに難しいことじゃない。
ただし、どんな言語を使う場合でも、一定の経験(時間)が必要。

組み込みの分野でC言語が廃れるなんて、現時点では予想も付かない。
悩んで色々中途半端に手をつけるよりは、C言語をとことん勉強してみたら?
462仕様書無しさん:2007/12/10(月) 01:21:21
> だけどC++とCとは根本的な思想の部分が違っている。

それはわかるけど、
仕様的にはC++はCのほぼスーパーセットじゃない?

Cの理解にあいまいな点があれば、即C++では同じ点で躓くわけだし、
まずはCという考えはそんなに間違っていないと思う。

アセンブラは、Cのmain()にたどり着く前が問題になる組み込みでは、
嫌でも触らなくちゃいけないから、必要になった時に必要なことを
学べばいいように思う。
463仕様書無しさん:2007/12/10(月) 01:39:01
>>462
>仕様的にはC++はCのほぼスーパーセットじゃない?
結局、そう思ってるうちはC++マスター出来てないよね
ということを>>458は言っているんだと思うよ
464仕様書無しさん:2007/12/10(月) 02:42:16
組み込みlinuxやってるから、asmからC,C++,シェルスクリプトまであるよ。。
armのjavaVM付きとかだったらjavaもいいかもしれないね。
使ったことないけど。

C++はGUI用にしか使ってない。ボタンとか、そういうパーツ用。
465仕様書無しさん:2007/12/10(月) 05:18:25
プログラミング言語C++を読む限り、『Cでここまでやった俺ってSUGEEEEEE。お前等俺をもっとほめろよ』
と言ってるようにしか取れなかったが?
466仕様書無しさん:2007/12/10(月) 07:19:25
やっぱり組み込み系はCが基本なんだよなぁ
Cを徹底的に叩き込まないと
467仕様書無しさん:2007/12/10(月) 08:32:45
S社のOSで組み込み系だが、ドライバまでC++だぞ…
468仕様書無しさん:2007/12/10(月) 10:08:50
一言で組込みって言ってもリソース量の幅はかなりデカイからね。
リソースがショボい組込みと豪華な組込みは別世界だよね・・・。
469仕様書無しさん:2007/12/10(月) 10:21:13
>>462
確かに仕様上はC++はCのスーパーセットなんだけど、
C++はCの面倒な部分を隠すことが可能だから、
ぶっちゃけ、vectorとstringとfstreamだけで
イテレーターすら使わないって条件なら
ポインタなにそれ?メモリの確保ってなあに?
って奴でも最低限動くものを作れないわけじゃない。
470仕様書無しさん:2007/12/14(金) 00:11:24
生C++やったことないや。
大概出来たクラス使うだけで。
471仕様書無しさん:2007/12/15(土) 15:00:19
生C++って何だろw
472仕様書無しさん:2007/12/15(土) 15:21:00
ROMに焼いてない奴とかじゃね?
473仕様書無しさん:2007/12/15(土) 18:50:45
ROMに焼いたC++なんてどれだけの人間が触った事あるんだよw
そもそもそんなもの存在するのか?
474仕様書無しさん:2007/12/17(月) 00:06:11
C++の機能という機能をフルに使って、
有り物を使うだけじゃなく、自分でクラス設計やって、ってことでは。

あまり多くなさげか。
475仕様書無しさん:2007/12/17(月) 11:58:48
C++の機能を使い切るのは組み込み向けでは夢のまた夢
オープン系でも使い切るのは至難の業だろ
Boostの開発やってる人くらいじゃね?
そもそも全ての仕様を満足したコンパイラって何がある?て状態みたいだし
476仕様書無しさん:2007/12/17(月) 13:42:10
LAMPスタックとかでの開発のことを「オープン系」と言うのも
かなり一般化してきたのか?
477仕様書無しさん:2007/12/17(月) 23:06:09
>>476
あれこれいちいち反論するのももう面倒くさいからな
478仕様書無しさん:2007/12/18(火) 16:59:17
クラサバとかネオダマとか言ってた人が登場する悪寒>オープン系

横道の茶々はともかく、漏れもC++の全機能とか把握してねえw
479仕様書無しさん:2007/12/24(月) 00:19:31
組み込み系は Javaが主流になるんですかね?
やっぱりC?
480仕様書無しさん:2007/12/24(月) 04:57:38
今も昔もアセンブリ
481仕様書無しさん:2007/12/24(月) 05:25:59
組み込みの分野自体が分かれていくんじゃねえかな
482仕様書無しさん:2007/12/24(月) 12:41:11
RISC系のCPUでアセンブラはキツいよな。出来ない事無いけど。
最近のx68系だってCPUに効率よく分割処理させられる為にコンパイラ必要だし。
483仕様書無しさん:2007/12/24(月) 13:41:09
x68使うならもうほとんどの場合Linux積んじゃうからなぁ
484仕様書無しさん:2007/12/24(月) 13:54:41
x68って?
485仕様書無しさん:2007/12/24(月) 15:09:09
シャープのあれだな
486仕様書無しさん:2007/12/24(月) 15:59:04
遅延分岐とかいろいろ考えながらアセンブラで組むのもう無理だろ
コンパイラ様様だよ
487仕様書無しさん:2007/12/24(月) 16:22:39
Java使ってる人は少ないみたい?
やっぱりCかC++ なのか
488仕様書無しさん:2007/12/24(月) 16:35:31
javaで組み込みって出きるの?
489仕様書無しさん:2007/12/24(月) 16:37:07
>>488
できれぅ

とはいってもお勧めはしない
490仕様書無しさん:2007/12/24(月) 16:41:42
javaでIOをアクセスするサンプルコードとかある?
491仕様書無しさん:2007/12/24(月) 17:37:58
メモリマップドIOなんだから普通に変数に代入するのと一緒だよ
492仕様書無しさん:2007/12/24(月) 17:44:25
組込と言っても所詮アプリ層だろ?
javaでもBASICでもお好きにどうぞ。
493仕様書無しさん:2007/12/24(月) 18:57:11
>>492
アプリ層なら楽だったんだけどね
494仕様書無しさん:2007/12/24(月) 19:40:26
>>491
ダウト
495仕様書無しさん:2007/12/24(月) 20:18:15
javamvをFPGAにしたら速いかも
496仕様書無しさん:2007/12/24(月) 21:32:13
javaで固定アドレスにアクセスするためのコードを提示してくださいw
497仕様書無しさん:2007/12/24(月) 22:27:19
>>496
使ってるVMが用意してる特製API見ろよ
他にもメモリ消費ゼロの標準出力ストリームとか大抵用意されてる
498仕様書無しさん:2007/12/24(月) 22:35:33
>>497
たかがIOにアクセスするだけで関数呼び出し。
しかもコンテキスト切り替えが起こったりする。
nativeアクセスが入るとデバッグもメンドクサイ。
組み込みにjavaは不要。
499仕様書無しさん:2007/12/24(月) 22:49:31
監禁されてはや1ヵ月・・・
組み込みはつらいのぉ
500仕様書無しさん:2007/12/24(月) 22:51:14
>>499
それは能力が無いだけw
501仕様書無しさん:2007/12/24(月) 23:08:02
>>499
自分が組み込まれてどうする。
502仕様書無しさん:2007/12/24(月) 23:10:56
>>498
不要かどうかは現場で決めるんじゃない
会議室で決まってるんだ
503仕様書無しさん:2007/12/25(火) 01:34:39
マイコンの組み込みってハードが悪いのかソフトが悪いのかすぐに切り分け出来ないから辛い。
あとマイコン間の通信規格もメーカによって色々あってだるい。
504仕様書無しさん:2007/12/25(火) 01:40:46
>>503
根本的に組み込みに向いてないねあんた。
ハードかソフトかのせめぎ合いが面白いんじゃないか。この業種。
505仕様書無しさん:2007/12/25(火) 04:57:05
この石でこのクロックじゃ到底できない、って機能を超絶技巧で実現するのが面白いんだぞ。
506仕様書無しさん:2007/12/25(火) 08:29:40
超絶技巧w
そういうのは趣味でやれよ。
っていうか、やってないし、やろうと思っても出来ないでしょそんなこと君には
507仕様書無しさん:2007/12/25(火) 10:04:22
配線すれば、動くと思ってるハード屋に当たると最悪...
508仕様書無しさん:2007/12/25(火) 10:55:11
俺は最近そんな仕事ばっかりだ
メンテナンス性との折り合いが大変だよ
しょうがないから、カリカリのところだけ隔離できるようにしてる
無理な要求されるとこうなるんだよな
509仕様書無しさん:2007/12/25(火) 11:00:12
>>483
うちの会社、GPLv3注意報が発令された。
だーりー
510仕様書無しさん:2007/12/25(火) 22:57:06
ハードがらみを切り出すって、それを普通人はドライバと呼んでたりしない?
511仕様書無しさん:2007/12/25(火) 23:03:18
一般的に組込みの世界にドライバっていう概念なくない?
上位層はアプリって言ったりするけど、ドライバ層が普通だからあえてそんな呼び方しないみたいな
512閻魔:2007/12/25(火) 23:09:06
>511
割り込み使って、H/Wのポートをたたく。
これが、ドライバーだとおもってるが。。。
513仕様書無しさん:2007/12/25(火) 23:11:50
そりゃ唯一無二のハードウェアリソースのためにドライバなんて書かねえけど、
規模にもよるだろってことだよな。
514仕様書無しさん:2007/12/25(火) 23:15:39
ポーリングポーリングじゃあべつになもいらんで。
515閻魔:2007/12/25(火) 23:17:13
>>514
通信のはなしか?セレクティング?ポーリング
516仕様書無しさん:2007/12/25(火) 23:21:35
割り込みによらない状態変化のセンシング方法がポーリングだから、通信に限らないんでは?
517閻魔:2007/12/25(火) 23:25:30
>>516
そうだね。
でも、組み込みで、タスク間でのポーリングは、やらない。
518閻魔:2007/12/25(火) 23:26:59
組み込みでも、イベントでキックするよ。
519仕様書無しさん:2007/12/25(火) 23:27:48
>>517
それって無限ループ?
520閻魔:2007/12/25(火) 23:28:24
今日は。寝ます。反応してくれてありがとう>>516
521閻魔:2007/12/25(火) 23:29:51
>>519
割り込みのドライバで、イベントが発生したら、sta_tskでタスク起動。
522仕様書無しさん:2007/12/25(火) 23:30:13
誰かを探すために定期的に書き込みをするのもポーリング?
523閻魔:2007/12/25(火) 23:30:53
ははは、ナイス
524仕様書無しさん:2007/12/26(水) 01:26:11
「割り込みのドライバ」って何?
525仕様書無しさん:2007/12/26(水) 07:51:15
どんな文脈で出てきたんだ? ふつうはXXデバイスのドライバとかの使い方するぞ。
割り込みは使う場合も使わぬ場合もあるが、「デバイス固有の駆動手法を抱え込んで隔離」
することと、「アプリ層に対してread/writeレベルの機能として見えるインターフェースを提供」
することがドライバ層の役割だ。
526仕様書無しさん:2007/12/26(水) 07:56:42
>>522
新聞の尋ね人欄もポーリング♪
527仕様書無しさん:2007/12/26(水) 20:38:03
>>521
sta_tskって汎用表記?
じゃなけりゃ...
528仕様書無しさん:2007/12/26(水) 20:53:56
なんとなくトロンっぽい関数だな
組み込みではOS無しのシステムしか組んだことないから詳しくは知らんけど
529仕様書無しさん:2007/12/26(水) 21:25:48
流れ読まないでちょっと質問させていただきます。
組み込み開発に興味あるんですけど、
下記のサイトに書かれていることは実用的でしょうか?
http://monoist.atmarkit.co.jp/fembedded/index/embedded.html#beginner
情報が古いとかなら新しい本など買おうかと思いまして。
もしくは組み込み開発にあたって読んでおいた方がいい本などあれば教えてください。
530仕様書無しさん:2007/12/26(水) 21:52:51
>>529
ざっとタイトルだけ眺めたが、
基礎的なことから比較的新しい内容まで含まれてるみたいだし、悪くないんじゃね?
実用的かどうかは知らんが。
531仕様書無しさん:2007/12/26(水) 22:21:46
そんな愚問を発する質問者の実用性は推して知るべしw
532仕様書無しさん:2007/12/26(水) 22:41:22
>>527
sta_tskはμITRON仕様のAPI
タスク起動
533仕様書無しさん:2007/12/26(水) 23:52:26
>>532
ふぅ....
知り合いかと思たwww
534仕様書無しさん:2007/12/27(木) 00:45:20
>>486
速度のためには無理でも何でもやらなきゃいかんこともある
コンパイラは所詮、コンパイラ
535仕様書無しさん:2007/12/27(木) 01:18:19
>>534
遅延分岐くらいならともかく、
命令パイプラインを考慮したときはコンパイラには到底かなわない。
コンパイラの吐くアセンブリを見ながら、
Cソースを調整していくのが効率よさげ。
536仕様書無しさん:2007/12/27(木) 01:44:52
あの くだらない質問かもしれませんが
Cでgoto文を使うのは 誤法度なのでしょうか?
素人がやたらgoto文を使うのはよくないのですかね?
組み込みの仕事で goto文を使う事はよくありますかね?

くだらない質問ですいませんm(_ _)m
537仕様書無しさん:2007/12/27(木) 01:54:18
組み込みに限らず構造化プログラミングを守っている限り使っておk
538仕様書無しさん:2007/12/27(木) 03:08:44
>>536
ご法度ではない
限られたいくつかの場面ではgotoは有効

だが、「gotoを使ってもいいよ」というと、なんでもかんでもgotoで解決しようとする輩が必ず出てくるので
能力が高くない人がいるプロジェクトでは一律に「goto禁止」とすることもある。
539仕様書無しさん:2007/12/27(木) 06:49:44
むしろ「一律禁止」の方が害がないんじゃねえのか?
「おれさますきるたかいよ!うほ!」ってゴリラはたくさんいるからな。
540仕様書無しさん:2007/12/27(木) 08:26:37
gotoを一律に禁止しないと可読性が落ちるコードを書き出す人間は
そもそもプログラミング禁止にする方が実効的だと思う。
541仕様書無しさん:2007/12/27(木) 09:58:50
多重ループ脱出か、使わないと変なフラグを使わなきゃいけなくて可読性が下がるときだけだな。
関数内の途中リターン禁止とか、下手するとbreak禁止みたいな変なルールすらあるが、
アルゴリズムを見直しても可読性が下がるだけならそんなルールは破ったほうがいい。
542仕様書無しさん:2007/12/27(木) 15:23:38
そうですか 意見ありがとうございます。

あと お聞きしたいのですが
自分は来年 組み込み系へ就職しますが 仮にC言語だと1つの仕事で大体何行くらいのプログラムを書きますかね?
まぁ仕事の内容にもよりますが...
皆さんは Cだと何行くらいのプログラムを書く仕事をしていますか?
参考にさせて下さい。
543仕様書無しさん:2007/12/27(木) 15:44:03
行数は関係ないよ。
544仕様書無しさん:2007/12/27(木) 16:31:14
千行から1万行の間くらい
545仕様書無しさん:2007/12/27(木) 20:34:37
15年前、G4ファックスボードのプロトコルを担当した俺が来ましたよ。
某電力会社の光ケーブル検査システムのアプリも作ったな。
546仕様書無しさん:2007/12/27(木) 20:35:57
>>536
乱用はいかんがここぞという時のgotoは使っても良いだろ。
昔gotoは嫌だと言っていた奴がlongjump使いまくりで萎えたな。

最近のtry〜catchてんこ盛りのソース見ると更に萎える。
547仕様書無しさん:2007/12/27(木) 20:37:24
考え抜いて、行数少ないほど、真の一流!
548仕様書無しさん:2007/12/27(木) 20:37:41
>>542
C言語のソース(テキスト)をLZHで圧縮して結果1MBくらいだな。
行数なんてわかんねぇよorz
549仕様書無しさん:2007/12/27(木) 20:38:08
1000〜10000行位かぁ
550仕様書無しさん:2007/12/27(木) 20:39:40
if (x > 0) { for (i = 0; i < 100; i++) { 〜〜; 〜〜; } return true; } else { return false; }
551仕様書無しさん:2007/12/27(木) 22:18:19
コーディング期間4ヶ月で10k〜12k行くらいのモジュールを4つ受け持ったな。
552仕様書無しさん:2007/12/28(金) 02:20:39
むか〜し、N○Cの作業標準で、「一日300行」 ってのがあったな(w
553仕様書無しさん:2007/12/28(金) 04:11:28
>>541
純粋な(副作用のない)関数的なコードになるように、とか、意味がこめられていても、
たいてい世の中機械的に適用して、なにかやった気分になるだけだからな。
554仕様書無しさん:2007/12/28(金) 13:45:56
学生の時5000行くらいのプログラムをかけるようになったら、
後は何行に成っても同じといわれた。

今になってみると、うーん。。。なんともいえんな。。
555仕様書無しさん:2007/12/28(金) 19:18:36
>>554
10万行くらいに壁があるような気がする(まともに設計してないと死ぬ壁)
556仕様書無しさん:2007/12/28(金) 19:23:38
そうだな
確かに数万行程度までなら把握できるけど
10万行超えると無理だ
557仕様書無しさん:2007/12/28(金) 21:15:02
HEXまで落とした時点で、容量が64Mこえてますた
焼くのに15分も掛かります
558仕様書無しさん:2007/12/29(土) 02:10:48
行なんか関係ないだろ。
階層構造にしときゃあ、何億行でも大丈夫。
559仕様書無しさん:2007/12/29(土) 03:47:06
1000倍違うと 「量の差」 ではなく 「質の差」 が現れる。
1K行の1000倍が百万行、winとか、大規模業務ソフトなんかがこの辺り。
億のオーダーが同じアーキテクチャで作れるとは思えない。
560仕様書無しさん:2007/12/29(土) 13:47:25
>>558が正しい。
>>559みたいな人は抽象化って概念がよくわかってないか、
酷く誤解してるんだねきっと
561仕様書無しさん:2007/12/29(土) 14:18:14
>>560
俺には>>559は何も間違ってないと思う。

いい加減な抽象化でも規模が小さければ大した矛盾もなく実装できる。
しかし、規模が大きくなると閉鎖になったピョンヤンの巨大ホテルみたいに
同じ階なのに途中で階段を作らないと通れなくなったりする。

>>559の数字が正しいかどうかはともかく、ソースのサイズはある程度目安になる。
562仕様書無しさん:2007/12/29(土) 14:33:37
>>559
確かにちゃんとしてないコードがそのまま肥大化していくと
明確に質の差が出てくるな
でもそれはもっと早い段階、それこそ10万行あたりで
すでに露呈する気がする
563仕様書無しさん:2007/12/29(土) 16:14:46
抽象化されてない膨大なソースを一人で面倒見せられてさじを投げた俺が通りますよ
564仕様書無しさん:2007/12/29(土) 22:16:15
>>558はソフト屋としてわかる感覚。
>>559は組み込み屋としてわかる感覚
>>560は組み込み屋か?

組み込みの場合、速度やらメンテナンス性やら考えて抽象化のレベルを変えたり
しなきゃならんこともあるだろうに。

ないのか?ないのか?。
俺だけ?、そんなぎりぎりのリソースでやらされてるの。。

565Steve Yegge on Code's Worst Enemy:2007/12/29(土) 22:29:34
In a recent blog post, Steve Yegge argues that the worst thing that can happen to a code
base is increased size, and suggests that developers should consider programming
languages on the basis of how concise a code base a language can facilitate.
http://www.artima.com/forums/flat.jsp?forum=276&thread=221157
566仕様書無しさん:2007/12/29(土) 22:39:38
コピペ君って馬鹿だな、まで読んだ。
567閻魔:2007/12/30(日) 00:19:02
>>536
絶対ありえない。GOTO使う理由がわかれば、謎は解けるw。
ただ、戻り値のある関数で、途中で(return 1;)として
「まだ、処理の途中だから、もう一回実行して。。」
ってゆう、パターンは使う・
すべて正常終了したら(return 0;)
>>542
行数か?
そんなのかんけね〜。
例えば、算数しかしらない小学生にプログラムさせると
100年かかって1万行のコードを書いてくる。
大学生にプログラムさせると10分で10行のコードで
完成させる。


で、質問です。

いま、組み込みに最高なマイコンは何ですか?
俺はM16Cが好きなんだが。。。。
568閻魔:2007/12/30(日) 00:35:52
Smalightは知っていますか?
組み込みOSらしいのですが。。。
「Wikipedia」の話ではなく、実体験を聞きたいんです。
俺?
xxxxを破壊されてました。w
569仕様書無しさん:2007/12/30(日) 01:01:00
何この糞コテ
570仕様書無しさん:2007/12/30(日) 01:11:47
なんかの固有名だして悦にいるって奴は
今までいくらでもいたからねえ。

そういう文系理系はこの業界からあっというまに消えていくけど。
571仕様書無しさん:2007/12/30(日) 02:52:16
何にでも頭突っ込んですべて中途半端って感じだな。
まるで自分を見ているようだ。 w
でもさー、もし仕事でμITRON 使ってるんだったら
sta_tsk の使い方をもう一回調べなおしたほうが
いいんじゃね? >> 閻魔
割り込み通知(発生時??) に sta_tsk は使わねーべよぉ。 w
572559:2007/12/30(日) 05:16:46
>>564 俺は組み込み屋です。560は違うだろうね。来年で40年目に突入、うち23年がクミコ。
俺がやると、なぜかROMが半分で済むよ。それで石のグレードダウンをこちらから提案したり。
誰かがリソース気にせず作った奴を引き継いでるのならお気の毒です。
拡張性のことを持ち出して、数十円程度出せばROMの多い石にできる、とか言えない?
573仕様書無しさん:2007/12/30(日) 07:29:57
まあ、そんだけの経験年数で続けてるって事は発言力がそれなりにあるんだろな。
だから「それは無駄」とか「こうしたほうが」って意見が通るからコードが短くなるんだろ。
574仕様書無しさん:2007/12/30(日) 08:35:24
ROMが少なければそれでいいのか、というのはあるぞ。
その場数百円ケチれてえがったのう^^ってのたもうても
人が変わって保守しようとすると、再開発以上のすさまじい工数がかかったり。
今はもうそういうのははやらないと思われる。
癒着したスパゲティ引き剥がすのってのは大変だぞー。

作り捨ての特注一品ものなら何でもいいんだろうけどよ。

575仕様書無しさん:2007/12/30(日) 08:36:34
いわゆる「内容結合」のオンパレードになる。
http://itpro.nikkeibp.co.jp/article/lecture/20070702/276410/hyo1.jpg
ここいらでもみてくれ。
576仕様書無しさん:2007/12/30(日) 08:52:44
組み込みで一番ROM削減に利くのは仕様の削除。
577仕様書無しさん:2007/12/30(日) 08:56:14
それには同意。
578仕様書無しさん:2007/12/30(日) 09:48:11
>>574 百円違うと累計10万でも1千万円
使い捨てのプログラマなら3人は雇える。 
579仕様書無しさん:2007/12/30(日) 10:18:11
あのな。
・そこまでぐちゃぐちゃなプログラムの保守、単価年300万の使い捨てPGには不可能。
(というか、年300万で使えるPGなんか存在するのかいまどき。中国ベトナム発注したって無理だぜ)
・しかも普通のプログラマは逃げる(考えてみろ、いわゆる箱根細工ほぐして改造せなならん上に
ぎちぎちの制約残ってるんだぜ?)
・10万個も作るならテスト工数も考慮しなければならない。(つか専門テスター使うだろ)

世間知らずの馬鹿学生乙。
580仕様書無しさん:2007/12/30(日) 10:23:16
世の中、年間5件も注文が来れば大量受注になるシステムがあるってことを忘れないでください
581仕様書無しさん:2007/12/30(日) 10:48:24
>>579
100円/個もコストが違う程のサイズはフラッシュだとしても128kbyte以上
それだけ小さく作られている=
それだけ職人技と仕様制定のスキルがある奴が作ったコードは逆に読み易い。

ただし、メインテナンスする奴が同じサイズで作れるとは限らない。
まあ無理だろうけど、上の容量もので作り直せばいいじゃない。
582仕様書無しさん:2007/12/30(日) 11:20:06
>>579
小さく作られたコードが必ずしも保守性が悪いわけではない。
逆に聞くが メインテナンスしたいとしたら、100Kと200Kのどっちのコードをメインテナンスしたい?

200Kのコードも100Kのコードも同じ納期、同じ予算だとしてさ
583仕様書無しさん:2007/12/30(日) 11:45:59
まとめ:ケースバイケース
584仕様書無しさん:2007/12/30(日) 11:52:06
えっとねえ。
世間にはROM効率の悪い石とROM効率の良い石というのが存在してるんだよね。
基準を8ビット60KBで何とか実現可能だったものとして、機能追加高速化込み
C言語化してなどで石を変えるとすると・・・。
16ビットCISC=128KB
32ビットRISC(少しは効率考えてる)=256KB
32ビットRISC(効率無視)=384KB

てな例もあるんじゃないのかねえ。
で、職人気取りのスパゲッティさんにお任せすると確かにコードは減るんだけど
後で保守できなくなる。

特殊例だが、60KBぎりぎりに膨れたROMを48KB以下に減らせって話は昔あったと思う。
要求にこたえたソフトはとてもじゃないが読めない・・・。
585仕様書無しさん:2007/12/30(日) 11:59:28
48Kに圧縮したのは、それだけ手間をかけてもコストメリットがあったからだろ?

だいたい60Kのコードが読めるんなら、メインテナンスはソッチでやればいいだろうに。 バカ?
586仕様書無しさん:2007/12/30(日) 12:04:06
馬鹿、って発注してくるメーカーの連中に言ってみろよ。一度削ったらめったなことじゃ増やさないしな。
で、保守改造は当然のごとく「削った後」のソースぶん投げてやらせようとするんだよなこれが。
元ソース?そんなもの渡すわけないし、ハードが違ってて使えない、ということになってる。

ひどいとこだと散逸してる。


587仕様書無しさん:2007/12/30(日) 12:06:55
>>584
話題に上っていないCPUの種別によるROM効率の話は 詭弁のガイドライン6に該当いたします。
また職人気取りのスパゲッティさんのお話は詭弁のガイドライン11に該当すると思われます。
588仕様書無しさん:2007/12/30(日) 12:09:47
>>586 それは発注者側の問題で、あなたが選択出来る問題ではありません。

その発言は、あなたの発注者にとってROMサイズのコストが 貴方の労賃を上回っているという確認にしか見えません。
589仕様書無しさん:2007/12/30(日) 12:22:59
ROM化するプログラムで、可読性や保守性を犠牲にしてアセンブラでソフトを詰め込むのは正か邪か、という話。
【かなり前】
・半導体コスト高い、ソフト規模小さい、アセンブラ主体、スパゲティ概念なし。
→職人芸でソフト規模小さくして、高速化するというのがまあ正しかった時期。
ROMはあるけどRAMは無い、という状況もあり。
【ちょっと前】
・半導体コスト高い、ソフト規模大きくなってる、C言語化ちらほら、品質問題、保守問題散見。
→人も増えてきて職人芸じゃバラツキがひどく問題になってきた時期。
→この時期に保守改造ということで、過去のものをさらにいじくったものがスパゲティ化してたりする。
→マイコンのROMコードサイズ削減、というのが売り物にされるのはこのころから。
【今】
・半導体高集積化、ソフト規模肥大、高級言語どころかOS導入、品質問題で世間の耳目集まる。
→職人、個人レベルではどうにもならない問題が山積みになってきており、ROM化した上での
オブジェクトサイズの問題より、人件費や納期の問題のほうが重視されるようになってきている。

どこでも、【かなり前】の時期のソフトをいじり倒して現在に至り、どうにもならなくなって問題視される例はあるだろ。
まあ、バブル時代の不良債権を持ち越して整理もしていないうちに辞めていく団塊世代の遺産とでも
いったものに、苦しめられてる連中もいるってことだろうねえ。
590仕様書無しさん:2007/12/30(日) 12:32:29
>苦しめられてる連中もいるってことだろうねえ

そりゃいるだろうけど、それが仕事。
 仕事が選べる立場なら断ればいいわけで 断った仕事の悪口を言う奴に次から仕事そのものは来なくなるだけ。
 仕事も選べない立場なら、見苦しいだけ。
591仕様書無しさん:2007/12/30(日) 12:36:25
>ROM化するプログラムで、可読性や保守性を犠牲にしてアセンブラでソフトを詰め込むのは正か邪か、という話。

なら、正に決まってるじゃない。

俺だってCソースが吐き出したコードから削れる部分を削るようなのを自作してるよ。
まだまだ思った性能は出ないけどね。
手作業でやるってのは愚かだろうね。
592仕様書無しさん:2007/12/30(日) 12:38:05
別に>>590の感情はどうでも良いんだよね。
ROM化するプログラムで、可読性や保守性を犠牲にしてアセンブラでソフトを詰め込むのは正か邪か、という話。
くどくなるけどこれだけ。

2007年現在では、はっきりいえば邪なんじゃねえのかなあ。業界全体では人が足りないとかいってるんだろ?
だったら、過去の詰め込みをきちんとした形に直して保守できるような奴は、もっと生産性の高い仕事に就いたほうが良いし、
経験の足りない連中は、そんな邪なソフト見て変な癖つけないほうが本人のためだと思う。

どうも、昔書いたものを今の奴にぶん投げようとして相手は馬鹿だからできないと詭弁を弄する老人の
物言いに近いものを感じるんだけど違うのかなぁ?w
593仕様書無しさん:2007/12/30(日) 12:40:37
>>591 だから、状況依存だろ?

RISCマイコンでパイプラインまで含めて、コンパイラより頭のいいコードを自分でアセンブラ書いて
直すのが、正しい場合とそうでない場合がある。

大体、9割の奴は何かしら見落として失敗するのが普通じゃねえのか?
高級言語化の意味がなくなるしな。
594仕様書無しさん:2007/12/30(日) 12:45:40
>>592
> ROM化するプログラムで、可読性や保守性を犠牲にしてアセンブラでソフトを詰め込むのは正か邪か

結局コストの問題でしょ?
トータルコストがその時に上回っている方を選択すればいいだけの事。

将来の話なんて詭弁。 そもそもCだけで組んでも可読性や保守性が保たれる保証は誰もしてくれない。
それこそ10年後には、
#ROM化するプログラムで、可読性や保守性を犠牲にして【C】でソフトを詰め込むのは正か邪か
なんて話になってないとも限らない。

>昔書いたものを今の奴にぶん投げようとして相手は馬鹿だからできないと詭弁を弄する老人の

相手が詭弁だと思うなら、しっかり反論してごらん。 それが出来ないお子様だからいつまでも使い走り。
そのままコード毎、捨てられるんだよ。
595仕様書無しさん:2007/12/30(日) 12:52:24
>>593
ほら、またRISCマイコンの話にして逃げようとする。
SHのようなアーキテテクチャで速度とサイズを両立させるのは確かに難しい。
コンパイラの性能があって初めて使えるアーキテクチャなんだから、
そもそも[アセンブラでソフトを詰込」そのものが難しい。

そんなもん持ち出すんならDSP持ち出すぞ!
596仕様書無しさん:2007/12/30(日) 12:52:34
>>594 現実に、Cで書くことがすでに効率を落とすとされている現場もある。C++飛び越え、Javaじゃないととかな。
将来のことを考えずに、というのは、巡り巡って自分のことを考えないというのと同義じゃないか。
顔を見たことも無い将来の保守やるやつのことを考えて設計するのが本来のプロだろうが。

ひっくり返せば、「今目の前のプログラムやっつけとけばいいや、あとのこたしらね。また困れば飯の種にできるな^^」
ってのが、正しいってことなのかあんたにとっては。
597仕様書無しさん:2007/12/30(日) 12:54:58
1人1生1カーネルか。
598仕様書無しさん:2007/12/30(日) 12:58:36
年末年始だから暇なおっさん(じいさんか?)熱くなってるのかねえ。
いま、現在ではRISCマイコンがほぼ主流だろ?案件としても。

DSPは某社寡占で、C++でも書けますよーとかいってなかったかなぁ。ツールで実験した結果を
そのままぶち込めますよ〜なんてのが売りだったような。こうなるとモデルしか見ない奴まで出てくるよな?

実は、Z80ぐらいの石の需要はたくさんあるんだろうけど、ニモニック暗記の爺さんたちが抱え込んでて
たまーに若いのに振ってもできないから(説明することすら連中できなかったりするんだけどさ・・・)
なかなか一般的とはいいがたいんじゃないの?(それにここ、2ちゃんだしな)
599仕様書無しさん:2007/12/30(日) 13:00:50
潜在的なバグが発覚して、苦労してる人がいそうな?
600仕様書無しさん:2007/12/30(日) 13:01:57
>>596
 将来を見据える? だったらなおさら金が大事。
 
将来の為には コードで残しておくより今現在利益で上げる方が余程大事な事。
その視点がどうして無いわけ?

ROMサイズで100円 開発に500万余分にかけてでも500万の利益を残しておけば、将来どれだけの余裕になる?
金は複利で増えてくれるし、金は発言力にもなる。

コードは時間と共に腐るばかり。
10年もしたら、結局は作り直し。 

俺はJAVAだのC++だの今の時点で組み込みで使う奴の気持ちが判らんね。
601仕様書無しさん:2007/12/30(日) 13:07:27
どっちにしてもアセンブラにするところは
できるだけ小さく絞ったほうが良いと思うぞ。
602仕様書無しさん:2007/12/30(日) 13:07:44
>>600
最後の一行はよくわかる。
603仕様書無しさん:2007/12/30(日) 13:11:04
500万の利益?

マスクでないにしろ、仮にフラッシュであったとさえしてもだ。
不具合出せばそんなもの消し飛ぶじゃないか。

量産不具合に準備金積んでる現実だって理解するべきだ。
あんたのいう発言権など、一回不具合出せば量産品では消し飛ぶよ。
604仕様書無しさん:2007/12/30(日) 13:19:25
>>603
その通り。 不具合を出したら消し飛ぶ。

だからキミ発注者に言われた通り、指示通り。
こちらから何か提案する事もないわけだろ?
だって提案するって事は常にリスクを抱える事だもんな。

だからいつまでもお子様扱いなのさ。

100円で1千万の差があるなら、そこをあえて提案するって事は、不具合はもちろん出さない自信があるから出来る事。
だからその提案者は信用されるし、その浮かせてあげた金の分さらに信用も築いてゆけるわけさ。

逆に言えば、そういう事をキミらが出来ないから俺達年寄りがいつまでも仕事しなくちゃいけないわけだ。
605仕様書無しさん:2007/12/30(日) 13:19:37
>>603
頭大丈夫?

606仕様書無しさん:2007/12/30(日) 13:22:16
組み込みといってもいろいろあるわけだから、状況によって最適な方法を選ぶのが普通。
607仕様書無しさん:2007/12/30(日) 13:31:21
ケースバイケースってのはまあそうだね。

>>605は、量産品作ってるメーカーの内実知らないのかね。
不具合対策の予算(昔はマスクミスへの引き当て金)ってのはあるんだよ。

>>604タイプの爺さんがくっつけた火を消すのは大変なんだよ。
老獪なだけに逃げ足も速いから。
608仕様書無しさん:2007/12/30(日) 13:34:19
CからアセンブラにしたからROMランクが下げられる
ってのはオイラはあんまし経験無いな。
データ圧縮でROM半分とかはよく提案するけど。
609仕様書無しさん:2007/12/30(日) 13:38:19
>>608 元の話は、単に小さいコードという話だったんだけど、
突然>>592が アセンブラで小さくという話を持ち出しただけ。
まあ、詭弁のガイドラインの・・・・こんな所の議論でも勝ちたいんだろな。

元は同じCで書いても、当然差が出てくるという話だった筈。
そもそもアセンブラレベルで100K埋める奴が実在したとしたら、それはもう超人レベルの話。
610仕様書無しさん:2007/12/30(日) 13:40:45
>>607
その引当金と500万節約できることにどういう関係がある?
611仕様書無しさん:2007/12/30(日) 13:42:08
アセンブラで100K超えるだけなら、昔はあったぞ。
Z80でバンク範囲決めて切り替えるとかな。結構複雑なアプリ。
その方向で8ビット系のCPUで拡張アドレス使えるのはあったと思うが?

無論構造化されているのは当たり前だけどねえ。
612仕様書無しさん:2007/12/30(日) 13:43:11
保守性さげるとROMが小さくなるってのも
それもあんまし経験ない。

保守性あげて整理したほうがむしろコンパクトになるよね。
613仕様書無しさん:2007/12/30(日) 13:43:57
>>610 リスクとのトレードオフだなあ。凡人なのに俺は達人だって会社ごと轟沈させていった剛の者もたくさんいるだろ。
614仕様書無しさん:2007/12/30(日) 13:44:26
>>612
普通はそうなるよね。
615仕様書無しさん:2007/12/30(日) 13:47:25
>>611
マクロアセンブラ全盛の頃は確かにあったけど、
それは今とはROMサイズ/開発時間 の比が1桁以上違っていた頃の話。
4Kbyte埋めるのに1ヶ月かけてたような時代。
616仕様書無しさん:2007/12/30(日) 14:11:51
構造化なんてサイズをあげるだろ。
サブルーチンリターンなんて使わないで
すべてBRでやるんだよ。GOTOじゃないぞ。
インタラプトもRAM食うから禁止ナ。
ポーリング待ちでアイドル処理入れろよ。
サバイバル時間はμ秒だかんな。

んじゃあとよろしく。オイラは明日定年なんで。

617仕様書無しさん:2007/12/30(日) 14:21:13
BR ? 相対ジャンプか? なんでRET命令の代わりに使えるんだ?
レジスタ分岐とかなら判るんだが
IBMの汎用機世代の人?あれはCALL/RET持って無いから仕方ないんだろうけどさ
618仕様書無しさん:2007/12/30(日) 14:31:26
>>617
引数に戻り番号をもって呼ぶんだよ。
組み込みだとコールは有限個だからな。
8ビットなら256箇所区別できる。
619仕様書無しさん:2007/12/30(日) 14:33:42
? それでなんでサイズが小さくなるんだよ
620仕様書無しさん:2007/12/30(日) 14:37:47
>>618
コールが有限個って?
確かに、PICとか4bitマイコンではネスト数には厳しい制限があるけど
ネストが有限なのと、コールが有限ってのは違うだろうに

今朝からこういう頓珍漢な事書いてる奴って同一人物なのか?
それとも今の使い捨てプログラマってこういうレベルなのか?
621仕様書無しさん:2007/12/30(日) 14:38:39
ん?RAMサイズは小さくなるだろ?
ちなみにPOP,PUSHも禁止ナ。
622仕様書無しさん:2007/12/30(日) 14:41:31
別に4bitやPICで鍛えた俺には、POP/PUSH禁止なんてへでもないぜ
623仕様書無しさん:2007/12/30(日) 14:56:19
なんとなく見えてきたよ。

結局、こういうレベルだと他人のコードが読めない。
短いコードのせいではない。 短い長いに関係なく読めないのだろう。

and or xor を使ってるだけで読めないというレベルじゃないのかな?

チャタリング取りに2度同じビットが変化したら採用するという良く使われてるxor+and使ったコードが書かれていても
特殊なコードだという事にしてしまうんでしょ?

大抵のプログラミング言語で、プログラミング以外の作法のようなものがあるように、組み込みでも場面に応じた作法がある。
それが判れば他人のコードでも、ここはこういうテクニックを使ってると判るもの。
勉強不足だと思うよ。
624仕様書無しさん:2007/12/30(日) 15:09:00
>>620
コールが有限個って、そのまんまですよ。
この場合で、スタックを使わないで
サブルーチンコールを実装する方法を考えればよろし。
アセンブラレベルの思い切り下の話ね。

とかいう爺が使い捨てにならないから問題なのさ。
625仕様書無しさん:2007/12/30(日) 15:12:57
>571
sta_tskの件 
NortiならOK、MR30なら撃沈ですね。

E_CTXエラーの実装定義の違いですね。
626仕様書無しさん:2007/12/30(日) 15:33:44
>>624
判らん。 

4bitマイコンでもコールで直接呼べるのは最初のページだけ、
大きい番地呼ぶ時はそこから分岐命令でってのがあるけどさ、別にその仕様で困った事はないな。
なぜなら、そんな仕様のチップはそもそも、そういうサイズのROMしか持ってない。
サイズに応じた制限だからね。

たとえばCALLで呼べる範囲が256個しかないって事?ようするにtrap命令のようなもの?
でも、そういう制限なら、そういうサイズのROMだろうからさ、サイズに応じた制限は別に普通でしょ?

あと、どうして>>618
>組み込みだとコールは有限個だからな。
って書いたの? 一般的な話ではないでしょ?
627仕様書無しさん:2007/12/30(日) 15:43:22
>>626
>>サイズに応じた制限は別に普通

だからその程度の話だってばさ。
もちろん一般的な話じゃない。

組み込んだらレアケースでスタックがこえる、
しかしいまさらRAMは増やせない。
どうする?ってだけのこと。
628仕様書無しさん:2007/12/30(日) 16:27:03
>>623
まったく話の流れから脱線するけど、
>チャタリング取りに2度同じビットが変化したら採用
それを言うなら「変化しなかったら」だろ、というのも突っ込みどころだが、
それ以前にこの間抜けなチャタリングキャンセル法を広めたのって一体誰なんだろうな。

もちろんごく例外的な場面では意味を持たないこともないんだが、
通常はチャタをキャンセルするのにこんな回りくどい方法をとる必要なんて全然ないのに。
629仕様書無しさん:2007/12/30(日) 16:56:12
チャタをキャンセルするって
・ローパスフィルタ
・シュミットトリガ
・10ms後にもう一度見に行く(正式名称は知らん)
くらいしか知らないんだけど、今話題になってるのってどんな方法なの?
630仕様書無しさん:2007/12/30(日) 16:57:33
623 に軍配が上がったようですね。
628 は 623 の 'チャタ取り' の方法を 1万回読み返すように。 w
仕様書も満足に読めねーのかってバカにされるよ。
631仕様書無しさん:2007/12/30(日) 17:02:38
>>630
正気か?w
そもそも俺(=628)は623自身には喧嘩売ってないだろうw

623は、あくまで文面から読み取れる範囲では単にそういう方法を取っているコードが
存在することを紹介しているのみであって、その方法自体には何も評価を下しておらず中立に読める。
632仕様書無しさん:2007/12/30(日) 17:05:13
ゴメン。単なる打ち間違い。

なお、2度同じなら採用というのは、サンプリング間隔を適切に取れば非常に上手く機能する。
チャタリングが上手く取れるだけでなく、ノイズに対する耐性も非常に大きくなる。

チャタリングとはスイッチやリレーのバタつきにより2度、スイッチが押されたかのように働く事。
10〜30msサンプルで2度比較して同じなら採用する事で、一般的なタクトスイッチであれば、
まずチャタリングに出会う事はない。 
非常にチャタリング時間の長いスイッチでも押し方がマズカッタかなと思わせられる頻度になる。

ダイナミックスキャンの結果キーコードが得られるなら、on/off値でなくキーコードを比較して
前回と違っていればデータを捨てるというようなコードになるし、ポートの場合は
ビット単位に処理する。 その処理には論理命令を使えばビットサイズ一度に実行する事が出来、
コードサイズも実行時間も短縮出来る。

この方法が回りくどいというなら、もっとスマートな方法があるの?
633仕様書無しさん:2007/12/30(日) 17:06:36
それとも630は623が紹介しているチャタリングの除去方法の「間抜けさ」を
理解してないのかな?w

まあそれなら「さもありなん」。
じっさいこういう人にその方法がいかに無駄かを説得するのに苦労した経験があるし、
この方法がソフト的にチャタを除去する定石だと思い込んでる人は結構いるみたいだから。
634仕様書無しさん:2007/12/30(日) 17:08:07
>>629
複数回読みにいく方法なので、
>・10ms後にもう一度見に行く(正式名称は知らん)
と同じと考えていい。サンプリング間隔、回数はモノによって変える。
635仕様書無しさん:2007/12/30(日) 17:08:18
>>632
>ノイズに対する耐性も非常に大きくなる。
理論的(といっても高校一年の数学の話だけど。。)には1/4になるだけでしょ。
636635:2007/12/30(日) 17:13:44
ごめんボケてたw
1/4ではないね。pの二乗か。
637仕様書無しさん:2007/12/30(日) 17:18:05
>>627
残念だけど、その手の被CALL先数に制限があるマイコンは、スタックそのものが特殊。
データRAMとシェア出来るマイコンでは見た事が無い。

そういうマイコンでROMサイズが不足して、とにかく短くする為にCALLを使いまくって、
結果、スタックが不足するからどうするって話は、それはもう20年も前のレベルの話だ。

今では、その手の貧弱なマイコンでどの程度のROMサイズが必要か事前に見積もれるし、そこまで無理はなしない。
その手のマイコンは1個のコストが100円以下、1ランク上のチップに変更しても多くて10円程度の差でしかないからね。
さすがに10円のコスト差では、そこまで頑張るメリットが生まれない。

この上の議論では@100円のコスト差が生まれる場合にどこまで頑張るかって話なんで1桁違う話。
638仕様書無しさん:2007/12/30(日) 17:22:32
>>633
うーん。 その無駄ではない方法を説明してみては?

たまに、一定時間毎に2度読んで同じなら採用と言ってるのに、
時間を置かずに連続して読むコードを書く人がいるけど、
そういう人を説得するのに苦労した事はない。

理屈がわかっていれば、簡単に説得出来るよ。
639仕様書無しさん:2007/12/30(日) 17:25:20
図でも描いてじっくり考えてもらえばわかると思うけど、
メカスイッチのような出力を前提とする場合、チャタを除去するための
必要十分条件はチャタの(最大)継続時間よりも長い期間でサンプリングすること。

わざわざ2回サンプルして〜、なんて処理には何の意味もないのよ。

ノイズ云々、ってのもよくある話だけど、
確かにノイズによる偽信号が時間軸上で完全にランダムならばN回サンプルをとることによって
偽信号を拾う確率をpのN乗に出来るだろうけど、実際にはポートの入力を誤らせるほどの
電気的なノイズっていうのはそういう性質を持ってないでしょ。

だからそれをソフトで解決しよう、なんてそもそも発想が無理。
そういうのは電気的にそもそも偽信号が載らないようにしなきゃ。
640仕様書無しさん:2007/12/30(日) 17:42:43
>>639
チャタリングの最大時間は100msもあるよ。
そんなに長い間隔あけてサンプリングしてたら、それこそ応答が悪いとしかられるだけ。

10ms〜30msのサンプリング間隔で、なおかつ応答を実用的な時間にして、
さらにチャタリングによる2度押しを防ぐ方法が、この方式。
前回と同じビットだけを今回採用するという方式ね。

ノイズに対しては、ソフトだけではダメなのは確か。
でも、ノイズに対する誤動作は、この2度読み採用をするかしないかで劇的に違うのも確か。

で、電気的な話は、コストとの問題。
最近は携帯電話も普及してるし、工場での火花放電などを考えると、
そこにコストをいくらかけても満点にするのは難しい。

俺は最近の、入出力が切り替えられるマイコンなら、抵抗1本100KΩ〜330KΩを直列に入れて貰う。
そして普段は出力ポートにして、読み込む時だけ入力ポートにする。

たった抵抗1本でも、この方式ならポートは
出力時は10Ω以下になってるので1万Vの電圧でも普段は1V以下の影響しかポートに与えない。
確率的には非常に強くなる。
また、入力ポートにする時間を短くすれば浮遊容量があるので、その程度の短時間なら問題ない。

このとき、ノイズを取った結果を出力しておくか、前回の結果を出力しておけば浮遊容量の
コンデンサの効果でシュミット特性も出せる。

こうしてコストダウンするわけさ。
641仕様書無しさん:2007/12/30(日) 17:44:21
>>639
>必要十分条件はチャタの(最大)継続時間よりも長い期間でサンプリングすること。
チャタの継続時間が異様に長い場合があったりしてだな、

>電気的なノイズっていうのはそういう性質を持ってないでしょ。
それならその性質に合わせた処理をすればいいだけの話。

>そういうのは電気的にそもそも偽信号が載らないようにしなきゃ。
それが理想ではあるが、世の中理想通りにならないことも多いんだ。
642仕様書無しさん:2007/12/30(日) 17:49:48
継続時間の半分を越えれば十分では。意味ないけど。
643仕様書無しさん:2007/12/30(日) 17:56:00
チャタリリング波形ってのは

~~~~|______|~|____________________________________|________________________

てな感じで 最初の数mの後に何10msもたってからヒゲが出る
人が押してる力が弱まった時に丁度振動が持ち上げたりするんだろうな

さらに接点が古くなると押し続けてる状態でもザラザラとノイズのように入る

>>639の 単に時間を置いてるだけの方式では、古くなると、そのうちチャタリングが入るようになるよ。
大量の返品を覚悟した方がいいかもな。
644仕様書無しさん:2007/12/30(日) 17:58:54
>>641
>>必要十分条件はチャタの(最大)継続時間よりも長い期間でサンプリングすること。
>チャタの継続時間が異様に長い場合があったりしてだな、
だからちゃんと図を描いて考えた?
じゃあその「異常に長いチャタの継続時間」中に2回読んでAND取った値は
チャタらない、とでも思ってるの?

そんなことはないんだよ。
ただチャタる可能性がほんの少し低下するだけ。
要するにチャタの継続時間が異常に長いとしたら(そんなことって本当にあるの?w)
基本的には処置なしなんだよ。

>>電気的なノイズっていうのはそういう性質を持ってないでしょ。
>それならその性質に合わせた処理をすればいいだけの話。
おいおい人の書いたことを恣意的な切り方するなよ。
俺は「ポートの入力を誤らせるほどの電気的なノイズ」と書いてるんだよ。

こういう状況下じゃ、極端に言えば一回スキャンしたときに偽の信号を読み取る
可能性は0.99ってことも在りうる。
つまりN回スキャンしてANDなんていう小細工が意味をもたない蓋然性は高い。
645仕様書無しさん:2007/12/30(日) 18:00:56
>>643
だからさあ、君もよくない頭でよく考えなって。
スイッチが君の言うような出力を吐く状態になったとする。

で、その状況下においてN回サンプルしてAND取ればチャタを拾わなくなるの?
そんなことはあり得ないんだよ。
646仕様書無しさん:2007/12/30(日) 18:05:23
>>644
だからキミは他人のコードが読めないんだろう。
2度ANDなんてコードではチャタリングは取れない。

static int key=0;
int chatKey(int newkey)
{
  int wk;
   static int oldkey=0;
   wk =(~(oldkey^newkey)) & (key^newkey); //2回同じで かつ異なるbitを1に
   oldkey=newkey;
   key ^=wk;
  return wk & key; //今回1に変化したビットだけ1にする
}

上のコードは
ttp://www.tensyo.com/urame/prog/ALGO.HTM
からコピペした組み込みで良く使われてるチャタリング取りのコードだ。
これは単にANDしてるんじゃない。 2度同じなら採用してるんだ。

>>634が書いてるような、時間を置いて出るヒゲは短い。 
サンプリングより短いヒゲはこのコードで確実に取れる。
一方、単に時間を置いただけだったり、時間を置いてANDしただけのコードではこのヒゲは取れない。

もし、今までそんなコードで出荷してるのなら、確かにそのうちチャタリングが出るようになる。
スイッチは劣化と共に、チャタリングが出易くなるからね。
どうして出易くなるのか原理は知らないけど、事実はそう。
647仕様書無しさん:2007/12/30(日) 18:08:31
チャタ取るのに2度一致ってあんた・・・。
648仕様書無しさん:2007/12/30(日) 18:10:40
>>646
AND云々は長くなるからそう書いているだけで623が言ってるような処理の
意図を理解してないわけじゃないよ。

確かに>>643が前半で書いている、短時間に一発だけでる「ヒゲ」はフィルタ可能だと思う。
でも後半に書いているスイッチの劣化によるノイズはそうじゃないでしょ。
649仕様書無しさん:2007/12/30(日) 18:12:00
偶然2度拾ったら、取れないじゃん。

アンチエイリアスフィルタをハードで用意すべきだな。
650仕様書無しさん:2007/12/30(日) 18:13:45
流れ読まないで聞くが、「普通は」キーをポーリングで見る場合、周期はどうするんだ?
エッジを見る時はどうするのか説明してみてくれないかな。
651仕様書無しさん:2007/12/30(日) 18:16:30
チャッタとりってOFF検出の事だと思ってたよ。
652仕様書無しさん:2007/12/30(日) 18:18:44
おー、盛り上がってねー。
チャタ?。いや、キースキャン機能付きLCDコントローラー使うからシラね。
653仕様書無しさん:2007/12/30(日) 18:19:57
>>649
頻度の問題。 劣化は一挙におきるわけじゃない。 接点の酸化などでだんだんと悪化する。

10秒に数mのヒゲが出る状態でも、
20msに1回サンプルしてるなら
キミのコードでは1/500の確率なわけで1日に何度も誤動作してしまう。
操作してる人はいつも「戻る」キーを操作させられてイライラする事になるだろう。

一方は1/500^2 = 250000 まず年に数度しか起きない。
654仕様書無しさん:2007/12/30(日) 18:20:40
>>650
周期はハードウェアの応答時間(時定数)にもよるから
十分考えなきゃいけない
655仕様書無しさん:2007/12/30(日) 18:21:07
>>637
CPUがどんなに高級にナっても
組み込みだとRAMがギリギリになる
って事があるって事なんだけどね。

そのときの為に覚えておいても良いテクニックってだけ。
656仕様書無しさん:2007/12/30(日) 18:21:26
で、普通に考えるとそのキーコントローラ相当の処理をソフトでやるのが「チャタトリ」なんだろ?
上に上がってるソースの方法はそれにそぐわないから使わないよ俺は。
657仕様書無しさん:2007/12/30(日) 18:25:20
盛り上がってるな 俺も混ぜてくれ
まずチャタ取りをハードでやるって言うと上司がうるさいな
コストかかるしソフトで何とかってのがうちの方針だ
人の労働はコスト0だと思ってやがる
658仕様書無しさん:2007/12/30(日) 18:26:26
チャタリリング波形ってのは

~~~~|||||||||__________|________________________||||||||~~~~~


っての。2度検出したぐらいで判断しちゃだめよ。

659仕様書無しさん:2007/12/30(日) 18:27:33
途中の

~~~~|||||||||__________|________________________||||||||~~~~~
          ↑これ

は何?
660仕様書無しさん:2007/12/30(日) 18:29:36
俺は以前の状態を保持しておいて、時間を置いて二度違うデータをサンプルしたら変化、というコードで今までやってるけど別に問題はないな。
661仕様書無しさん:2007/12/30(日) 18:29:41
>>658 ところが

~~~~|||||||||__________|________________________||||||||~~~~~
  |<-->|

理論的には、 この時間より少し長いくらいでサンプリングすれば2度検出で十分効果があるんだよ。
もちろん劣化を考えないといけないけどね。

で、この時間は数ms 全体は長いけど、大きく暴れてる時間は案外短い。
662仕様書無しさん:2007/12/30(日) 18:30:49
俺の会社のソースで
読み込み→NOP→NOP→・・・・(NOP5回くらい)・・・→読み込み→一致ならOK
を2回繰り返すのあるんだけど・・・
663仕様書無しさん:2007/12/30(日) 18:32:13
>>662 ああ、アルな。 チャタリングに対しては殆ど効果ないけど、静電気なんかの火花放電には効果あるんじゃない?
664仕様書無しさん:2007/12/30(日) 18:34:11
>>662
それは別種のノイズ対策では
665仕様書無しさん:2007/12/30(日) 18:34:34
>>653
君がいってるような劣化の仕方ならその方法が有効であることは認めるけど、
スイッチっていうのは本当にそんな「都合のいい」劣化の仕方をするのかなあ。
俺はそうは思えないんだけど。
666仕様書無しさん:2007/12/30(日) 18:36:37
>>658
サンプリング回数をもっと増やせば大丈夫
667仕様書無しさん:2007/12/30(日) 18:38:38
>>659
リバウンドって奴らしい。

>>661
最後のH検出から2度検出ね。
668仕様書無しさん:2007/12/30(日) 18:42:25

~~~~|||||||||__________|________________________||||||||~~~~~

だから、上の|||||||||のどこで事象が変化したかどうかを検知するのが目的で、それは仕様で決めるものだろ?
行き当たりばったりのメインループで、不定周期で二度読み一致って乱暴なコード書いたら
       H            L
    ↓     ↓     ↓   ↓                 
~~~~|||||||||__________|________________________||||||||~~~~~  うほうほ!H検出!L検出!
といった乱暴なことになり、ひどく鈍い応答しかできなくなるように見えるんだけどどうなのかね?
      H→L              L→H
       ↓                ↓
~~~~|||||||||__________|________________________||||||||~~~~~  仕様しだいだけど、左のようなタイミングで
変化を検出できるように設計しろということじゃないのか??

669仕様書無しさん:2007/12/30(日) 18:43:10
ハードで処理するかソフトで処理するかって話はよくあるが、
ソフトで処理すると余計な部品が不要になって小型化に貢献するというメリットもあったり
670仕様書無しさん:2007/12/30(日) 18:43:41
668だけど、ずれてしまって説明の意図が伝わらないかな・・・。
飯でも食いに出ます。ご高説を賜りたいものですね。
671仕様書無しさん:2007/12/30(日) 18:44:51
>>668
サンプリング周期によって応答性が変わるのは当たり前だがそれが何か?
672仕様書無しさん:2007/12/30(日) 18:45:35
>>659
リレーが働く音ってチッじゃなくてカチャって音でしょ?
大きめのボタンを押した時の音もパチンでしょ? 振動がそれだけ長く続いてる証拠。

その音が出てる間振動してるといっても、その振動がそのままon.off信号になるわけじゃない。
でも運が悪いと、その振動で接点がふと離れたりするわけ、

そんなわけだから、onの時にはだいぶ後にヒゲが出る時がある。
また、オフの時は 普通は物理的に距離が離れてしまっているので後でオンになることはない
673仕様書無しさん:2007/12/30(日) 18:48:15
>>671 いやそうではなく
まぐれの2度読み一致だと、周期にかかわらずおかしくなる場合が多いんじゃないかと。

旧いPICかそれ以下しか無いような、天地開闢以前の4ビット〜8ビットマイコンならありなのかねえ?
そういうのだともうCじゃかけないでしょ?コードの出自と有効性に疑問がある。
674仕様書無しさん:2007/12/30(日) 18:54:02
>>668 ボタンの場合は押した事を確実に、かつ2度ひらわずに検出出来れば、それ以上誰も文句言わない。

リレーやリミットスイッチの場合は応答時間について要求があったり
制御の都合で、応答時間の要求を自分で設定する。

それはそれに応じて考えないといけないというか、それを考えるのがお仕事でしょ。
時間の要求とノイズ耐性の両方を考えてサンプリング時間の設定と、2度読みをするかどうかを決めなければいけない
場合によっては >>662 のような方法で火花ノイズだけを取るという事もある。
675仕様書無しさん:2007/12/30(日) 18:54:10
676仕様書無しさん:2007/12/30(日) 18:56:06
>>668  行き当たりばったりのメインループなんか書くなよ。

ポーリングするなら、必要な時間分解能はキッチリ作ろう。
それが出来ないなら教えてやるから、俺のトコに来い。
677仕様書無しさん:2007/12/30(日) 19:30:17
>>676 問題整理するために言ってみたのさ。俺はメインループからキーのポートは直読みしないよ。
ボタンの場合、ってFAで使うような大きなボタンならそうかもしれないけど
やわいメンブレンスイッチなどで、キー押す時間で、機器の状態に合わせてキーを別のものとして取れ、
なんてときはどうするのさ。ちと聞いてみたいなあ。
678仕様書無しさん:2007/12/30(日) 19:33:57
>>665
クリーニング電流ってのは聞いた事があるかい?
ある程度の電流を流すリレーやスイッチにはクリーニング電流を流さないと早く劣化する。


微少容量接点の場合はクロスバー接点のように、機械的に擦り合わせて表面を綺麗にするわけ
そういう機構だから使ってる間に磨耗するのが当然。
過去の経験から、みんなそうなる事を知っていて、それを前提に設計してるわけ。

疑うのは正しい姿勢だけど、疑うなら自分でソレなりにどういう機構でどういう仕組みなのか多角的に調べる事だね。
単に思考実験して、2度読みしなくていいって結論を下すのは愚かな行為だ。
679仕様書無しさん:2007/12/30(日) 19:43:31
>>677
たとえサンプリング時間が30msにしても、長押しでどうこういうのに困るなんて事はない。
長押しには短くても0.5秒以上にしないとね。
だいたい長押しとそうじゃない場合で区別するなら、途中で音を変えたり、画面に反映させたりするもの。
応答さえちゃんとしてれば問題ない。

なお、 メンブレンスイッチのようにクリック感のあまり無いタイプは、
そもそも押した時に振動が無いのでチャタリングは10ms以下。
普通に10msのループでサンプリングして2度読み一致採用すれば良い。 
ただ、押し続けた時の力加減の変化で押し続けてるつもりで再入力になるという状態にはなりえるんで
良く使うキーで長押し対応は採用しないほうがいい。
時計合わせのように滅多に使わない操作くらいにね。
680仕様書無しさん:2007/12/30(日) 19:51:17
>>677
すまんが、何が問題なのか分からん。
普通にやればいいじゃん。
681仕様書無しさん:2007/12/30(日) 19:56:32
>>680 どうも、皆自分が思ってる「普通」は違うというか、チャタ判定並みに幅があるようだね。
682仕様書無しさん:2007/12/30(日) 20:01:36
>>677 メインループで読まないって、割り込みでって事?

それは普通だな。 もちろんLEDとかのダイナミックスキャンしながら
それにくっついたキーマトリクスを読む部分は割り込み内でやって、
キーコードを作ったりチャタリング取ったりする部分はメインでやるって事だよね?
683仕様書無しさん:2007/12/30(日) 20:30:07
>>677
長押し判定の方法を知りたいの?
ON状態が一定時間続いたら長押し成立。それだけじゃね?
684仕様書無しさん:2007/12/30(日) 21:41:17
年の瀬なのに バカばっかり集まって w
685仕様書無しさん:2007/12/30(日) 21:44:12
>>678
ごめんそれって反論になってないことない?
686仕様書無しさん:2007/12/30(日) 22:09:12
このスレの連中とは一緒に仕事したくないぉ。
スイッチ入力の処理だけで数日かかりそうだぉ。
687仕様書無しさん:2007/12/30(日) 22:41:17
キーの処理ってまじめにやると結構ボリュームあるんだよ。
バリエーションもたくさんあるし。
688仕様書無しさん:2007/12/30(日) 22:45:51
>>679
だから二度読みなんぞには何の意味もないと何度言えば。。
689仕様書無しさん:2007/12/30(日) 22:49:47
二度読みに意味が無いなら三度読みすればいいじゃない
690仕様書無しさん:2007/12/30(日) 22:49:57
>>688
何回ならいいの?
691仕様書無しさん:2007/12/30(日) 22:56:28
>>690
だから特殊な前提が成立する状況下でない限り、N回読んで〜なんて方法自体が無効。
回数の問題じゃない。
692仕様書無しさん:2007/12/30(日) 22:58:24
>>691
じゃあどうすればいいの?
チャタは取れないの?
693仕様書無しさん:2007/12/30(日) 23:02:38
>>692
同じ話を繰り返すつもりはない。
694仕様書無しさん:2007/12/30(日) 23:11:01
一定間隔でN回読んでN回とも 保持してる状態と反転しているなら
保持している状態を反転したと判定する というのを延々とやれば
いいってことだね
695仕様書無しさん:2007/12/30(日) 23:15:52
すべてのスイッチにはローパスフィルタとシュミットトリガを入れる
もうこれでいいでしょ?
696仕様書無しさん:2007/12/30(日) 23:16:58
ソフトでやれば量産コストが下がるから
なるべくソフトでやろうよ
697仕様書無しさん:2007/12/31(月) 00:34:15
【チャタ】組み込みプログラマーってアホ!その7【何回?】
698仕様書無しさん:2007/12/31(月) 01:10:09
あほか、キーセンス処理なんて、一定間隔で読んでりゃいいだけだろ。
チャタが発生するのは、ON/OFF切り替えの数マイクロセコンドだけ。
安定してる時には関係ないしな。
699閻魔:2007/12/31(月) 01:33:55
>>697
いや、少なくとも論理回路を理解し、AD、DCモータの原理くらいはわかっていて、半田ごてでLEDを光らせることができるんだから。アホではないぞ。。。。w
700仕様書無しさん:2007/12/31(月) 02:31:55
で、何この糞コテ
701仕様書無しさん:2007/12/31(月) 05:29:29
LEDって暖めたら光るの?
702仕様書無しさん:2007/12/31(月) 06:50:15
>>696
お前らに任せたらいつまでたっても完成しなくて商機を逸するから
少々のコストがどうでもいいくらいの損失が出る
703仕様書無しさん:2007/12/31(月) 08:52:12
たまに漏電してる半田ごてあるから。かな?
704仕様書無しさん:2007/12/31(月) 09:28:32
>>698
最近のメンブレンなどならチャタリング時間は10ms以下と規定されてたりするからソレでも最初は大丈夫。
でも古くなってくると接触不良の影響が出てくるよ。
人は押し続けてるつもりでも、押してる時の力が変化するから
その時の動きで信号にヒゲが入る。

また、リレーやプラントなんかで使われるようなスイッチのチャタリングは非常に長い。
長いといっても常に長いわけじゃない。酷いのになると100msもたってからヒゲが入ってくるから厄介

という事で、素直に2度読みを入れなさい。
705仕様書無しさん:2007/12/31(月) 11:05:17
チャタチャタうるさいけどさ、普通の制御の場合、チャタリングの時間がどれくらいかをモニタする必要はないんだよね。
要はユーザーがONにしようとしているのかOFFにしようとしているのか分かればいいんだよ。

だから、チャタリングが1000msあろうが、100000msあろうが
OFF→チャタ→ON→チャタの遷移さえ把握してればそれでOK

お前らいい加減本題を見失った議論はやめろよ
706仕様書無しさん:2007/12/31(月) 11:27:23
をいw、100000msだったらOFF→ON→OFFが認識できない可能性大きいだろーがw。
707仕様書無しさん:2007/12/31(月) 11:41:56
>>706
それでも認識できるソフトを組むにはどうすれば?って話だろ
708仕様書無しさん:2007/12/31(月) 11:45:55
>>705,>>707
なんかおめでたいなw
そんなものを「把握」する一般的な方法なんかない。
あるというなら是非紹介してよ。
709仕様書無しさん:2007/12/31(月) 11:54:07
だからさ、チャタリングが一定時間で終わる事が確実なら>>698は理論的には正しい。
ソコは認める。 確かに理屈は正しいんだよ。

でもさ、世の中理屈通りにはゆかないもの。
その理屈通りでない場合でも
”2度読不一致読捨” が入っているだけで、ほーら安全側。

ソレをチャタリング処理という名前だから気に入らないというのは判るけど
この処理はもともとは昔のスイッチの酷いチャタリングに対応するためのものだったから仕方ないさ。
710仕様書無しさん:2007/12/31(月) 12:01:07
うーん倒錯してるな。。

だから「二度読んで一致しなければ捨てる」なんて方法が有効なのは
極特殊な前提が成立している場合のみであって、世界はそんな理屈どおりには出来てないんだよ。
711仕様書無しさん:2007/12/31(月) 12:01:54
>>705 チャタリングが1000msってドラみたいに巨大な共鳴器でもついてるのか?
712仕様書無しさん:2007/12/31(月) 12:13:45
>>710
”2度読不一致読捨”が成立する条件は
 ・サンプリング間隔より短いエラー信号が、サンプリングあたり確率pで発生する

この場合、除去出来ない確率は p^2

この条件にあたるようなエラー信号は
 1、チャタリングのリバウンド
 2、ボタンを押し続けた時の擦動ノイズ
 3、人体からの火花放電やモータ類からのスパイクノイズ

pが1/1万 という非常に頻繁なノイズ(工場で火花放電が起きてる状態)では
これを入れてないと1分に1回勝手にボタンが押された事になりますが、
入れていれば2年に1度しか入力されません。

一方対応出来ないエラー信号は
 1、故障
 2、上記で pが非常に大きい場合
 3、サンプリング間隔の2倍以上のエラー信号
 であり、これらで誤動作したとしてもプログラマの責任が問われる事はありません。
713仕様書無しさん:2007/12/31(月) 12:16:59
ONさせたいスイッチなのか、
ONさせたくないスイッチなのか、
それが問題だ。
714仕様書無しさん:2007/12/31(月) 12:29:13
チャタ(・∀・∀・)リング
715仕様書無しさん:2007/12/31(月) 12:35:56
>>712
>サンプリング間隔より短いエラー信号が、サンプリングあたり確率pで発生する
だからこんな前提がありえないって。
世界はそんな風にできてないの。
716仕様書無しさん:2007/12/31(月) 12:51:53
チャタ(・∀・∀・)∀・)∀・)∀・)∀・)・))タタタタタタタタ
717仕様書無しさん:2007/12/31(月) 13:10:20
>>715 貴方に取って困った事に、世界はそんな風に出来ているのです。

どう詭弁を弄しても、
何度言い張っても、
世界がそう出来ている以上、ご自分の間違いを認めなければ他人にバカにされるだけ。
バカにされる程度ならいいけど、その理屈で物を作れば他人に迷惑を及ぼします。

エラー信号がサンプリング間隔より長いなら、それはサンプリング間隔の設定が間違いかハードウエアにミスがあるのです。 
サンプリング時間を 10ms〜30ms (10msは少し危険ですが20ms以上)におけば、
10ms以上も長いエラー信号は、
1・ 結露等による電気的なショート
2・ 長い配線にACからの電磁誘導
3・ インピータンスが高すぎる
4・ ハード的な設計ミス
こういう場合になります。
これらは入力ポートに普段は出力としておくというようなソフトウエアからの対策も可能ですがハード的な問題ですので
これで誤動作してもハード設計者が責められても、プログラマが責められる事はないでしょう。

718705:2007/12/31(月) 13:12:02
1000msが突っ込まれるとは思わんかった

1000とか10000とか書いたのはお前らのことだから
メンブレンは10msって誰かが言ったら
いや、メカニカルリレーは100msだ  ←いまここ
いや、漏電遮断器は・・・・
いは、変電所の切替器は・・・・
とどうせエスカレートして行くに決まってるから
そういうくだらねぇことで場をかき回してるんじゃねぇよという意味で書いただけだ
719仕様書無しさん:2007/12/31(月) 13:24:38
>>718 ソレは順番が違うだろ

・ チャタリングには100msもしてからリバウンドしてヒゲが出る場合がある
  それは振動があるから

  ↓

・ メンブレンは振動する構造じゃないから10ms以内だ
  でも接触点への力の加減で押し続けてもヒゲが出る場合がある

  ↓

・ 世の中そんな風に出来て無い <--- いまここ
720仕様書無しさん:2007/12/31(月) 13:29:36
世の中どんな風に出来てるんだろうw
721仕様書無しさん:2007/12/31(月) 13:47:46
もちろん”2度読不一致読捨”をしてはいけない場面もあります。

たとえばグレイコードとか2相エンコーダはそのままの値を採用

ロータリ式のデジスイッチなんかは変更途中の値を採用しないように
”2度読不一致読捨”ではダメで"多数回一致採用"が必要です。

さらに、グレイコードでない多値ポジションセンサーは設計ミスですから
プログラミングにかかる前にハード設計にダメだししなくちゃいけません。
722仕様書無しさん:2007/12/31(月) 13:55:57
オマエラ、この御方の御創りになられた目覚まし時計見習えよ。

http://page13.auctions.yahoo.co.jp/jp/auction/r41346357

マイクロスイッチ使えばチャタリング帽子回路もソフトによる大作も扶養って書いてるだろ。
そして人間工学に基づいた解り易い操作性!
これくらいのものを組んでから組込みプログラマーを名乗ってくらさい。
では良いお年を。
723仕様書無しさん:2007/12/31(月) 14:22:01
マイクロスイッチを使わなければチャタ取りが必要ってことだな。
趣味で時計作る程度なら誤動作しても人が死ぬわけじゃないし、好きに作ればいいんじゃね。
724仕様書無しさん:2007/12/31(月) 14:26:37
その回路、ポートを弱いプルアップもしてないんだろな
マイクロスイッチの切り替え時間は20ms〜60ms この間ポートがオープンになって浮遊容量でラッチしてる状態。

だからチャタリング取りが不要になってるんだろう。
逆にプルアップとかするからバウンスが問題になるって・・・理屈は理屈だが・・・・
725仕様書無しさん:2007/12/31(月) 14:56:01
チャタ取りでこれだけ盛り上がるのは
正直、異様w
726仕様書無しさん:2007/12/31(月) 15:18:47
>>717
ヒゲみたいなものを否定しているのではなく、
一様な確率pで発生するかどうかが疑問なのでは。
跳ね返りで発生しているなら、ある周期性を持ちそうなので
適当なサンプリング間隔だとエラーを拾いそう。

2度読みとか言う根拠不明ないい加減な手法より、
スイッチやアプリケーションの特性に基づいた方法を採った方が良いのでは。
(故障モードをハードウエア設計者と打ち合わせないのは考えられない)
727仕様書無しさん:2007/12/31(月) 15:26:31
チャタリングの場合、バウンスの本体はともかく、時間を置いて出るリバウンドは短いヒゲなので
2度のサンプリングで2度ともヒゲを捕らえる確率は、たとえ周期が殆ど一致していても滅多にありませんよ?
728仕様書無しさん:2007/12/31(月) 15:36:00
それなら、サンプリング間隔をさらに開ければヒゲを1度とらえても問題ないんだよね。
2度とらえることは無いんだから。
729仕様書無しさん:2007/12/31(月) 15:44:34
周期性があるなら、その周期を避けてサンプリングすればいいじゃない。
あと、高い信頼性を要求されるシステムでは10度読みくらいするものもある。
730仕様書無しさん:2007/12/31(月) 15:48:40
まあ、産業機械とかコストかけられるものだったら、ぐだぐだ言わないで済むように
キーは割り込みで取れるような外付けCPLDなり4ビットマイコンなりつけるものだけどさ。

石でも割り込みのエッジで取れるものがあるだろ、ハードチャタトリ付で。
わざわざついてるのに使わないばかちんもいるけどね。
731仕様書無しさん:2007/12/31(月) 16:09:02
>>728 あなた一人で頑張ってるみたいだけどさ


~~~~~|||||||||________________________________|__________|________

↑    ↑    ↑    ↑    ↑    ↑   
0     1     2     3     4     5
H    X     L     L     X    X

ここで 3と4の両方でヒゲを捕らえてしまうと 2度ボタンを押した事になってしまうって問題を持ち出したわけだろ?

このヒゲがあっても問題ないサンプリング時間は
   |<------------------------------->|
これより長い時間にしなければならない。 つまり、極端に応答の悪いシステムになってしまうだろうに。

>>729 バウンス中は周期はあるかもしれないが、その後のリバウンドは周期なんてないよ。
  周期があることにしたいのは一人だけ。

>>730 ボタン入力割り込みの信頼性は今ひとつの場合が多いので注意が必要だね。
732仕様書無しさん:2007/12/31(月) 17:23:26
SWのチャタは押したときより、離したとき...
733仕様書無しさん:2007/12/31(月) 18:33:20
@押してないキー(スイッチ)がノイズ、振動等で勝手に入るのを防ぐ
Aキー(スイッチ)をonする最中のチャタリングで2回目が入るのを防ぐ
Bキー(スイッチ)をoffする最中のチャタリングで2回目が入るのを防ぐ
上記3種の対応は別々な訳だが、これらが混同されとるから話が混乱するんじゃろう
あと波形は普通回路の抵抗容量でなまるから、通常の民生機器で小さなヒゲの対策をソフトで考えずとも良いはずじゃ


734仕様書無しさん:2007/12/31(月) 18:45:41
”2度読不一致読捨”は、その3つに対応出来ますね。

小さなヒゲは CRが入ってるからOKかというと、鈍って、短いパルスが長いパルスになってしまい
逆に”2度読不一致読捨”で対応出来ない事になってしまいかねないので
CRで対応するならシュミットトリガ回路と組み合わせないといけない。

だから>>640に書いたように普段インピータンスを下げるような工夫と2度読みを組み合わせた方が状態が良いかもね。

さらに、
CPU--R1--C--R2---in
        |
       ////
とR-C-Rにして、入出力の切り替えて、その時間をコントロールする事でシュミット特性を出すなんて方法もある。
735仕様書無しさん:2007/12/31(月) 19:04:35
>>734 二度読み不一致読み捨て について説明してもらえないかね。
単独のビット、定周期過去四回の組み合わせ
[0001] [0010] [0011] [0100] [0101] [0110] [0111] [1000]
[1001] [1010] [1011] [1100] [1101] [1110] [1111] [0000]
を、どう判定するのか簡単に説明してみてほしい。

よろしく。




736仕様書無しさん:2007/12/31(月) 19:12:29
>>735 >>646のコードが読めないの?

確定値、前回値 という2つのメモリ上の値と、入力の今回値 これはレジスタ

1、if 前回値!=現在値 なら 前回値=今回値にして終わり
2、if 確定値==現在値 なら終わり
3、確定値を反転させる。 結果がオンならオンエッジの処理

だから 11 か00 の時に結果が 1 と 0に確定する。それ以外の時は 確定値はそのまま。
737仕様書無しさん:2007/12/31(月) 19:20:48
じゃあ、上のコードに上のデータをテストケースにしていれて実行して、結果を載せてくれないか。
今俺はコンパイラ動く環境が無いんでね。

きちんと入力をトレースできる形で、できれば頼むわ。
738仕様書無しさん:2007/12/31(月) 19:33:02
やっぱり掲示板の文字ベースのやり取りでもこうなるんだよね。

二度読み不一致なんたら〜なんて処理にはほとんどの場合何の意味もないことなんか
ちょっと考えれば中学生でも分かると思うんだけど、分からない人には何度説明しても
理解しないよね不思議と。

あ、もちろんメイク後一発だけ出るごく短時間の「ヒゲ」をフィルタするのに有効なのは認める。
(そういう現象が実際あるのかどうか俺はよく知らないけど、もし実在するのであれば)
739仕様書無しさん:2007/12/31(月) 19:58:36
やっぱりこんな簡単なコードも読めないんだよね。

有効と認めるなら、なんで採用しないの? この方式は特許があったとしても切れてるよ。
そこまで否定して、
負荷といえるほどの負荷にもならない
この簡単なコードを採用しない理由は何? 理解出来ないから?

そういうヒゲが実在するかどうかは古くなった機械からスイッチでもリレーでも外して
オシロで波形みれば簡単にわかる事。
740仕様書無しさん:2007/12/31(月) 20:02:46
>>739 >>737だけど、俺はやはりお宅ご推奨の例のコードは使わないと思うよ。
ただ、ほかの人はどうとるかわからないし、気がついていないこともあるだろうから、事象のトレースをお願いしただけ。
確かに、自分がとるべき事象変化を検出するなら
まず 電気的機械的な仕様を調べて、あるべき波形の乱れを想定し
次に 実機で波形やデータを取って、想定が正しいか確認し
必要なプログラムを組めということだね。

いや勉強になった。
741仕様書無しさん:2007/12/31(月) 20:05:11
それに追加すると、ソレが出来ないヒヨッ子なら、素直に定石には従う事だね。
742仕様書無しさん:2007/12/31(月) 20:06:46
うん、だからその「ヒゲ」に限定すれば確かに有効な方法であるから、
実際そういう現象に遭遇したら迷わず採用するとは思うよ。

ただ、「二度読み不一致〜」にそれ以上の効力があると思ってる人がいるから
それを否定してるだけだよ。
おいおい君が銀の弾丸だと思ってるものはただのBB弾だぜって。
743仕様書無しさん:2007/12/31(月) 20:11:21
>>738  殆どの場合何も意味が無くとも、異常な時には威力を発揮する。
だから、みんなこれに似たコードを使ってるんだよ。 ^ を使うかどうかは別にしてさ。
744仕様書無しさん:2007/12/31(月) 20:12:13
>>723さん

自分も今 H8(3052F)を使ったロボットを作っているのですが マイクロスイッチのチャタリングで困っています。
ブルアップをして(1kΩ)ポートにつないでいるのですが うまく動きません..

どうやってチャタは防いだらいいんでしょうか?
745仕様書無しさん:2007/12/31(月) 20:15:04
>>742
だから、キミの言いたい事は判るんだって。
確かに、この処理は厳密にはチャタリング取りではない。
なのに、皆んなチャタリング取りというコメントをワザワザ書いて、この手の処理を入れている。
確かに名前と中身と目的は現在は一致してない。

でもさ、皆がそうしてるんだから、この処理の名前はチャタリング取りなんだよ。

そんな名前のつき方は、他にだって一杯あるだろ?
746仕様書無しさん:2007/12/31(月) 20:21:33
>>744
このスレでは2通りの派閥が存在します

1、バウンス期間より長い周期でサンプリングすればチャタリングなど無関係
2、>>736 の手順で処理する派閥

どちらのご説明をご希望ですか?
747仕様書無しさん:2007/12/31(月) 20:27:12
>>744
足が3つあるタイプ? なら

                 5V
                 |
CPU-----+------R-----SW
        |          |
       === C      ///
        |
       ///

と、3つの足を使うと、チャタリングは出ないよ。
Rは接点に流せる電流に応じて小さい値がいい。 判らないなら100Ωを使っておけば大丈夫
748仕様書無しさん:2007/12/31(月) 20:28:32
>>743
だからさあ、繰り返しになっちゃうけど異常な時に効力なんて発揮しないって。

ちょっと考えれば分かると思うけど、スイッチならスイッチの異常状態の時の出力っていうのは
自己相関性(って言うんだっけ?)があるから確率モデルで考えるのは間違ってるよ。

例えばある時刻tのスイッチの出力というのは完全にランダムなはずがなく、
(t - dt)におけるスイッチの出力と無関係ではない。

仮に無理を承知で確率モデルを当てはめるとしても、
スイッチが嘘の情報を吐く確率pが十分に小さい保障はなにもない。
p=1/2なら二乗したってP = 0.25だよ。
749仕様書無しさん:2007/12/31(月) 20:31:48
チョッ・・・・・p=1/2ってのは完全に壊れた状態じゃないか。 それは2度読みしてもp=1/2だよ。
p^2 で近似出来るのは pが小さい時だけさ
750仕様書無しさん:2007/12/31(月) 20:34:07
>>731
極端に応答性が悪いって、必要な応答性はどれくらいなんだよ。
751仕様書無しさん:2007/12/31(月) 20:41:39
スイッチの波形を、積分すると考えると変化検出のアルゴリズムって書けないか?
752仕様書無しさん:2007/12/31(月) 20:42:11
>>747
判らないならって…。それなら修正し易い分だけ2度読みの方がマシだよ。

CRでLPF作ってるんだから、信号の周波数を通すように計算しないと。
必要な応答性はどれくらいなんだよ。
753仕様書無しさん:2007/12/31(月) 20:43:54
>>748
 ランダムウォーク型で、バースト的にやってくるって言いたいの?
でもさ、そういう状態はどういう事で起きる?
たとえばスイッチが古くなっていたりさ、
結露によるショートとかさ、それで誤動作したって納得してくれる状況でしょ?

原因が判らない短時間やって来るような現象で誤動作しなければいいんだよ。

押してないのに、勝手に電源が入ってた。 分解してみたけど原因が判らない。
こういう状態の頻度を下げてくれるから、効力を発揮するというのよ。
754747:2007/12/31(月) 20:46:54
あごめん。
Cの値は 103 程度でいい。
マイクロスイッチ接点が両方オフの期間は10ms〜40ms程度。
この期間、保持すればいいんで
755仕様書無しさん:2007/12/31(月) 20:57:47
じゃあ、静電気、インパルス、ファーストトランジェントなどのノイズって何で起こるんだっけ。
スイッチ周りに影響なかったっけ。
756仕様書無しさん:2007/12/31(月) 21:10:37
そりゃ、ノイズ源によっては有効なものもあるし効かないものもある。

静電気放電: 
電気的ファーストトランジェント:
 誤信号は短いパルスでやってくる=2度読みが有効

 これは電圧があるので、C-Rが入っていると逆に時間幅が長くなり2度読みで吸収出来なくなったりするんで
 CR入れるなら電圧クリップしてから入れないと薮蛇。

無線干渉: バーストでやってくる。 2度読みは効かない。
 上記の電圧クリップの為の保護ダイオードが検波回路を構成してしまうので、その手前にもCRが必要


結局、下手に回路入れて万能的にやろうとするとCR-D-CR-シュミットトリガとテンコ盛り。

抵抗1本を直列に入れて、入力ポートを普段出力にするというのが一番低コストな対策。

757仕様書無しさん:2007/12/31(月) 21:17:43
>>753
>原因が判らない短時間やって来るような現象
だからそれには効果がないんじゃないでしょうか。

原因が分からないんでしょ?
そういう状況下では、偽を掴まされる確率pが小さい保証はないよ。
というより、pがむしろ十分大きい蓋然性が高いんじゃないでしょうか。
もしそんなことが本当におこる状況であれば。
758仕様書無しさん:2007/12/31(月) 21:28:39
>>757
pが大きいか小さいかは分からないよね。

pが小さい場合は効果がある。
で、pが大きい場合は効果は無いかもしれないが、もっと良い方法ある?
759仕様書無しさん:2007/12/31(月) 21:30:23
惚れ惚れするほどの粘着気質に、もう酔ってしまいそうだ。

>>757
原因が無いのにやってくるノイズは、さすがに幽霊が操作してるわけじゃないので、
電磁的な何かの原因があるわけです。

で、2度読みで取れない程、バースト的にやってくるなら、自分だけが被害を受けるわけがなく
他の装置も一斉に被害を受けるわけです。
中には、まともに2度読みさえ入ってない装置もあるのはご自分がご承知の通りですから
他の装置が必ず被害を受けます。 ですからそれで誤動作しても問題ありません。
それどころか、殆ど問題なく使えたと評価を貰えますよ。
760仕様書無しさん:2007/12/31(月) 21:44:41
>>747さん
ありがとうございます。

CPU―Rの間にあるCは コンデンサですか? 電解?
どれくらいのを挟めばいいですかね?

つまり
スイッチ→GND で1つの足
スイッチ→5V で1つの足
スイッチ→R(100Ω?)→H8のポート
H8ポート〜抵抗間に コンデンサ(電解? セラミック?) をかませて→GND

でいいのでしょうか?
761747:2007/12/31(月) 21:55:03
>>760
抵抗に100Ωするなら
電解を入れるなら4.7uF以下。
>>754 に書いた通り 10E3 つまり0.01uF で十分です。

このコンデンサは時定数を作ってるのではなく、マイクロスイッチの接点が両方オフの間の
電圧保持が目的です。 

インピータンスは非常に高いので103でも十分なのです。
抵抗100Ωは接点に電流を流し過ぎない為の保護です。

プルアップ抵抗を入れると、チャタリング波形を観測する事になりますが
こういう構成にすればチャタリングは発生しません。
762仕様書無しさん:2007/12/31(月) 21:57:24
では、抵抗とスイッチをマトリクスに組んだり、それをADで読ませたりする場合はどうなるのかな。
教えて先生。
763仕様書無しさん:2007/12/31(月) 22:04:12
>>759
君の議論は「結論の先取り」。

「2度読みで取れない程」なんて書いているとおり、君は二度読みに効果があると
思い込んでおりそれを自明の前提として議論を進めているが、
なんども書くとおりそんなことはあり得ない。
764仕様書無しさん:2007/12/31(月) 22:05:59
つまり言いたいことは、そもそも読んだ値が信頼できないような状況なら
何度読んで一致を取ろうと同じこと。

なんでこんなことが分からないのかな。。
765仕様書無しさん:2007/12/31(月) 22:10:59
>>762
 マトリクスやスイッチ+抵抗をAD値なら >>736 の通り

1、if 前回値!=現在値 なら 前回値=今回値にして終わり
 ・・・・必要ならここで、複数回数える処理を入れる・・・・
2、if 確定値==現在値 なら終わり
3、確定値に現在値を反映させる。 確定値を変更する時に処理する事があれば処理する。

ロータリ式のデジスイッチなんかは安定するのを100msくらい待つ場合もあるよ
766仕様書無しさん:2007/12/31(月) 22:18:12
>>764
>そもそも読んだ値が信頼できないような状況なら 何度読んで一致を取ろうと同じこと。


だからさ、
何度読んでも正しくない状態というのは、それは壊れているんだよ。
それで正しい結果が得られるなんてのは誰も思ってない。

静電気を帯びた人間がパチンと火花を飛ばしたくらいで誤動作しない事
隣でリレーがカチっと動いただけで勝手に動いたりしない事

そういう当たり前の効果を期待してるし、期待には十分こたえてくれるって事さ。
767仕様書無しさん:2007/12/31(月) 22:21:21
人の押せるボタンの連打速度は秒間20回も無い。
それが答えだ。
768仕様書無しさん:2007/12/31(月) 22:26:13
高橋名人でも秒間16回だからな。
で?それが何か?
769仕様書無しさん:2007/12/31(月) 22:26:13
つまり25msサンプリングで2度見するのが最善ってのがお答えですか?
770仕様書無しさん:2007/12/31(月) 22:29:59
だから普通はチャタをキャンセルするには馬鹿みたいにゆったり間隔(たとえば20Hz)
でスキャンすれば事足りることで、二度読みとかってアホか、ってことでしょ。
771仕様書無しさん:2007/12/31(月) 22:33:39
>>761さん

103のコンデンサは セラミックコンデンサですよね? 確か水色の

これは ノイズを防ぐ為のものですかね?
772仕様書無しさん:2007/12/31(月) 22:35:01
だから2度読みは、現在はチャタリングキャンセルの為にやってるんじゃないんだって
チャタリングキャンセルという名前で通ってるからそう読んでるだけ。

大昔のチャタリングの100msもあったボタンでも実用的な応答をさせたいというような目的での
チャタリングキャンセル処理が、今ではノイズ対策をメインに入ってるわけ。
773仕様書無しさん:2007/12/31(月) 22:38:58
>>770
タイムラグ50msって用途によっては致命的に遅いんじゃね?
774747:2007/12/31(月) 22:46:07
>>771
ええとね。 マイクロスイッチの中には スイッチが2つ入ってるのです。

   A        B
。____/_____。______/_____。
 

Aが普段オンで、Bは普段オフ、 押されるとAが離れて、Bがオンになります。
で、AとBは両方オンにはならず変化する時に両方がオフになります。
この両方オフの時の電圧を保つ働きをさせるのがコンデンサです。
>>722 の人は これを省略して浮遊容量を使っています。
がソレは結露とかの影響を受けやすいので、Cを入れるというだけの事です。

スイッチは離れる時にも振動するし オンする時にも振動します。
が、振動しても、影響を受けません。


昔のジョイステックはコンデンサとVRを直列にしてCR時定数の変化を測定していましたが
これは接触抵抗の変化を非常に受けてしまう回路です。
>>747のSWをVRに置き換えて、CPUのADCポートで受けるとガリの影響を減らせます。
それも同じ原理です。
775仕様書無しさん:2007/12/31(月) 22:55:03
>>770
人間は確かに1秒に20回もボタンは押せないけど
時間分解能がソレだけしかないわけじゃない。
20Hzサンプルで、応答が速いときと遅い時のバラツキを感じるくらいの能力はある。
それは品質の悪さとして感じられる。
実際、テレビゲームのアクションゲームなんて成立しなくなる。

40Hzサンプルにして2度見すればだいぶ改善するよ。
776747:2007/12/31(月) 23:05:36
>>771
あと、水色のは たぶん0.1uF (104って書いてあると思う)
値はソレで問題ないですよ。 時定数は10E4/1E12*100Ω で 10u秒 全然問題ないです
777仕様書無しさん:2008/01/01(火) 02:23:24
>>776さん
ありがとうございます。
778仕様書無しさん:2008/01/01(火) 10:09:59
て事は、スイッチは全部3端子にすればチャタリングそのものが起きないってことか?
779仕様書無しさん:2008/01/01(火) 13:16:24
1秒に16回なら押せる
780仕様書無しさん:2008/01/01(火) 13:39:42
ゲームって、NTSCの垂直同期を割り込みの基準にしてなかったっけ?
781仕様書無しさん:2008/01/01(火) 13:59:36
>>780
そうだよ
だからどんなにがんばっても秒間15回しかON/OFFできないんだよ
782仕様書無しさん:2008/01/01(火) 14:10:15
>>776さん

すいません度々...

マイクロスイッチの足につなぐ順番は スイッチの端の足から
SW→5V
SW→R→H8
SW→GND

でいいのでしょうか?
783仕様書無しさん:2008/01/01(火) 14:13:55
ゲームのプログラムなんて書いたことないけど、
普通に考えればそんなはずはないでしょw

まず割り込みの「基準」っていうのがなんのことか分からないが、
画面の更新ならともかく、入力のスキャンをフレームレートに同期する意味がない。
784仕様書無しさん:2008/01/01(火) 14:17:22
>>783
操作も画面に同期するの。
全ての動きがフレームに同期して。
785仕様書無しさん:2008/01/01(火) 14:24:13
>>781
高橋名人の16連射は嘘だったのか!
786仕様書無しさん:2008/01/01(火) 14:25:33
なぜ何のために?w
エンジニアの端くれならそのぐらい自分の頭でゼロベースから考えなきゃ。

それにまあ、今日のCPUでは心配しなくていいはずのこととは思うが、
同一の時間基準に同期して複数の処理を行うというのはCPUパワーの配分として下策でしょ。
787仕様書無しさん:2008/01/01(火) 14:33:34
昔はタイマーがそれしかなかった。
788仕様書無しさん:2008/01/01(火) 15:28:40
>>786
画面に同期はファミコン時代のマが「俺はこんなことも知ってるけどお前ら知らないんだ。馬鹿じゃん?」と
ファミコン時代のテクノロジーを自慢してるだけだからほっといていいよ
789仕様書無しさん:2008/01/01(火) 15:42:18
PSとか、ドリキャスぐらいまではそうだよ?
790仕様書無しさん:2008/01/01(火) 15:44:57
16連射はファミコン時代だよ
791仕様書無しさん:2008/01/01(火) 17:36:32
>>789
あー、そりゃ失礼
ゲームプログラマ以外には何の関係もないってのは何一つ変わってないけどね
792仕様書無しさん:2008/01/01(火) 18:07:48
ファミコンのジョイパッドに連射を組み込んで喜んでた経験だと
1秒に60サンプルするのが多かった
連射は30連射まで可能なものと15連射までのものと2種類あった
60サンプルで15連射までという事は2度読み不一致が入ってたのだろう。
793仕様書無しさん:2008/01/01(火) 18:33:11
あの連射って、タイマ組み込んでパルス出すってのじゃなかったっけか。
794仕様書無しさん:2008/01/01(火) 18:37:25
ジョイパッドの中身は単なるシフトレジスタでストローブ信号に同期して反転させれば最高速の筈と思ったら
それでは認識しないのもあった。 カウンタで1/2にしないとダメなのがあったよ。
795仕様書無しさん:2008/01/01(火) 18:50:27
>>782
どのマイクロスイッチか判らんのと、どういう論理で使いたいのか判らんので
スイッチオンでL という使い方なら

COM---R-H8
NO---GND
NC---5V

スイッチオンでHなら NC/NOを逆にする。

端子の順番はマイクロスイッチによって違うかもしれないが
COM-NO-NCとなってるものが多いように思う。
http://www.compoclub.com/products/knowledge/micro/microsw2.html
マークを確認するか、テスターで測定する事。

テスターで常に導通があるのが COM-NC オンして 導通があるのが COM-NO
796仕様書無しさん:2008/01/01(火) 19:52:57
>>794
それはチャタ除去とかではなく単純に
内部動作が1/30だっただけだと思う。
797仕様書無しさん:2008/01/01(火) 19:54:12
わざわざシフトレジスタを動かして読んでるのに、捨ててるってか?
それこそありえんだろ
798仕様書無しさん:2008/01/02(水) 00:08:02
>>795さん

わざわざありがとうございますm(_ _)m
799仕様書無しさん:2008/01/02(水) 15:58:19
組み込みはホント難しいよね。
あんなのできるなんてマジ神だわ。尊敬する。
これからもお仕事頑張ってください。
800仕様書無しさん:2008/01/02(水) 23:28:57
>>799

そうか?
801仕様書無しさん:2008/01/02(水) 23:41:38
組み込みって言ってもいろいろあるからなぁ
OSが乗ってたりすると他と大して変わらんかと
オシロでデバッグするのはもう嫌だお
802仕様書無しさん:2008/01/02(水) 23:53:51
俺はオシロ好きだな
803仕様書無しさん:2008/01/03(木) 00:28:08
804仕様書無しさん:2008/01/03(木) 09:31:28
オイラのところはシンクロって呼んでる。
805仕様書無しさん:2008/01/03(木) 11:42:53
コピー機をゼロックスと呼ぶような感じか
806仕様書無しさん:2008/01/03(木) 18:51:36
シュウォッチの発売が延期したのは、おまいらのせいか
807仕様書無しさん:2008/01/03(木) 19:09:48
オシロスコープとシンクロスコープって狭義で厳密には微妙に違う物を指すんだっけ?

シュウォッチがこのスレのせいで出なくなったってことはないだろうなぁw
808仕様書無しさん:2008/01/03(木) 19:41:28
オシロ:一般名
シンクロ:商品名

ホチキスとステープラ、コピーとゼロックス、無限軌道機とキャタピラー
の関係。
809仕様書無しさん:2008/01/04(金) 00:36:10
え? じゃあ、キャタピラは英語でなんて言うの?
810仕様書無しさん:2008/01/04(金) 02:05:30
クローラーだっけ? 一般名詞は
そもそも芋虫だし。
811仕様書無しさん:2008/01/04(金) 02:06:00
履帯ともいうなそういえば。
812仕様書無しさん:2008/01/04(金) 08:11:57
キャタピラの一般名は
日本語なら、履帯、英語ならクローラー
813仕様書無しさん:2008/01/04(金) 08:18:58
無限軌道ってのは聞いた事があるが、クローラーだの履帯だのは聞いた事が無い。
今後も聞かないでいい事を希望しよう。
814仕様書無しさん:2008/01/04(金) 09:30:00
戦車の組み込みとかやってる人いるかな。
きっと世の中には居るんだよな。

とかさりげなく話を戻す。

815仕様書無しさん:2008/01/04(金) 10:39:58
戦車他では履帯、建機では無限軌道と言うほうが多いか?
816仕様書無しさん:2008/01/04(金) 15:13:59
トマホークに組み込んでるソースが見たい
817仕様書無しさん:2008/01/04(金) 17:15:26
トマホークって1980年代に試写だから20年以上前だろ?
C言語の公開が1978代だから高級言語が使われてたとしたらFORTRANかPL/IかPASCALか

案外アセンブラかもな。
818仕様書無しさん:2008/01/04(金) 19:16:15
>>814
戦車の組み込み開発をやる寸前までいったことがある。
諸事情で結局やらなかったけど。
819仕様書無しさん:2008/01/04(金) 19:28:28
ヘリのCRTモニタ上の計器プログラムなら会社でやってた人が居た。
OSはトロン系、CPUはNECのVシリーズ(多分)、言語はCだったと思う。
820仕様書無しさん:2008/01/04(金) 20:34:47
潜水艦の聴音シミュレータって話だけはやったぞ。
自衛隊の人って人種違うんだなってオモタ。
821仕様書無しさん:2008/01/04(金) 20:47:19
弾丸なら作ってたことあったけど・・・
822仕様書無しさん:2008/01/04(金) 23:28:57
テストが大変そうだな
823仕様書無しさん:2008/01/05(土) 13:02:04
皆さん 仕事で使う言語は ほとんどがC++が多いんですかね?

CとC++は必須?
824仕様書無しさん:2008/01/05(土) 13:12:16
人それぞれだろ。 

俺の場合、16bit以上はCだけど、4ビットから8ビットから色んなCPUやDSPに手を出してくれるもんだから
アセンブラが多い。
でも時間的にはDelphiを触ってる時間が一番長いかもしれない。
そのアセンブラを自作したり、ツールを作ったりの時間が一番長かったりする。
825仕様書無しさん:2008/01/05(土) 13:12:17
>>823
ま、事実上Cは公用語となってるな。それにC++が使えればほぼ全ての仕事で有利
826仕様書無しさん:2008/01/05(土) 13:13:22
Cは必須だな。 共用語のようなもの。
827仕様書無しさん:2008/01/05(土) 13:17:26
C/C++、アセンブラ少々、ラダー

C++といってもデータと処理をパッケージにしてクラスにした程度のもので
テンプレートやデザインパターン、例外などは使ってない。理由は重くなるから。

アセンブラはスタートアップルーチンの一部にちょろっと使うだけ

ラダーはPLCのとき使う
828仕様書無しさん:2008/01/05(土) 14:39:02
組み込みだと組み込むOBJそのものより、
周りにツールの方が規模がでかいもんな。
msc++,perl,ruby,人によっては make。
829仕様書無しさん:2008/01/05(土) 14:47:55
lispは使わないんですか?
830仕様書無しさん:2008/01/05(土) 15:06:50
lisp はしらんが、make もAI的な動きして面白いよ。
831仕様書無しさん:2008/01/05(土) 15:21:05
lispはemacs系のエディタ(環境)をいじる時くらい?
832仕様書無しさん:2008/01/05(土) 22:31:47
>>827
うちだとアセンブラはフラッシュのIO周りとか、他にもチョコチョコ出てくるね

>>830-831
lispでコーディングされてる組込みソフトもあるにはある。
隣の部署だから詳しく知らんけど。
833仕様書無しさん:2008/01/05(土) 22:55:15
68kの組み込みやってるけどCだとどうしても要求するスピードが出ない・・・
ASMでやってるけど後継者が軒並み心折れちゃうんだよな
みんな後継者とか新メンバーには恵まれてる?

ウチは入社試験が無く誰でも入れるのが問題とも言えるけどさ
834仕様書無しさん:2008/01/05(土) 23:08:20
>>833
クロック上げてもらえw
835仕様書無しさん:2008/01/06(日) 00:02:57
>>833
中国人でも雇えば良いじゃない。

いまどきアセンブラで大きい物作るなんて根性のある新人はイネーよ。

要求を緩めてもらうとか?

836仕様書無しさん:2008/01/06(日) 00:13:40
そんなことはない。
だからアセンブラなんてむしろ猿でも理解できるだろうよ。
高級言語の方がずっと難易度高いっての。
837835:2008/01/06(日) 00:51:14
>>836
アセンブラで大きい物(数万ステップ以上とか)を作るのは
Cで同等なロジックの物を作るよりやり難いという事を言いたかった。

アセンブラの文法そのものは簡単だけど、それをどう組み合わせれば
Cの1命令分の動きになるのか?って事までは新人には荷が重いか、やる気が無いか。

複数ステップで判断分岐、判断分岐とジャンプを組み合わせてループ、
フラグ等の管理、(68Kはあまりしらんけど、その辺は変わりないと思う)

これらを駆使してのプログラミングなんて今時のゆとりはやりたくね〜んだよ多分。
838仕様書無しさん:2008/01/06(日) 00:55:45
ゆとりじゃなくてもやりたくねーよそんなもん
839仕様書無しさん:2008/01/06(日) 02:04:06
シーケンスはいないか・・・
840仕様書無しさん:2008/01/06(日) 02:46:40
>>835
中国人が同僚だぜw
理由は日本人に組み込みやらせると逃げるからww
中国人でも逃げるけど逃亡率は日本人より低い
問題はチームで日本人が俺だけであることだな
841仕様書無しさん:2008/01/06(日) 07:37:42
中国人は全部お持ち帰りだから。出し殻になるまで連中に絞られて終了か。乙。
842仕様書無しさん:2008/01/06(日) 08:13:16
>>833
需要の無いCPUのコンパイラだと最適化が温いから
出力されたコードをさらに最適化するツールを
自前で perl とか ruby で作るんだよ。

温ければ温いほど利く。
843仕様書無しさん:2008/01/06(日) 13:18:11
>>842
x86のコンパイラではCで書いても
出てくるコードには隙が殆ど無いぐらい最適化されてるねぇ。
下手にアセンブラで書くよりも効率良いぐらい。
844仕様書無しさん:2008/01/06(日) 13:34:43
>下手にアセンブラで書くよりも効率良いぐらい。
よく聞くヨタ話だけど、それは絶対ない。
特に組み込み業界のような低レベルな処理ならなおさら。
845仕様書無しさん:2008/01/06(日) 13:38:58
最適化が効かないコード書いてるからだろ?
846仕様書無しさん:2008/01/06(日) 13:54:59
僕、最適化されるとデバックできないんです。
847仕様書無しさん:2008/01/06(日) 14:23:17
>>844
そうなのか。
最近のWinアプリを逆ASMして見た感想では
普通にアセンブラで書いても、Cで書いても大して変わらんぐらいの出来で
驚いた。

最適化が緩い他CPUのコンパイラが効率悪いというなら同意。
スタックガンガン使うし、レジスタとワークの使い方が非効率的だし。
848仕様書無しさん:2008/01/06(日) 14:26:36
Cが流行り初めの頃はひどかったけど、最近のは最適化されてると思うけど...
849仕様書無しさん:2008/01/06(日) 14:33:47
まあ気合が入ってるのと入ってないのは当然のようにあるだろな
850仕様書無しさん:2008/01/06(日) 14:37:23
ある程度書いてると、コンパイラのクセが判って来るから それに合わせた書き方になるってのも大きいだろうな。

PICのWiz-Cとか最初は酷コード出すなと思ってたが、
今は別にアセンブラ並のコード出すもんな。
もちろん人間の方が適応したからだけどさ
851仕様書無しさん:2008/01/06(日) 14:44:27
めずらしい、道具のくせに合わせられる人がいるとは。
852仕様書無しさん:2008/01/06(日) 15:08:13
コンパイラのマニュアルに効率的なコードを出すためのソースの書き方が説明されてないか?
853仕様書無しさん:2008/01/06(日) 15:11:08
アルゴリズム変えたほうがよほど高速に出来る。
854仕様書無しさん:2008/01/06(日) 15:17:50
マニュアル読まない(読めない)でいきなり、コード書いてるみたいだけど?
855仕様書無しさん:2008/01/06(日) 15:27:10
>>852
そこまで親切な説明がされたのはみたことないなあ。
Hが昔、メモリ割り付けの説明してたの見たことある。
856仕様書無しさん:2008/01/06(日) 15:33:10
>>852
Wiz-Cには確かに書いてあったよ。
for(i=100;i;i--) みたいなループの書き方の場合だけ最適化しますって書いてあったのを覚えてる。
他にも ビット処理の注意も書いてあった

BYTEしか使わない事とか、
ローカル変数や引数を使わない事とかは 自然にそうしたのか書いてあったのか
857仕様書無しさん:2008/01/06(日) 15:59:17
int func(int a)
{
a++;
return a;
}
とやるより、
int func(int a)
{
int b=a;
b++;
return b;
}
とやった方が良いとかってのは書いてあったりなかったり。
24bitアドレッシングか16bitアドレッシングかの配置の話とか。

一通り目を通すけど、あんまり意識して書かないなぁ。
858仕様書無しさん:2008/01/06(日) 15:59:25
ルネサスだと例えばこういうのがある
ttp://documentation.renesas.com/jpn/products/mpumcu/apn/rjj05b0557_sh.pdf

5章と6章でソース例とコンパイル後のアセンブリコードが比較されている
859仕様書無しさん:2008/01/06(日) 16:02:33
基本的に読みやすいように書いて、問題があるならアルゴリズムを見直して、
それでもダメだったらコンパイラにやさしいソースにするって順だろうな
860仕様書無しさん:2008/01/06(日) 16:12:44
ん、基本をおさえてる人がいる。
861仕様書無しさん:2008/01/06(日) 16:32:02
>>858
へー、700ページ近くあるんだ。俺が知ってる頃はぺらぺらだったような?
862仕様書無しさん:2008/01/06(日) 19:00:36
基幹産業自動車に全力傾注してるから、他の儲からないやつらはドキュメント公開してやるから
自力でがんばれよ、ということではないのかなー。
863仕様書無しさん:2008/01/06(日) 19:28:11
>>842
あるな。
内部変数使わないのにスタックフレーム作ったりとか
途中return でも必ず後方ジャンプになってたり
なんか理由は判らんけど
先頭で最下行にジャンプしてからそこからまた上に戻るコードに必ずなってたり
864仕様書無しさん:2008/01/07(月) 00:34:13
HPC屋さんのコンパイラ( H F N はそうよね?)と、
Lisp魂を引いてるコンパイラ(GCC)でアプローチはだいぶ違うかな。

論文を読んだ限りではCOINSの最適化は人間には真似できないな、とは思った。
アルゴリズミック+力任せで「最適」が出せる物には人間には無理な
ものがかなりある(コンパイラにハードコーディングで直接教え込む以外に
真似できないだろう人間的最適化ももちろんあるけど)。
865仕様書無しさん:2008/01/07(月) 19:10:56
32bit レジスタ16本ぐらいあって、
パイプラインも含めたCPU最適化なんて
人間業ではコンパイラに太刀打ちできんよ。

8ビットCPUとかのだと、まだまだ負けんが。

866仕様書無しさん:2008/01/07(月) 20:06:27
世の中には、本当はいらないことを付加価値だと言い張って延々とやる人もいますので、よろしいのでは。
867仕様書無しさん:2008/01/07(月) 23:59:27
今度 C言語試験2級(サーティファイ)受けるんですが
あんまり取っても意味無いですかね?
868仕様書無しさん:2008/01/08(火) 03:06:22
特に評価されることは少ないけど
あれば相手を少しは安心させられる
でも結局は仕事ができるかどうかかな
869仕様書無しさん:2008/01/08(火) 04:14:18
腕試しに受ければ?
資格や検定は取って損する事はないんだからさ
870仕様書無しさん:2008/01/08(火) 07:05:21
受けるからには取らないと、バカだと思われるよ
871仕様書無しさん:2008/01/08(火) 07:33:44
相談です(超長文で失礼します)。

自分は30代半ばで計算機科学専攻の院卒なんですが
組み込みの求人に応募しようかと思っています。
しかし、本当にこの方面に進んでいいのか迷っています。

このスレと「組み込み系の人って痛いよねw【低収入】」はすべて読みましたが
「30歳過ぎてやる仕事じゃない」という記述が何度も出てきましたね。
どうも基本的に「激務」のようですね…。

自分は「仕事はお金を得るための手段」と割り切っていますので
なるべく「効率よく」高給が得られる職種が望ましいです。
そう考えると組み込みよりデータベースの方面に行くべきなのでしょうか?
「好きなことを仕事をしたい」と思うならゲーム系でしょうけど
(一般的に)あそこほど激務で簿給もないと聞いてますので…。

続く
872仕様書無しさん:2008/01/08(火) 07:34:37
続き

求人の数で見ると、組み込みは有利だろうなと思っています。
一度手に職を就ければ潰しは利きそうだし、食いっぱぐれはなさそうですね。
ただ、働き詰めで自分の時間がなくなってしまいそうな悪寒もします…。

ちなみに、大学は海外のB〜Cクラスorzで成績は一応優秀、
得意な言語はC++とC(当然Javaも出来ますが)で
構造体やポインタはマスターしております。STLも得意です。
アセンブラは一度クラス取っただけであまり得意ではありません。
分野的にはGUIが得意なので、そちらで職が見つかればそちらに行くのですが
なかなか合った募集がないですね…。英語はきっとペラペラです。

以前の仕事でICチップのトランジスタの測定や
モデルパラメータ抽出などしていましたので
直流/交流/容量などの測定器や
スイッチングで使うオシロスコープの扱いは慣れていると思います。
電気回路も基礎の基礎くらいは理解しているつもりです。

…今は自分の値段が分からずに
「就職先が見つからないんじゃないか('A`)」と
「俺ならもっと良い職に就けるんじゃないか(・∀・)」の狭間で揺れています。
現場からのアドバイスをお願いします。
873仕様書無しさん:2008/01/08(火) 07:59:42
組込みの求人ってのもピンキリで、やってる仕事もピンキリ。
院卒なら開発側にシフトした組込みって事になるでしょ。

地方のこれから伸びようって会社を自分が入ってさらに大きくしてやろうって気持ちがあるなら別だけど
お仕事と割り切ってやるには、ちょっと辛い仕事かもね。
874仕様書無しさん:2008/01/08(火) 08:21:50
あ、よく考えたら「組み込みやらされそうなんだけどどんな勉強すれば?」も全部読んでました。

>>873
ありがとうございます。
そうですね、開発側に近い部署に配属されれば
自分にとっては心地よく働けるかもしれませんね。
当然それなりに仕事はするつもりですが
常に上からプレッシャーかけられて…というのはどうも。

地方の会社でも構わないんですが
「残業残業でまぁまぁの給料」だったら悩みます。
875仕様書無しさん:2008/01/08(火) 08:40:32
「残業残業でまぁまぁの給料」で悩むんなら別の仕事を探すといい
http://pc2.2ch.net/tech/kako/1038/10380/1038094914.html
3 名前: 1 投稿日: 02/11/24 09:02

就職相談の話題が循環するから先に答えておく。

好きならやれ。
他に選択肢があるならそっちをえらべ。
自分が選んだ、なりたい自分になれ。

以上。
876仕様書無しさん:2008/01/08(火) 09:19:51
>>875
ありがとうございます。
なるほど、コピペにしては的確なアドバイスですね。
では、ここは貪欲的に他の選択肢(データベースなど)に挑戦してみて
ダメだったら組み込みということで…。
でも、話を聞いてる限りだとデータベースなんかよりも
組み込みの方が自分には合ってる気はしますけどね。
877仕様書無しさん:2008/01/08(火) 12:48:08
海外の大学にいるなら、海外のエンジニアになったほうがいいんでは?。
日本のエンジニアは待遇悪いから、英語ができるならみんな海外行きたいんじゃないかな。
878仕様書無しさん:2008/01/08(火) 13:46:03
仕事でやってるソースチェックプログラムって実力付くよ。
879仕様書無しさん:2008/01/08(火) 18:22:58
C言語3級は持ってるんですけど

これじゃ箸にも棒にもかからないですよね?
880仕様書無しさん:2008/01/08(火) 18:26:02
30過ぎてコーダーの腕要求されるというのは実はあまり無くて、局所的。
まあ、どうやってもいまでっちあげられちゃうんだけどね。

881仕様書無しさん:2008/01/08(火) 18:26:47
持ってない人に比べたら当然評価されるよ
自信持てよw
882仕様書無しさん:2008/01/08(火) 18:38:18
根拠の無い自信は言うまでも無いが根拠が的外れな自信もイタいだけだ
資格で飯が食える仕事ではないよ
883仕様書無しさん:2008/01/08(火) 19:00:02
884仕様書無しさん:2008/01/08(火) 19:08:56
コピペ君警備員さっさと仕事しろ
885仕様書無しさん:2008/01/08(火) 19:22:35
またキー取り込み仙人でも登場しないの?
886仕様書無しさん:2008/01/08(火) 21:01:59
これ以上、シュウォッチの納期を遅らせないでください
887仕様書無しさん:2008/01/09(水) 19:59:59
またつまんない仕様追加しやがって。
888仕様書無しさん:2008/01/10(木) 17:07:42
>>876

その歳で駄目だったらとか書いてる時点でデータベースだろうが組み込みだろうが厳しいと思いますよ
889仕様書無しさん:2008/01/10(木) 22:46:40
なんでリセットするんだよー。
890仕様書無しさん:2008/01/10(木) 22:49:46
どうせウォッチドッグだろ
891仕様書無しさん:2008/01/10(木) 23:54:42

ポーリング好きの方。お疲れさまです。
もう、無意味なコテハンも、やめます。

で、最近のHEWの環境にティックル/ティーケーが我が物顔で
入っているんですが、理解できる人って40過ぎではないかと。。。。。
(HEWって名称も出したらだめですか?)

私は、「坂本文」監訳の「Life with UNIX」が好きなのですが、
皆さんの、読まないと後悔する本を教えてもらえないでしょうか?
892仕様書無しさん:2008/01/11(金) 00:13:22
>>891
必読は
ソフトウェア工学―理論と実践 Shari Lawrence Pfleeger

目下の問題は枯れたCPUの解説本が絶版しまくりで後継者育成がめんどいこと
俺もコマンドとレジスタの一覧を先輩から受け継いだだけだったりする
893仕様書無しさん:2008/01/11(金) 20:33:41
800MHz のCPUでポーリング待ちすんなおー。
894仕様書無しさん:2008/01/11(金) 21:38:03
動作周波数は関係無くない?
895仕様書無しさん:2008/01/11(金) 21:39:33
>>891、892    by891
反応遅くてすみません。16MHzの組み込みなので。。。。。。
「ソフトウェア工学―理論と実践」って1万円近くするんですね、とても買えません。
枯れたCPUのソフトは俺ら爺さん連中が作ってればいいのではないかと思います。

以上

ここから、独り言。(荒らし禁止)
こんな文章に2時間もかかっちまった。だめだな。どうも、難しくて、文章は。
受け取る側の、気分でどうにでもなるから。。。。
善意で受け取って欲しい。
俺は、組み込みソフトがすきだーーーー

以上2
896仕様書無しさん:2008/01/11(金) 22:48:25
あんた

臭い。
897仕様書無しさん:2008/01/11(金) 23:52:49
枯れたCPUの書籍ってZ80とか、8086とか、68Kとかあるんじゃね?

枯れたCPUの仕事やりたいな。

久しぶりにFullICE弄りたい。
898仕様書無しさん:2008/01/11(金) 23:55:34
>>897
FullICEで力任せにデバッグは楽だったなー
899仕様書無しさん:2008/01/12(土) 01:25:48
>>897
感覚としてはZ80の仕事が減ってきてるな
68Kは偶数系と奇数系の違いを知らない自称組み込み上級者とかが
凸してくるのでチーム組む場合危険があったり
いい解説書無いよな・・・
900仕様書無しさん:2008/01/12(土) 02:38:21
>>894
クロック高けりゃそんだけ無駄なサイクル増えるんだから
もうちょっと考えろと言いたいのでは
901仕様書無しさん:2008/01/12(土) 04:22:38
クロック高い石なら、OS入れてタスク作ってタスクでポーリングするんだな、そいつ。
902仕様書無しさん:2008/01/12(土) 08:48:27
>>899
偶数系と奇数系ってなんですか?

char 領域から long を cast してとるなよー
っての?
903仕様書無しさん:2008/01/12(土) 08:52:40
>>901
OSあれば sleep いれてポーリング待ちなら普通にやるお。
そんな重要な端子をインタラプトに繋がない馬鹿設計のおかげだが。。。
904仕様書無しさん:2008/01/12(土) 08:55:48
クロック高い石でポーリングすれば反応がよくていいじゃんw
905仕様書無しさん:2008/01/12(土) 09:10:52
>>902
680x0のxのところが偶数か奇数かでアドレッシングモードの動作が違う
実質010,030と000,020の違い
040,060はあまり見ないからね

C言語で配列や構造体使う時に差がわかってないとアドレスがずれる
(というかずれるのが正しい動作なので知らないとなぜリークするのかわからなく悩む)
あと組み込み環境ではxによってけっこう非互換がはげしいので
010メインの人が020やったりするとハマることも
ここら辺は68kのプログラム本に書いてあるよ
906仕様書無しさん:2008/01/12(土) 09:17:33
>>905
素の68Kって未だに使ってるのか?

組み込みで使うなら内臓の周辺が豊富な
683xxかColdFireに移行してるもんだと思ってたが?
907仕様書無しさん:2008/01/12(土) 09:18:03
>>905
同じ68系でも違うんだー
CとASMのやり取りするとき要注意だね。

ひとつ勉強した。
908仕様書無しさん:2008/01/12(土) 09:33:15
ポーリング教団というのは存在していて
・割り込みでキーが取れるという回路がついているのに使わない。
 (聖典として上に書いてあるような適用範囲のごく狭い、鈍い反応しかできない不一致二度読みとやらにこだわる)
・プログラムの構造がスパゲティ。
 (何回回っている間に何回呼び出すから優先だ、ということを言い出す。それぞれの処理はがちがちに
 かみ合っており、スタンプ結合の嵐。使っていない部分もとにかく残っている。処理時間の見積もりは大雑把で
 俺は完璧にスケジューリングしてるんだ、脳内スケジューラーは完璧だと抜かしつつ
 「間に合わない場合の」逃げ道とやらが作ってあり、結果として「まれな」不具合が埋め込まれていても気にしない。)
・教義上どうなのかはしらんが
 主ループからハードウエアのタイマカウントを見て、ではなく、タイマ割り込みそのものを主ループ代わりに使い出す。
 さらに狂信的になると、タイマ割り込みの中でほかの割り込み要因を見て割り込み処理だったものを呼び出すなど
 割り込み処理だかなんだかすでにわからなくなるものを常用するようになる。

つまり、究極のポーリング教団信者による組み込みシステムというのは、唯一絶対完全なるタイマ割り込み神が
存在し、すべての処理はそこで行われる。ハードウエア割り込みなどというものは邪なもので、
タイマ割り込み神がビットフラグを監視することですべての割り込み要因はタイマ割り込みに従属させられるという
一神教により構築される神聖にして不可侵なものになる。

俺異教徒でよかったよ。
909仕様書無しさん:2008/01/12(土) 09:39:06
割り込みとかDMAとか嫌がる組み込み屋っているよな。
それこそ組み込み様様の世界だと思うのに。
910仕様書無しさん:2008/01/12(土) 09:41:08
ポーリング・・・

挙動不振だからって言うので見てみたら
ポーリングサイクルより実行される処理が圧倒的に長かったり・・・
DMA噛んでなきゃとりあえずは動いてたと思うけどな
その後全面的にASMで書き直したけどそのときのC言語PGが
傷心のあまり退職した悲しい思い出が

設計者がC言語でいけると判断したのがそもそもの間違いなんで
PGは問題無かったんだけど
911仕様書無しさん:2008/01/12(土) 09:42:41
今時の「組み込み」って幅が広いからね〜
営業がそこらへんわからずに組み込み案件持ってくるのが悩ましい
912仕様書無しさん:2008/01/12(土) 09:44:30
それは8ビット時代の話だろ?そうじゃなければ根本的に選ぶマイコン間違ったんだよ。
M16ぐらいになればCで設計したほうが効率のいいコード吐く筈だからな。一応うたい文句としては。

アセンブラでそこまでがちがちに書かなきゃいけないほどきっつーい要件だとして
それって今に至るまで保守できてるのか?後につなげてるか?

あー、その保守拡張で食ってる人か。そらすまん。
913仕様書無しさん:2008/01/12(土) 09:45:06
>>911 もう携帯なら携帯一本で絞らせればいいじゃねえか・・・。
914仕様書無しさん:2008/01/12(土) 09:54:19
>>912
今でも厳しい環境下で稼動させるものは
8bit16bitの新規案件はけっこうあるよ
テスト環境が厳しくて基盤が死ぬことがあるくらいだけど

>>913
ASMの案件だけ受けるって言っても
営業先で組み込み技術者要求されるとこっちに持ってくるんだよw
とりあえず持ち帰って検討します、とか言ってるんじゃないかなと予想
最近は携帯と音楽プレイヤーの案件をよく持ってくるかなw
915仕様書無しさん:2008/01/12(土) 10:01:01
まあ、作りに関してど素人(営業とかメカ屋とかさ・・・)がぎゃあぎゃあいってこないんだったら
何でもいいんじゃねえか?
916仕様書無しさん:2008/01/12(土) 12:37:43
ASMじゃないと遅いとかいうコードみたら、
そこらじゅうポーリング待ちで澱んでいたり、
頭からのシーケンシャルサーチでテーブルみてたり、
なんかそりゃそうだよな、と思わせるオチ。
917仕様書無しさん:2008/01/12(土) 13:23:57
>>908
スイッチ入力を普段は割り込みでやらないのは普通だと思うよ。
これはスリープからの復帰の為にあるようなもの。
寝てる時に起こしてさえくれれば、あとはポーリングで見るだけ。

割り込みは、もっと応答を要求されるようなシリアルとかのために出来るだけ空けておきたいのが普通の神経では?
918仕様書無しさん:2008/01/12(土) 13:27:00
ただ、ダイナミック点灯とかをソフトでやってて、キーボードスキャンがそれに同期してる場合は
割り込み内で当然 ダイナミックスキャンとキーのサンプリングはするよ。
だってダイナミック点灯のタイミングって綺麗に揃えてやらないとチラツクものね。

でもそのエンコードやチャタリング取りはメインで行うもの。
割り込みの中で処理してるの見たら気持ち悪いよね。
919仕様書無しさん:2008/01/12(土) 13:35:25
ああ、いちおう補足すると、
チャタリング取りってのは、チャタリングを取ってるんじゃなくて
「チャタリング取り」という名のノイズ取り処理の意味ね。
920仕様書無しさん:2008/01/12(土) 14:00:16
過去ログ見ると少しわかるけど、キーといってもいろいろあるわけで、一概にどれがいいとは言えないわけなんだが
ポーリング教団の信者だけは異なっていて、これが決めうち決定版ほかにあるわけない!

というのを、どっか一箇所に書いてある(自分で書いてたりするんだろうが・・・)情報を根拠に言い立てるわけさ。
LEDを特定のデューティー比率で点滅させるんだけど、総じて見ると残像で人の目には必要部分が
同時点灯しているように見えるという方法自体は、昔からあるよね。

ニキシ管の人が出てくるとまた混乱しそうだけど。
921仕様書無しさん:2008/01/12(土) 14:14:31
>>917
俺もむしろ908の考えの方がオカシイと書こうと思ったところw
ついでに言えば、908の中段の文章は意味がわからん
922仕様書無しさん:2008/01/12(土) 14:37:13
じゃあ、正しい考え方でも開陳してくれよ。
923仕様書無しさん:2008/01/12(土) 14:46:07
うんまあ、割り込みっていうのは基本的にはCPU時間というコストを犠牲にして
応答のレイテンシを最小化することを目的としたものなわけで、
基本的には邪道でしょ。
924仕様書無しさん:2008/01/12(土) 14:57:15
王道だよ。
925仕様書無しさん:2008/01/12(土) 15:03:40
応答時間は
ポーリング>端子割り込み>タイマー割り込み>メイン監視
で、そのときのクライアントの要望でお好きに。

「全部できるだけ速くでお願いします」 (´ヘ`;)
926仕様書無しさん:2008/01/12(土) 15:35:21
全部速くか・・・・

割り込みで処理するしかなくて、なおかつ処理時間が足らないとなると >>908が書いてる
>割り込みの中でほかの割り込み要因を見て割り込み

しか無い。 
本来は割り込み処理でフラグを立てるだけとかFIFOに書いてメインでポーリングしたい所だけど
このあたり、昔は処理時間が足りなかったから仕方ない場合もある。
なお、俺も>>908の書いてる事は断片的には判るが言いたい事はさっぱり判らん。

>>920 2度読み、不一致読み捨ての事?
でもコレは基本だね。 コレが入ってないとやっぱりダメ出しするね。

最近は、さらにポートの入出力切り替えも追加するのが流行だよ。
927仕様書無しさん:2008/01/12(土) 16:02:48
ボタンとかを割り込みで実装する人に聞きたいんだけど
派手目にチャタった時とか謎のヒゲとかボインが来たとき
割り込みボンボン来るけどハード修正不可のときとかは
どうするの?
928仕様書無しさん:2008/01/12(土) 16:04:05
状態遷移をちゃんと考えないと妙ちくりんなものが出きるよ。
929仕様書無しさん:2008/01/12(土) 16:06:08
>>927
それがチャタ取りなんだけど...
930仕様書無しさん:2008/01/12(土) 16:10:22
>>929
チャタ鳥を割り込みでどうやって実装してるの?
せっかくなので教えてください
931仕様書無しさん:2008/01/12(土) 16:17:14
>>908
恐ろしい教団もあったものだ
932929:2008/01/12(土) 16:18:16
誰かがサンプルのサイト紹介してたじゃない?
前回のデータと今回のデータを論理演算すればチャタは取れるよ。
数年前にやったきりで思い出せない...
933仕様書無しさん:2008/01/12(土) 16:19:38
>>909
割り込み嫌がる奴は組込み屋じゃねーし。

エンベデッドなソリューション屋とでも言うのかねぇ


934仕様書無しさん:2008/01/12(土) 16:20:30
>>930
チャタ時間をタイマ割込みで待つんじゃなくて、ポーリングで数ミリ秒稼ぐとか?
メイン処理止まっちゃうね
935仕様書無しさん:2008/01/12(土) 16:26:26
>>933
むしろ割り込みというのは「必要悪」に過ぎない、という認識が欠如している
奴の方が困るだろw

「必要悪」とはつまり、使わなければそれに越したことはないということ。

どういう発想してるんだろこういう人って。
俺に言わせれば倒錯そのものだよ。
936仕様書無しさん:2008/01/12(土) 16:29:49
>>935
割込みが必要悪なんて初めて聞いたよ、組み込みなら必須技術だろ
なぜ必要悪だと思うのか語ってくれ
937仕様書無しさん:2008/01/12(土) 16:30:06
割り込みも使いこなせない奴が組み込みやってるの?お笑い...
938仕様書無しさん:2008/01/12(土) 16:32:12
>>935
大量のデータを捌く必要があるので、スループットが落ちる割り込み処理なんかやりたくね〜よ
というなら理解するけど、

スイッチ処理専門とか、下位に多数のプロセッサ抱えた処理の統括とかやる場合
割り込み無しなんて('A`)メンドクセーよ。
939仕様書無しさん:2008/01/12(土) 16:33:56
>>936
必須だが使わずに済めば越したことはないものを「必要悪」という。

大事なのは「使わずに済めば越したことはない」という正しい認識を持っているかどうかだね。
こういう認識を持ってない馬鹿は困るんだよ。

そのコストやペナルティーを考慮せず、
風邪を治療するのに抗がん剤を使うような愚を冒すからね。
940仕様書無しさん:2008/01/12(土) 16:35:14
まあ、聞いても聞かなくても毒にも薬にもならない話だねぇ

チャタリングの続きをドゾ〜
941仕様書無しさん:2008/01/12(土) 16:40:01
>>939
いや、便利なものはガンガン使った方がコストは逆に下がると思うぞ
お前さんの言い分じゃマルチプロセスやマルチスレッド、ひょっとしたらMMUも必要悪なんじゃないか?
そんなんじゃ複雑化してる今時の組み込みに対応できんだろ
942仕様書無しさん:2008/01/12(土) 16:41:07
OSなしの場合
通常はループ処理
 ・割り込み→要因チェック→優先度に応じてハンドラ
 または
 ・割り込み→ハード的に優先度に応じたハンドラへ切り替え

これを
 ・唯一のタイマ割り込み→ポーリング処理→ほかのハードウエア割り込み要因チェック→他の要因の割り込み処理
 ・たまにループにもどる。

としたらどうでしょう。
943仕様書無しさん:2008/01/12(土) 16:44:43
        _,,:-ー''" ̄ ̄ ̄ `ヽ、          :..
     ,r'" .. .. : : ::ノし )(::: :.`ヽ. ビキ     . : :
 __,,::r'7" ::.  ノ(   ⌒j(⌒) (:::::::...ヽ_   ビキ : .
 ゙l  |  ::  ⌒. .::: ::: :: .. . .⌒:: :... ゙) 7      ::.
  | ヽ`l ,/\,,_::..、,;_、_...:::_,,,ノ\ /ノ )     , : ;
 .| ヾミ,l _;;: ::: ."''=:))il((=''" . . . ::` .ヒ-彡|      : .
  〉"l,_l "-ー:ェェヮ;::);;;;;f';;_-ェェ-ニ,, ゙レr-{     . ::
  | ヽ"::::''_;:'" ̄´.::;i;;;;;;i,..`'' ̄`:;_ .::r';' }     . : :
 . ゙N l ::. .....:::;イ;:';;;;;;;;l;;;i、::... . . ...::,l,フ ノ    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 . |_i"ヽ;:...::::::/::.゙'''=-='''´`ヽ::.....:/i l"   <  チャタの話は上の方でもうしただろ!!
   .|:.:.::゙l  :::i ,-==' '==::、..:i .::,il".::|'"     \__________
    .{::...::|:::.、 ::(┼┼┼┼} :::...:il::. .:|    : . .
   /ト、:. :|::..゙l;: `======='".:,i' .:,l'.::ノト、    : : . ..
 / .|::..\ゝ、゙l;:: : : : ⌒ :: :,,/;;,ノ;r'" :| \    :: : . .
'"   |:: : ..`''-、`'ー--─'";;-'''"... : : :|       :: : . .
944仕様書無しさん:2008/01/12(土) 16:52:40
>>927 たぶん>>908の最初の行の事だろうけど、
キー割り込みでキーをわざわざ見るなんて処理を書く奴はまず実在しない。
これは電池駆動のシステムで、休んでる時に目覚めさせるのに使うもの。
たぶんチャタリング2度読み否定の人が、何か啓示を受けての妄想だろう。
945仕様書無しさん:2008/01/12(土) 16:57:45
>>934
どうしてポーリングで数ミリ 止まっちゃうんですか?
そこでビジーループして時間稼ぐってことですか?
普通はそういう作りはしませんよね?
946仕様書無しさん:2008/01/12(土) 16:59:08
>>942 どうでしょうって。 
それで間に合うなら割り込み要求フラグを見るだけ、というのは普通にやるでしょ。

たとえばものすごい短いパルスが来てるかどうかだけみたい場合
カウンタに入れてもいいけど、エッジ割り込み端子を使って、
割り込み要求があったかどうか見るとかさ、

ADCの完了フラグとして割り込み要求フラグを見ればいいというハードだったりさ
947仕様書無しさん:2008/01/12(土) 16:59:27
>>932
割り込みそのものが非常にたくさんくるときはどうするの?
チャタがひどいとき、処理能力を超える割り込みが
大量にくるとき
948仕様書無しさん:2008/01/12(土) 17:02:55
マイコンの処理能力とか考慮して作らないの?
949仕様書無しさん:2008/01/12(土) 17:06:32
>>945
?の多用はうざいからやめてくれw
ビジーループは作る必要ないよな、メインループでポーリングしてりゃ済む話だ
950仕様書無しさん:2008/01/12(土) 17:20:16

??
???
????
951仕様書無しさん:2008/01/12(土) 17:22:31
>>944
おいおい俺は二度読みなんて不要で間抜けだ、と言い出した本人だが、
同時に908の言ってることにも否定的だぞw

正直二度読みも要りもしない割り込みの乱用も愚の骨頂としか思えん
952仕様書無しさん:2008/01/12(土) 17:31:22
そんなあなたには愚の国境

ttp://www.wikihouse.com/gunokokkyo/
953仕様書無しさん:2008/01/12(土) 18:12:36
世間にはプログラミング本や設計のやり方を示した本は結構ありますよね。
でも、事例集とか現実に即した使えるものの例を示した本ってのは案外ない。

人のやってることには局所的な理由があるんでしょうが・・・。
たまたま、そうだ。

それだけなんでしょうか。
954仕様書無しさん:2008/01/12(土) 18:35:57
奥の手見せてくれる人っていないのでは?
955仕様書無しさん:2008/01/12(土) 19:04:24
あ、わかってます君とかたまにいるから注意した方がいいよ。
956仕様書無しさん:2008/01/12(土) 19:09:13
>>953
「現実に即した例」だけでこの世の需要をカバーできるのならそもそもプログラマ要らないでしょ。
少しは自分の頭で物事考えろよ。
957仕様書無しさん:2008/01/12(土) 19:44:13
電子部品だとどんな場合はどんな素子がいいとかハンドブックが出てるよな
958仕様書無しさん:2008/01/12(土) 19:46:27
>>953
基本的なことは本を探せばたいがい見つかる
組込プログラマに要求される能力は基本を応用して
対象を解析しながらプログラムを開発すること。

それが出来ないと
>>910に出てくるポーリング間隔も確認出来ないC言語PGみたいになる
959仕様書無しさん:2008/01/12(土) 19:47:30
設計どおりには行かないって事じゃ?
960仕様書無しさん:2008/01/12(土) 20:48:44
全員が間に合っていると信じて積み上げたら破綻とかなー。
961仕様書無しさん:2008/01/12(土) 21:19:47
>>960
信じるなよw
962仕様書無しさん:2008/01/12(土) 21:30:37
処理時間くらい調べるだろ普通
963仕様書無しさん:2008/01/12(土) 22:38:45
周囲の状況で普通は変わる。世間水準とかいってもねえ・・・。

とっぺんぱらりのぷう。
964仕様書無しさん:2008/01/12(土) 23:03:51
じじぃ
965仕様書無しさん:2008/01/13(日) 02:13:51
チャタ取り
前回 今回 結果
0   0   0
0   1   0
1   0   1
1   1   1
になるようにするでどうでしょうか? 
966仕様書無しさん:2008/01/13(日) 03:13:10
>>965
前回と今回とのインターバルは?
割り込みだと駄目だよね?
一定間隔でのサンプリングでなら
こうかはばつぐんだと思うけど
967仕様書無しさん:2008/01/13(日) 03:32:38
>>966
キーのサンプリングは10msでどうでしょうか?
968仕様書無しさん:2008/01/13(日) 03:41:19
>>965
あほか、その結果

今回のサンプルを一切無視して前回の結果だけが反映されてるじゃねえか。
一段バッファ付ければ求める結果を出してくれるよ。
969仕様書無しさん:2008/01/13(日) 03:41:28
>>965
ていうか、それ全く意味無いじゃん?
チャタ鳥って 実際の状態がn回連続でmとなって初めて
状態がmに変わったとみなす とか、そういう感じじゃないの?
前回ってのは内部保持状態?それとも実際の接点の履歴?
970仕様書無しさん:2008/01/13(日) 03:44:41
前回と今回はキーの状態、結果は別物です。何か間違ってる、俺?
971仕様書無しさん:2008/01/13(日) 03:49:41
>>970
>結果は別物
無意味な情報を一緒に提示するな馬鹿チンが!
972仕様書無しさん:2008/01/13(日) 03:49:59
>>970
0101010101
っていかにもチャタな時に
-010101010
ってなってチャタが取れてなくない?
それともこれ2回ワンセットで考えてる?
それはそれでまずくない?
973仕様書無しさん:2008/01/13(日) 03:53:29
000100101011011101111110011111
という入力があったときに、スレッショルド3くらいとして
000000000000000111111111111111
って具合に変換するのがチャタ鳥なんじゃないの?
蒼い鳥って名曲じゃね?
974仕様書無しさん:2008/01/13(日) 03:54:07
>>972
10msなら01010のパターンってあると思うんですけど、俺、間違ってる?
975仕様書無しさん:2008/01/13(日) 03:56:27
またチャタの話かよ。
いいから時系列で微分しれw
976仕様書無しさん:2008/01/13(日) 03:58:16
あ。 微分したらヒゲが顕著に検出されるだけだなw
積分するんじゃネエのかw
977仕様書無しさん:2008/01/13(日) 04:00:54
誰か完璧なアルゴリズム出してくれよ。
978仕様書無しさん:2008/01/13(日) 04:03:04
>>974
ノイズを除去するんだから、サンプリング結果から多数決できるように
3つ以上の状態を以っしてて判定しないとまずいじゃん?

>>977
>>969>>973って結構イケてなくね?
979仕様書無しさん:2008/01/13(日) 04:06:56
そもそもチャタがあるようなハードの設計で
10msオーダーで反応しなきゃならん物作る事自体が間違い。
980仕様書無しさん:2008/01/13(日) 04:06:58
>>974
チャタ取りしたくないってこと?
だったらチャタ取りしなければいいと思うよ。
981仕様書無しさん:2008/01/13(日) 04:07:14
センサーの揺らぎを取るなら、一定以上状態が保持されたら、ONとかの処理を俺ならするなあ。
982仕様書無しさん:2008/01/13(日) 04:11:09
10msオーダーの入力なら5ms以下でサンプリングしないとチャタ取りできないんじゃないかな
983仕様書無しさん:2008/01/13(日) 04:12:05
反応速度をどのくらいに設定するかで変ってくるからね。
手押しボタンのON/OFFを検出するくらいなら、秒間20回くらいポーリングしてその値をそのまま使えばいい。
984仕様書無しさん:2008/01/13(日) 04:13:28
あ、サンプリングしたいんなら、そのまま生のデータ取ればいいじゃん。
985仕様書無しさん:2008/01/13(日) 04:50:56
>977
オレの勘に敵うものなし
986仕様書無しさん:2008/01/13(日) 04:53:12
3回サンプリグして、1が2個以上なら1都下じゃだめかな?
987仕様書無しさん:2008/01/13(日) 07:18:06
>>976
ヒゲって何のこと?
誰か教えてくれ OTZ
988仕様書無しさん:2008/01/13(日) 08:38:45
>>987
一瞬ピコーンと立つノイズのことじゃね?
989仕様書無しさん:2008/01/13(日) 09:54:59
>>987 オシロは見た事ある? 

チャタリング _________||~|~|_||~~~~~~~~~~~~|__|~|___|______

ヒゲ ______________|__________________________________________

信号の鈍りにのるヒゲ_________________||~~~~~~~~~~~~~~

こんな感じ

>>983 それはチャタリングは取れるけどヒゲは取れない。
雷とか、静電気の放電とかの短い誘導ノイズによるヒゲで勝手にボタンが押された事になる場合がある
ハード的に処理してるなら別だけどね、完全に取るのは難しい。
サンプルレート2倍にして、前回と一致選択くらいは入れないとね。
990仕様書無しさん:2008/01/13(日) 10:01:07
>>977 チャタ取りなら、チャタリング時間より長い時間を取るのが完璧なアルゴリズム。

チャタ取りという名前のノイズ取りなら、ノイズに完璧はありえない。
ただスイッチ入力なら20msくらいのサンプリングで前回との一致採用 不一致捨てで十分実用になる。

さらに、入力には抵抗を1本入れておいて、普段は現在の採用値を出力しておき、
入力する時だけ直前に入力に変更するというのを入れると、
入力ポートに対してシュミット特性も持たせられるし
入力ポートの相対インピータンスを下げられるからヒゲが乗り難くなる。
携帯電話や違法無線なんかにも強くなるよ。
991仕様書無しさん:2008/01/13(日) 10:09:56
>>986
つまり本当は1秒に20回くらいで読みたい場合に 1秒に60回サンプリングして
3回毎に、0が多ければ0 1が多ければ1ってするわけ?
それはソレなりに動くと思うよ。
101 010 101 が来ると 1 0 1 になるけど
こんなふうに連続して10101が来るような信号ってアリエナイわけだしさ

でも>>646
の方がシンプルで処理も軽いと思うけどな。
992仕様書無しさん:2008/01/13(日) 11:25:22
シンプルかもしれんが意味がないっていってるだろだからw

だから悪い頭をフル回転してよく考えなよ。
>>646が想定しているような「都合のいい」入力なんてありうるの?w
結論からいえばありえんそんなの。
993仕様書無しさん:2008/01/13(日) 11:34:15
チャタ気になるなら容量スイッチに替えればOK
994仕様書無しさん:2008/01/13(日) 11:35:12
>>992
じゃ、見本になるコードplease!!
995仕様書無しさん:2008/01/13(日) 11:45:36
>>994
だからチャタの期間より長いインターバルでスキャンすれば普通に問題なし。
ノイズ除去の方法を求めているなら、そんなのソフトでやろうなんて無理無駄ムラ。
時間と脳力の無駄だそんなの。
996仕様書無しさん:2008/01/13(日) 11:48:58
>>995
妙なことに固執して、廃人に追い込む人がたまにいるみたいだから、なんとなく...
997仕様書無しさん:2008/01/13(日) 12:09:35
>>992 その結論ってのは経験の上で? どんな現場で経験してるの?

現場でなくても、ノイズ試験とかはやらないの?
998仕様書無しさん:2008/01/13(日) 12:25:51
次スレご用意してありますので、
チャタリング関係は次スレでしっかり決着つけて下さいね

組み込みプログラマーこそ真の一流!その7
http://pc11.2ch.net/test/read.cgi/prog/1200194698/
999仕様書無しさん:2008/01/13(日) 12:29:43
>>997
そういう間違った「現場主義」はよくないと思うよ。
机上で純粋に論理的に「オカシイ」とわかることはやはり「オカシイ」でしょ。
というか、理論値以上に「好都合な」結果が出るって普通はありえない。

だからさあ、何度も言うように>>646的な方法でフィルタできる波形っていうのは
どういう条件を持っていることが必須?

そしてそういう条件を備えた「都合のいい」ノイズが乗って来るケースっていうのは
どの程度ありうるの?

んな「都合のいい」ノイズが乗るケースなんてありえんでしょw
1000仕様書無しさん:2008/01/13(日) 12:46:52
1000000000000000000000000000getttttttttttttttttttttttttttttttttt
あっ、チャタっちゃった
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。