06/11/30 12:25:39
なんていうか、むしろ>>114みたいな意味不明の文章を解読できる人間が
本人以外に存在するってことが驚きだよ
128:デフォルトの名無しさん
06/12/01 00:26:32
>>127
「CPUがおかしい」とか「ライブラリのバグ」とか「コンパイラのバグ」って
言う奴の報告なんて大抵あんなもんだろ
129:デフォルトの名無しさん
06/12/01 03:42:41
>>127 前スレあたりで、「3MHzの8085Aを使ってuartの入出力をやってます。ROMはxxxx、
RAMはこの位・・・」とかシステムの概要は説明されてるので、それ読んでる人にはそんなに
意味不明でもないな。同業だし。unix系とかcobol系の人には意味不明かも。
130:デフォルトの名無しさん
06/12/01 05:51:37
前スレ見てきたがもう1年経ってるんだな
1年やっててそのレベルか・・・
131:デフォルトの名無しさん
06/12/01 12:08:00
この程度の規模だと、大体そういうミスをやらかすんだよな
俺も最近、出力が止まるミスをやらかしたが、
割り込みで出力して出力中フラグを立てて、
次の割り込みで出すデータが無くなったらそれを倒す、って作ったら
割り込み内で処理が終了する場合があって、
そのときにフラグが永久にたったままに…
132:141
06/12/01 17:29:27
ナカーマ!・・・でも私なんかと仲良くしたくないよね。バカが伝染る(^o^)
133:デフォルトの名無しさん
06/12/01 18:12:02
確かに数字を間違えるようじゃ制御系では致命的だからな。
134:114
06/12/02 02:19:26
あちゃ~(*o*) こないだも1と2見間違えて動かないのに3hはまった・・・ディスプレイのせいにしよ
135:デフォルトの名無しさん
06/12/02 11:29:26
だから即値を使うなとあれほど
136:デフォルトの名無しさん
06/12/02 11:55:59
即値とマジックナンバーは違うでしょw
137:デフォルトの名無しさん
06/12/02 13:56:03
いや、#defineの名前じゃなくて関数名にch1puts()とch2puts()ってつけて、引数も同じだし。
隣のCHに出してた・・・orz
138:デフォルトの名無しさん
06/12/02 22:11:17
>>137
だから、共通化して引数でCH指定しろと何度(ry
139:デフォルトの名無しさん
06/12/03 00:30:05
結局1と2の間違いはどこまでも付きまとう予感。
140:137
06/12/03 04:37:45
>>138 昔、G.J.マイヤーズの「複合設計」という本に感銘を受けて、「制御結合イクナイ」が
刷り込まれてるのですよ。この場合だと、呼ぶほう puts(1,"abc\r\n"); 呼ばれるほう
void puts(int ch, char* str) {
if( ch==1 ) ch1のringへ出力
elseif( ch==2 ) ch2のringへ出力
elseif( ch==3 ) ch3の・・・ なんて感じになりますよね。 この1つ目の引数は
マイヤーズの言う「制御パラメータ」で、オーバーヘッドです。呼ぶとこでは1/2のどちらに出すか
判っているのだから、それぞれの機能の入り口があればそこを呼べばいい、という考えです。
でも、Win系に慣れてる今の人はこういうののほうが違和感あるみたいです。会社で書かれる
コードの殆どはchを引数に持ちますね。「それムダじゃん」って突っついても「これが標準化
だから」で終わり。 まあ、今のPG環境には「不足」よりは「過剰」がトレンドですからねえ。
こういう人たちに3MHzの石使わせると「動かねエ・性能出ねエ・石ダメじゃん」は必至。
141:137
06/12/03 04:47:18
で、139さんの言うとおりなんです。今の画面は10年前のイイヤマの15吋なんですが、縁ばかり
デカくて、点々が荒い。客の会社であたりまえに使われてるDELLの17吋がキレイで夢みたい。
1と2の入口名をchONEputs()、chTWOputsとでもしないと、このディスプレイでは、またやりそう。
142:デフォルトの名無しさん
06/12/03 12:29:59
>>137
あんたも同僚さんも教条主義的に物事考えすぎなんじゃないの?
その方法がよいか悪いかを判断する基準を、あんたの現場を知りもしない
どこかの学者さんとかに任せるの?w
プログラムは問題解決の手段なんだから、判断基準は、どちらがその問題を解決するにあたって
適合的かどうかでしょう。
まあそうはいっても、「特別の理由がない限りは」引数でChannelを指定する方法を
採用すべきだろうね。理由は、
(0) コードの直観性に関しては、呼び出すその部分だけ見ればどちらも大差ない。
(1) 余程頻繁に呼び出されるのでもない限り、Chによる処理の分岐程度のオーバヘッドは
大昔のマイコンのような貧弱な環境でも問題にならないはず。
(2) 指定するチャンネルを動的に変化させる必要がある場合、>>137式のコードの場合、
呼び出し元の数だけ呼び出し先を選択する余分なコードが必要になる上、
そのコードを読む者に「こんな冗長なことをあえてしているのには何か特別な理由があるのか?」
と余計な詮索を強いることになる。
143:デフォルトの名無しさん
06/12/03 15:23:21
そもそも数字を間違う時点でお察しなのはおいとくとして。
保守性を考えればどちらにすべきか一目瞭然ではないかと。
仮に性能が出ないというのであれば、それを実測した後に対処すればいいとおもうが。
144:デフォルトの名無しさん
06/12/03 15:56:53
だいたい>142-143のいうとおりなんだが、付け加えるなら
Ch1とか2とか抽象化している時点で>137の考えは破綻しているような。
145:137
06/12/03 16:14:35
ども。こんなアホの相手してくださって嬉しいです。そうですね、保守性の点では他の大多数の
PGが見ることを考えて標準的な書き方にしといたほうがいいですね。いつか誰かが読んだとき
(2)みたいなことで頭ひねらせたらすまないですもんね。割り込み処理がCH分あるのは
しょうがないとして、タスク側のインターフェースはスキーリしますね。
箇条書きの項番が(0)から、ってのが、さすがクミコ屋さん。
146:デフォルトの名無しさん
06/12/04 08:10:03
まあch1/ch2なんて名前じゃなくて Main/Subとかの方がいいだろな
1を使うか2を使うかは#define で切り替えればいいのだから
147:デフォルトの名無しさん
06/12/04 10:29:33
ch3は何と名付けようかね
148:デフォルトの名無しさん
06/12/04 10:33:11
Main/Sub/Sub2/Sub3・・・
149:デフォルトの名無しさん
06/12/04 12:55:03
primary
secondary
tertiary
150:137
06/12/04 16:01:27
CHは4つあって、お客はA-CH、B-CH、C-CH、D-CHと言ってます。
メイン/サブだと、なんか主に使うCHとついでに使うCHみたいに感じますね。
実際はどれも並列で、使うときにどの装置とつなげるか適当に決めます。
151:デフォルトの名無しさん
06/12/05 07:31:30
それならforループで回せるように 引数にch番号を入れるのは悪くないね
152:デフォルトの名無しさん
06/12/05 17:47:03
SH-2について教えて下さい。今、HEWを使いCソースを書いていたのですが、
PE.DR.BIT.B0 = 1;
のC言語ソースが
MOV.W L11,R6
MOV.B @(1,R6),R0
OR #1,R0
MOV.B R0,@(1,R6)
L11:
.DATA.W H'83A0
のようにコンパイルされます。
別の割り込みで、例えば「PE.DR.BIT.B3 = 1」の様な操作をしたいのですが、
これだと、OR #1,R0の辺りで割り込まれると、割り込み先での「PE.DR.BIT.B3 = 1」が無効になります。
(Read-Modify-Writeの途中で、割り込みが発生した場合)
タイミング悪く、PE.DR.BIT.B3 = 1を無効にしない為には、どのようにすれば良いでしょうか?
153:152
06/12/05 17:48:04
あと、マニュアル見ると
OR.B #imm,@(R0, GBR)
というのがあるんですが、これを使ってくれないのは何でなんでしょう?
154:デフォルトの名無しさん
06/12/05 22:11:03
その OR.B #imm,@(R0, GBR) を #pragma inline_asm で使うか
その前後で割り込み禁止許可したらいいんじゃないの?
今 SHの環境は削除してるから C言語でもっと巧く出来るのかもしれないが
155:152
06/12/06 00:26:52
ありがとうございました
H8/300では1命令で出来たので、苦労無かったのですが・・・
割り込みを禁止許可を前後に入れる方向でやってみます
156:デフォルトの名無しさん
06/12/06 04:42:42
300ならDI/EIでいいけど、SHだと割り込み許可レベルの変更になりますよね。
それだと全種類の割込みを止めてしまう。それよりはPEDRを使うことが判っているデバイス
(uartとかDMAとか)の制御レジスタの割込み許可bitを禁止する手法のほうが、
巻き添えを食う処理が少なくてベターだとおもいます。
157:デフォルトの名無しさん
06/12/06 11:18:04
STC GBR,@-R15 ;スタックにGBRを保存して
MOV.W L11,R0
add
OR #1,@(R0,GBR)
158:デフォルトの名無しさん
06/12/06 11:28:03
ゴメン 編集途中で書いた
#pragma inline_asm(setHoge)
static void setHoge(void)
{
STC GBR,@-R15 ;スタックにGBRを保存して
MOV.L L11,R0
LDC R0,GBR ;
MOV #1,R0
OR.B #1,@(R0,GBR)
LDC @R15+,GBR
}
こんな感じでいいんじゃないの?
159:デフォルトの名無しさん
06/12/06 12:33:30
関係ないけどH8のアセンブラって使いにくいよね。
どこの馬鹿が考えたのかと思う。
シンボルの再定義もできないんじゃ、ルーチン内でレジスタにシンボル割り当てて
高級言語のローカル変数みたいな使い方することができないじゃん。
160:デフォルトの名無しさん
06/12/06 14:01:02
H8はもうCで書くのが定着しちゃったから、インラインで書く程度では?
H8/M16 あたりから上はC言語でしょ?
161:デフォルトの名無しさん
06/12/07 05:57:35
H8は最初からコンパイラありきで開発されましたからねえ。アセンブラはPGに使わせるため
というよりは、cの最終フェーズのためにだけ作られたと考えたほうがいいでしょう。
ANSI にないbit代入の書式までcで書けるし。ベクタ部もcで書けるし。
でも sfr.1 = (判定式)? 1:0; みたいな書き方するとコンパイラがバグったな。
162:デフォルトの名無しさん
06/12/22 03:12:23
いつもの3MHzの8085の人です。プリンストンの19インチWというディスプレイに変えました。
文字くっきりでとても快適です。1と2見間違える対策にはこれがいちばんみたいです。
DOS窓でLSIC80走らせるだけにしてはえらくオーバースペックですけど。
163:デフォルトの名無しさん
06/12/27 21:59:42
フォトセンサーは何ボルトぐらいの振幅が出ますか?
164:デフォルトの名無しさん
06/12/27 23:51:38
1万ボルトくらい
165:デフォルトの名無しさん
06/12/28 21:57:34
一般論で言えば4Vか、11Vか、23Vか、47Vか、全くでないか、煙が出る
166:デフォルトの名無しさん
06/12/28 22:41:50
電気はな、触って骨が透けて見えるくらいが丁度いいんだ
167:困ったさん
07/01/08 23:16:00
やってもらいたい問題があるんですがお願いします!
連続系の制御と離散系の制御の本質的な違いって説明せよ。
168:デフォルトの名無しさん
07/01/08 23:38:50
連続系がアウトランだとすると、離散系はパワードリフト
169:困ったさん
07/01/08 23:42:18
回答ありがとうございます。
知識まったくないんでわかりやすく説明してもらえませんか?(>ω<)
170:デフォルトの名無しさん
07/01/08 23:59:37
知識無いなら単位は諦めて勉強し直せ
171:困ったさん
07/01/09 00:22:52
俺に聞いてもいいぜとか書いてあったから聞いたんですが。
172:デフォルトの名無しさん
07/01/09 00:32:23
聞くのは勝手だが、スレもロクに読まない教えて君に答えるのは馬鹿馬鹿しい。
173:困ったさん
07/01/09 00:37:41
はいはい
174:デフォルトの名無しさん
07/01/09 00:57:06
馬鹿が名乗ってるおかげでNG登録しやすいぜ
175:デフォルトの名無しさん
07/01/09 01:14:27
連続系がアフターバーナーⅡだとすると、離散系はG-LOC
176:デフォルトの名無しさん
07/01/09 14:15:16
x = √(12+√(12+√(12+√(12+√(12+・・・ ・・・)))
xの値は?
177:デフォルトの名無しさん
07/01/09 17:24:51
4
178:デフォルトの名無しさん
07/01/09 22:32:42
>>176
-3, 4
制御系と何か関係あるの?
179:178
07/01/09 22:33:23
あ、-3は違うかw
180:デフォルトの名無しさん
07/01/19 07:41:51
いつもの3MHzの8085の人です。ディスプレイを替えてから4システムほど作りました。
edit間違いは目に見えて減りました。不具合は「タイムアウトはこの位で」の辺りで、
これはつながる相手次第で現場合わせ的なとこがあるのでしょうがないかな。
DOS窓でmake実行するとトコトコ流れずに一瞬で終わってしまうのがなんか虚しい・・・
181:デフォルトの名無しさん
07/01/20 13:14:53
【ネガティブ派遣根性チェック】
3つ以上、思い当たる点があればアナタの性格はひん曲がっており、ネガティブ負け組人生を歩んでいます。
□派遣先の人事権のある社員の意見はたとえ間違っていてもマンセーする
□派遣先から「いつまでもここで仕事してくださいね(安い金でw)」と言われている
□自社に仕事を持ち帰れるように言われるとムカつく
□自社で仕事なんてできるわけがない
□派遣労働の問題点の話題が出ると感情剥き出しにする
□派遣労働の問題を指摘する人は嫌いだ
□派遣先には仕事だけでなく自分のプライベートについても指示して欲しい
□自分の月額金額を知らない
□派遣先社員より自分の生涯収入が低いのは当然だ
□派遣先に尻尾を振り、いつまでも派遣を続けることが大切だ
182:デフォルトの名無しさん
07/01/24 02:26:59
俺、頭悪いけど派遣やったことないからこのチェックリストは当たらないな。チョトヨカッタ
183:デフォルトの名無しさん
07/01/31 03:12:43
LSIC80で、82h、'D'・・・をuartに出そうとして、"\x82Dxxx"という文字列を書いたら、\x82Dは
2Dhという文字になってしまうんですね。"\x82Txxx"という文字列では82hの次に'T'が出るのに。
Dが16進数だからというのは判るのですが、こういう場合どのような表記にすればいいのでしょう?
184:デフォルトの名無しさん
07/01/31 03:42:29
>>183
LSICは
"\x82""Dxxx"
の記法は通るのかな?
通らないなら、\x82とDxxxでリテラルを分けて順次出力するなり、
プログラム側でくっつけてから一気に出力するなり。
185:デフォルトの名無しさん
07/01/31 04:42:32
わを!早起きさんありがとう。対処は"\x82""Dxxx"の記法で、できました。
その後K&Rなんか見たのですが、\xhhで1文字になる、となってました。
コンパイラのバグか、仕様か、微妙なとこを踏んづけたなあと思いました。
186:デフォルトの名無しさん
07/01/31 07:57:08
仕様です。
\xのあと、16進数と見做せる文字が4文字までは数値化されるはずです。
>183の例では、0x82Dと解釈され、文字列中のために上位が捨てられて0x2dとなったのでしょう。
187:183
07/01/31 13:44:48
なるほど。その>4文字まで、ってとこが明記されてるのを見たことないなあ・・・K&Rにも。
その辺は各コンパイラの「実装にまかせる」になってるのではないでしょうか。
183の場合ですが、\x82D0・・・だったので、4文字までならD0になりそうなものですが、
2Dhの後'0'でしたから。
188:デフォルトの名無しさん
07/01/31 15:24:08
トライグラフって3文字だからトライじゃなくて
実装系によるのか?
\x082D0では?
189:183
07/01/31 16:10:01
K&R第2版に載っているトライグラフ系列とは、??の後の「=/'()!<>-」で「#\^[]|{}~」を表現させる
ことらしいです。¥xhhについては、何文字にしろとは書いてなかったです。
190:183
07/02/01 00:40:26
\x082D0・・・と書いたら82hと'D'、'0'・・・になりました。
\x0082D0・・・と書いたら08hと'2'、'D'・・・になりました。
やはり暗黙に3文字ということになっているようです。
191:デフォルトの名無しさん
07/02/01 03:39:25
8085+8251 4CH、8253,8259、ROM,RAMのシステムがあるのですが、CPU周りだけKC80A12に
配線して動かすことって可能でしょうか? ハード屋さんは再開発論外で、ROMを実行できる
のがいいとか言ってて、そりゃあんまりと思いましたが。
82514台の割り込みが8259に入ってたのをIR0~7のうち4本に繋げれば、タイマと割り込みは
自前でできそうに思えます。KC80のリセット時デフォはZ80互換ですし。
前スレでH8でuartエミュレートする相談とかしましたが、KC80のほうが石は安いですよね
192:デフォルトの名無しさん
07/02/01 10:33:29
上げてなかった・・・
193:デフォルトの名無しさん
07/02/02 00:59:53
海を渡って来たコード体系だからトライグラフってな
194:デフォルトの名無しさん
07/02/02 07:58:16
>>193
それじゃ三角形も渡来アングル?
195:デフォルトの名無しさん
07/02/03 09:07:45
KC80A12 ってシリアル1つ持ってるから 8251は3個でいいかもしれないし
割り込み端子もあるんで回路少し工夫すれば8259も不要だろうけど
互換取る為に全部付けるわけ?
でもさ、KC80A12 に8251を4個にとチップ集めて
組み立てるコストから考えるとH8なりM16なり 1個でやった方が簡単だと思うけどねえ
196:デフォルトの名無しさん
07/02/03 09:32:01
>>191
キミは前スレじゃなくて、2年前の・・・2つ前のスレの人だね
1年半、どっかから部品集めては作ってたのか・・・・
UART2個乗ってる1チップで適当なのを2個積んで
ポート同士をつなでハンドシェークで通信させるのがソフトもハードも楽で、コストも低いだろうに
197:191
07/02/03 14:11:03
2つ前でしたか。いや、私はハードいじれないソフト屋=いつもの3MHzの8085の人です。
>>195 8259が不要になるのは解ります。8085がアキバで買えなくなったらど~すんの?って
ハード屋さんに聞いたら、CPUだけ替えて動かんかなあ・・・とか言うんですよ。ボード起こす
コストも手間も無い、って。で、元のボードでZ80互換のCPUなら、脚だけ対応させれば
動かないかなあ・・・って想像してみたんです。これならソフトの移行は簡単だから。
タイマと割込みは内部にできるからノンコネクトで、8251の割込み線をIRnにつないで、
ROM=0~7FFF、RAM=8000~9FFF、8251のI/OアドレスがE000、D000、C000、B000です。
Z80だと例えばE000のI/OはCreg=E000にして、inp/outp (C) とかやるんですよね?
198:デフォルトの名無しさん
07/02/03 14:53:03
そういう事を考えるのがハード屋の仕事だと思うのだが、俺がおかしいのかな
199:デフォルトの名無しさん
07/02/03 16:17:37
俺からの助言
そのハード屋リストラ汁
200:デフォルトの名無しさん
07/02/03 16:40:33
足の変換ボード作るのもコストだし、結局は手直しが必要だろうに
OAKS16MINI
URLリンク(www.oaks-ele.com)
これ2つ買って パラレルポートをつないだ方が簡単だと思うのだが?
201:デフォルトの名無しさん
07/02/03 16:47:57
>>197
何をやりたいかで手段を考えるべきではないだろうか?
202:デフォルトの名無しさん
07/02/03 16:49:22
Z80なら、マクロ出てるだろ
いっそFPGAでやたらPinだけでてるサブ基盤作って使いまわせ
203:191
07/02/04 03:59:56
>>199さんに1票ですが、私なんかに仕事くれるのもそんなハード屋さんだからなんですよね。
>>200さんの見てみました。>>196さんのお奨めとポリシーは似てるみたいですね。2-CPUで
ハンドシェイク取る機能の作りが厄介そうな気が・・・共有メモリとか、そのメモリの排他制御とか・・・
>>201 やりたいことは、4800のuart、4CHの交通整理(合流・分流・選択・除外・変換)です。
新しくCPU決めてボード起こしなおすと\100ぐらいかかるからできない、ってハード屋さん
言うんですよ。 それで小手先で石だけ替える技がないかなあと・・・
>>202 命令セット見れば思い出すのでマクロは要りません。
FPGAって判りませんが実験用の基板みたいな奴のことですか?
足の変換ボードだけのコスト、CPU+uartチップ(+電源+コネクタ)のコストって考えると
足の変換ってのも・・・あ、それもCADで図面書いて基板屋に外注するとすごいコストになるのかな
204:デフォルトの名無しさん
07/02/04 04:06:44
>新しくCPU決めてボード起こしなおすと\100ぐらいかかるからできない
(′・ω・`)つ ⑩⑩⑩⑩⑩⑩⑩⑩⑩⑩
アゲル
205:デフォルトの名無しさん
07/02/04 04:44:51
今の知識を持ったまま過去の自分に戻りたいのですが、どんなシステムが必要ですか?
206:デフォルトの名無しさん
07/02/04 04:49:13
>>205
D.P.S.
207:191
07/02/04 05:30:33
この業界の人って夜型多いイメージがあるのですが、けっこう早起きが居るんですね。
>>204 アリガト・・・マソなんですよ、実は
208:デフォルトの名無しさん
07/02/04 09:15:21
秋月の加速度センサかなんかをPICで
計測するプログラムをCで書いてる?
URLリンク(n.limber.jp)
209:デフォルトの名無しさん
07/02/04 10:20:52
>>203
そんなハード屋なんかから仕事貰って自分を落としてどうする。
おまえ、うちの会社に来い。大した給料は出せないがFPGAを一から勉強させてやるぞ。
210:デフォルトの名無しさん
07/02/04 10:46:12
>>203
1つのメッセージのブロックサイズはどれくらいなの?
せいぜい256バイト程度でしょ?
あと、ハードフローは使ってるの?4800程度ならフローも不要じゃないの?
だったら >>200のCPUボード使って30万くらいでソフト一式作ってあげるよ
211:デフォルトの名無しさん
07/02/04 11:03:13
勉強させてくれるなんて いい職場だ。俺が行きたいくらい。30overだけど。
212:デフォルトの名無しさん
07/02/04 11:04:27
>>209
ぼくもいっていいですか?
213:デフォルトの名無しさん
07/02/04 11:20:21
この業界で「勉強する」ってことは、いきなりそのJOBに突っ込まれることですが何か。
214:デフォルトの名無しさん
07/02/04 11:34:32
それを希望しているのだから嬉しくて仕方ありません
215:デフォルトの名無しさん
07/02/04 11:37:47
>>203
ハンドシェークって・・・・チップ間の通信は全部ソフトで実現するんだよ
ポートは沢山あるから
片方は完全にスレーブにして、シリアルから1バイト受信する都度 FIFOに入れてパラレルで送信するだけ
逆にデータを送る時もFIFO入れてマスターが全て管理するようにすれば
何の工夫もいらないだろう
⇔データ8bit 双方向
→COM2/3 COM2かCOM3かの種別
→ReqRead バスから読みたい
→ReqWrite バスに書きたい
←ACK バスにデータを書いたか、バスからデータを読んだかしたよ
←NG 今データ無い・又は送信出来ないのにそんなReq送らないでしょ
←COM2-今送れない(送信FIFOフル)
←COM3-今送れない(送信FIFOフル)
←COM2-受信データ有
←COM3-受信データ有
216:デフォルトの名無しさん
07/02/04 12:00:34
スレーブの処理:ポーリング(1ms程度で見れれば十分)
・ACK/NGを出してる間はReqが落ちるのを待ち、ACK・NGを落とす
・バスはオープンにしてReqが何も無ければ待つ
・ReqWriteがあれば
FIFO-Busyでなければバスから読んでFIFOに書き ACKを立てる
FIFO-BusyならNGを立てる
・ReqReadがあれば
FIFOデータをバスに書いてACKを立てる
FIFOデータが空ならNGを立てる
--- 上で待つと書いてるのは実際にそこで待つのではなくreturnして次のポーリングを待つという事
217:デフォルトの名無しさん
07/02/04 12:10:21
スレーブには他に 送信用・受信用x2CH分の合計4つのFIFOの処理と
そのステータスをポートで表示するだけ。
だからまあFPGA使っても殆ど同じコードというか、同じ事するだけだね
マスターもスレーブとの通信用に小さいFIFOを4つ持って
NG/ACKを見て、それが落ちてれば送受信FIFOとステータスを見て
送りたければバスに書いてReqWrite
データを読みたいならReqReadするだけ
218:デフォルトの名無しさん
07/02/04 17:12:25
>>207
きっと>>204にとっては、まだ夜。。。。。
219:デフォルトの名無しさん
07/02/04 17:51:39
いちいち早起き早起きうるせーな
死ねよ
220:デフォルトの名無しさん
07/02/05 01:04:30
おはよう諸君
221:デフォルトの名無しさん
07/02/05 01:27:01
おはよう
222:デフォルトの名無しさん
07/02/05 03:20:11
おはよう
223:191
07/02/05 05:55:43
>>219さんおはようございます。ごめんなさい、もう言いません。
>>215-217 ありがとうございます。勉強になるなあ、メモメモ・・・
>>210 ブロックは建前上256、実質150ぐらい。フローも無しです。
OAKSミニ、MPUの仕様のとこ見てみたら、RAMがちょっと少ないですね。ringの他に、
再送用に記憶したり、複数のCHからの情報を合成したりする記憶も要るので。
元のシステムで8KBなのは石が遅い分もあるのですが、せめて4KBぐらい・・・
ってSRAM増設の事例が出てましたね。 ソフト的にやりたいことは全部出てますね。
「汎用ボードでやったら?」ってハード屋さんに言っても、工場の基準とかあるからうんとは
言わなそうです。(けっこうダーティな環境で使われるので、9pinDSUBなんかじゃなくごつい
接続端子がついてます。) 通信周りだけならこんなに安いんだよ、って喚起するのはありかな。
224:デフォルトの名無しさん
07/02/05 07:49:39
という事で、内蔵RAM8K シリアル2CHの1チップマイコンを2個乗るボードを作ったらいいと思うよ
他に必要なのはMAX232C系のレベル変換だけでしょ
そんなもん、ピン変換の基板自作するコストで作れるでしょ
俺なら片面基板でも作れるけどね
この条件ならいくらでも探せるだろ。
Z80系が好きなら東芝のTMP91シリーズなんてのもあったけど・・・もう廃品種で
今はその上位のTMP900シリーズだもんな
225:191
07/02/05 13:33:00
1チップマイコン+uartチップよりも1チップマイコン2個のほうが安いんですか(*o*)
2CH内蔵のチップ+2CHのuartチップではどうなのでしょう?
Z80は特に好きでもないので、H8系なら楽かなあ程度ですけど。
226:デフォルトの名無しさん
07/02/05 13:40:11
>>214他
やる気があって高くない給料に納得できるのなら是非私の勤める会社に。
今、来年にはFPGAをばりばり使える(予定の)技術者を募集しています。
今年はC/C++を書きながらのFPGAの勉強になるから楽ではないと思うけど。
227:デフォルトの名無しさん
07/02/05 14:04:12
なひさんですか?
228:デフォルトの名無しさん
07/02/05 14:17:24
会社が九州の上のほうだったら飛びつくんだがな
229:デフォルトの名無しさん
07/02/05 14:51:22
>>225
KC80はROM/RAMを外付けしなければいけない。
このサイズのROM/RAMは保守部品になっていて高いよ
8251もパッケージが結構大きいから値段はそれなりにする
どんな購入ルート持ってるか判らないけど
H8/3687 あたりなら高くても1個1,300円程度
1チップCPU2個の方が安価だと思うよ
UARTはパソコンにもRS232Cが付かなくなったように消えてゆく部品
これをわざわざ採用してしまえば、結局部品調達に苦労するのが見えている
どうしても安価にというならPICあたりを>>215の方法でUARTとして使うくらいだろうけど
結局複数の部品使うと苦労するよ。
230:225
07/02/05 17:39:45
>>229 ありがとうございます。なるほど、チップの機能ではなくそういう事情で高くなるんですね。
今度ボード起こすときはROMもRAMもuartチップも積まない・・・CPUと端子だけみたいに
しないとコスト出せないのかあ。 スレーブのほうが低機能でよくても、異なるCPU積むより
同じの2個のほうが調達コストとかデバックとか考えたら安くつくんでしょうね。
231:デフォルトの名無しさん
07/02/05 18:08:50
>>230
余程の価格差がないなら同じ物を二つ積むべし。
特にハード周りの調整コストが段違い。
232:デフォルトの名無しさん
07/02/05 21:55:58
白けるけどKC80作った人は自殺したと聞いた。
233:デフォルトの名無しさん
07/02/06 01:08:43
原因は?やっぱり仕事がらみ?
234:デフォルトの名無しさん
07/02/06 07:09:32
基板上の部品一つが入手出来ないだけで
結局作り直しになるんだから、長期出荷の小ロット品は、部品出来るだけ使わない事だね。
その1チップマイコンが廃品種になる可能性もあるけど、
そうなったら諦められるだろ? というか出来るだけそのチップ使って在庫しておくしかないね。
そういう意味でPSoCには期待して見てたけど、なんか品種がどんどん増えてるからちょっとアレだな。
ROM/RAMサイズはフルスペック共通。品種種別はピン数だけくらいじゃないとな
235:デフォルトの名無しさん
07/02/06 07:25:46
俺も、シリアルのEE-PROMだけが廃品種になったせいで設計しなおしになったり
(そのEE-PROM 当時 TVチューナー用に使われてて安価だったもんだから)
電子VRが廃品種になっただけで、設計しなおしのコスト回収出来そうにない
売り上げだったもんだから こっちも廃品種にするしかなかったり
今はもうICは1チップマイコンと アナログは358/393だけしか使わないぞと
74HCxxxとかのロジックも使ってしまう事はあるけど、怖いんだよな
だから、トランジスタと、フォトカプラを大量に使う設計に
236:デフォルトの名無しさん
07/02/07 06:47:20
ジェリー・ワインバーグのXX人間学シリーズで今でも役に立ってること:
靴下は全部同じ柄にする-->洗濯したとき合わせるのが楽。ローテーションで平均にへたる。
237:225
07/02/08 07:41:44
M16Cって、H8とぜんぜん違うアーキテクチャのシリーズなんですね。
三菱の石がずっと生き残ってきてるんでしょうか? H8よりは使いにくそうな気がしました。
238:デフォルトの名無しさん
07/02/08 09:00:25
H8/300はレジスタ型 演算はレジスタ同士が基本 80/86系
M16はアキュムレータ型 演算はアキュムレータとメモリ間 68/65系
M16はH8に比べて品種が少ないのと
自動車分野でも使われてるから、比較的長寿命かなと期待してる
239:デフォルトの名無しさん
07/02/08 20:54:14
あるルネサス代理店の話。
・H8系はROM食うわおそいわで半端。M16系にしたほうがいい。
ほんとなんかねぇ。
240:デフォルトの名無しさん
07/02/08 20:56:41
M16ってスタローンとかシュワが昔脇に挟んで乱射してたやつみたいな名前だな
241:デフォルトの名無しさん
07/02/08 21:10:58
M16系はアキュムレータ型でメモリと演算するから
ロード⇒レジスタ同士の演算⇒ストア が必要なH8に比べたら確かに効率的。
だからレジスタが少なくてもコードは組みやすい
レジスタが少ないから命令長も比較的短い
あ、H8にもH8/300だけじゃなうて、
H8/500シリーズってのが昔あって、
これはM16Cと同じようにレジスタとメモリ間で演算が出来た。
同じクロック数なら500シリーズが実際速かった
でもいつの間にか消えてっちゃったね
ただH8/300はレジスタが32bit化されてるけどM16Cはレジスタペアで
RAM空間が16bit以上になると多少面倒(でもM16Cの方が内蔵RAMは豊富なんだよね)
242:デフォルトの名無しさん
07/02/08 21:35:01
例えばH8だと Cで a++ なんて書いても
1、メモリ⇒レジスタ
2、INC レジスタ
3、レジスタ⇒メモリ
の3命令とアセンブラレベルでなる
M16Cだと inc 命令1つ(3サイクル命令)
243:225
07/02/09 04:02:50
なるほど、そういうアーキテクチャでしたか。H8/500はさんざん使いました。
割り込みとタスク両方からカウンタを触るのに、di/ei しないでいいのが嬉しかったりしました。
M16Cの内蔵メモリは、1K/2Kではありませんか?H8/16bitだと8K/16Kのシリーズがありましたが。
>>240 三菱は兵器作ってるんで、案外意識してたりして・・・
244:225
07/02/09 04:16:58
ごめんなさい、M16C/26Aを見てました。28A、29AシリーズならRAM=8K/12Kがありました。
ルネサスのコンパイラはタダですよね?H8のコンパイラはライフボートのよりちょっとアホだった
覚えがありますけど。
245:デフォルトの名無しさん
07/02/09 07:45:15
H8S/2649はUART4チャンネル持ってるし
M32CシリーズならUART5チャンネル持ってるけど、
これ1個ってのは誰も勧めないなんだな
246:225
07/02/09 16:55:35
そ~んなに上位のほうまで(^o^)見ませんでした。 さすがに石が高すぎるでしょう。
それより、前々スレで教えてもらった、タイマ端子でuartエミュレートさせるのを1CH分やる
手法のほうが、全体では安く上がるとおもいます。これはお試しコード書いてみていける、
とおもいました。4CHのうち1CHだけドライバ層を書き換えるだけでアプリは同じですみます。
あとはハード屋さんがいつボード起こす気になってくれるかなんですよね。
247:デフォルトの名無しさん
07/02/14 06:13:14
SHなんかだとリアルタイムクロックが組み込まれてたりする機種もありますね。
それって当然ですけど天文時計とはずれてきますよね?
だからソフトでときどき書き込んでやる必要がある<--これってパソコンでも原則おなじですよね?
248:デフォルトの名無しさん
07/02/14 06:43:27
ミサイルがJJYの信号拾って時刻同期してたら間に合わないんだよね
249:デフォルトの名無しさん
07/02/17 02:53:39
JJYが判らないけど、ミサイルは時刻同期なんかしないんジャマイカ。
起動時からの慣性誘導+GPS情報による補正で地球上のたいていの所には行けるでしょ。
250:デフォルトの名無しさん
07/02/17 05:41:00
>>249
GPSって時刻情報も含むんジャマイカ。
251:デフォルトの名無しさん
07/02/17 07:16:47
>>250
なんの為に正確な時刻に同期する必要が?
252:デフォルトの名無しさん
07/02/17 09:14:29
測定の殆どは時間刻みの正確さに頼ってる事がほとんどだからじゃないの?
時間刻みと時間とは関係ないけど、離れた2点で時間刻みを正確に得るには
時間が正確なのが一番簡単でしょ?
253:デフォルトの名無しさん
07/02/17 14:32:50
>>251
時刻によって衛星の位置が変わるから
254:デフォルトの名無しさん
07/02/18 17:01:34
利用料金は米国債で支払われている。買わないと精度が落ちる。
255:デフォルトの名無しさん
07/02/18 17:17:02
意味分からんなw
利用権買ったオマケに米国債が付いてくるなら
一粒で二度おいしいじゃんw
256:デフォルトの名無しさん
07/02/18 20:19:11
>>253
いや、そもそもCPUのタイマじゃ間に合わんほど
長く飛んでるもんなのか、ミサイルって?
相対的な時間が十分に拾えるなら時刻情報はいらんだろ?
257:デフォルトの名無しさん
07/02/19 11:28:15
3分もあれば火星から月まで来るようなやつら相手に
GPSもくそもないわな
258:デフォルトの名無しさん
07/02/19 21:02:28
>>257
なんだそれは
259:デフォルトの名無しさん
07/03/01 08:02:48
保守
260:デフォルトの名無しさん
07/03/02 06:56:36
移転で見失ってたわりに伸びてなかった