自作”CPU”キット「TTM8」組み立て記録(後編)とミスのリカバリ
ちょっと時間かかりましたが、自作CPU「TTM8」完成しました! が、残念ながらちょっとやらかしてるとこがいくつかあります。。
というわけで今回は残り半分の組み立てとミスったとこのリカバリ記録です。
組み立て
前回の続きからです。
残りの背が低め部品取り付け
背が低い部品から取り付けていて残ってるのが以下です。それぞれ数は少なめです。
- セラミックコンデンサ x4
- タクトスイッチ x2
- クリスタル
- 可変抵抗
- バッテリーホルダー
まとめて付けました。ここから背の高い系です。
LED取り付け
トータル118個で黄色、赤、緑の3種類です。数では一番多いパーツでした。 こんな感じで取り付けます。
取り付けたところを撮ったら基板に書かれてる番号がLED内に映りこんでくれました。
じゃんじゃん付けます。
並んだところもかっこよきですね。
前回あまり撮らなかった裏側はこんな感じです。はんだ付けして足を切る、を繰り返します。
集合抵抗取り付け
次は集合抵抗です。
パーツ間の狭い隙間に収まります。はんだ付けの際は傾かないように要注意です。
残りの小型パーツ取り付け
こちらも数は少なめです。極性があるので間違えないように気をつけます。
大き目パーツ取り付け
CPU本体は残ってるこれらを付けたら完成です。
- ボックスヘッダ x2
- スライドスイッチ x2
- ピンヘッダ
- USB-Bコネクタ
- 押しボタンスイッチ
スライドスイッチはもっと先につけた方がよかったかもしれません。 写真のトグルスイッチは本体用じゃないので後回しです。
完成したのがこちらです。基板にびっしり詰まってますね。
基板だけだった頃と比べても体感でわかるくらいずっしりしてます。
いろんな角度から。
プログラムボード作成
続いて2つ目の基板を作ります。
RAMにプログラムを書き込むアイテムです。
とりあえず背の低いものから。抵抗、IC、ダイオード、ICソケット、タクトスイッチを付けた状態です。
残りはボックスヘッダ、ぼたん、トグルスイッチ、7セグですが、撮影を忘れてしまったので省略です。。 完成したのがこちらです。
重ねるとこんな感じに。
かっこいいのが完成しました。
電源投入
ケーブルをつなげてスイッチオンすると、
ピカピカしてますね!やっと完成と思いきやおかしなとこがいくつもありました。
問題と解決策
サクッとは動かなかったので1個ずつ直します。
1. 7セグの表示がおかしい
7セグは左2桁がアドレス、右2桁がデータを表示しています。このうちデータ部の10の位の左下と1の位の右下が点灯してくれません。
アドレス、データともに"0"を入力するとこんな感じです。
数字自体は4桁すべて表示されてますが、データ部だけ点灯されない部分が出てしまいます。
こちらは、アドレス部に"2"を、データ部に"11"を入力した状態です。 データ部にもなぜかうっすらと"2"が表示されてしまいます。
おそらくプログラムボード側の問題だと思いますが、こちらはいまだに原因不明です。 プログラム自体は入力できてそうですが、数字を頭で補完しないとわからないので地味に不便です。。
2. プログラムの書込み操作を行っても書き込まれない
マニュアル通りにプログラムを書き込んでみたのですが、何度やっても入力した値がRAMに保存されません。まれに保存されますがほぼNGです。 さらに、データバス内容を表示するLEDが風前の灯火状態です。消えてしまうこともあります。 CPUクロックは手動にしたり停止しても変化なしでした。
まず試したのは基板裏側のブラッシングです。ごみが残ってそうなとこを払ってみましたが効果なしでした。
次にはんだ付けの悪そうなとこを拡大鏡でのぞいてみました。
怪しそうなとこをチェックしてみましたが、問題ありそうなとこは見つけられませんでした。
60X、よく見えます。
次はケーブルの信号をチェックしてみました。ケーブルをブレッドボードまで引っ張っていろいろ試してみました。
バスの信号線をLEDにつなげてみましたが、本体と同じように光ってくれたのでケーブル問題ではなさそうです。
解説本に書かれていたのですが、プログラムボードを使わず手動で信号を操作する方法もあるようです。試してみましたがダメでした。 7セグ問題もありますがこれとは別問題の可能性が高そうです。
最後にパーツのつけ間違いを確認しました。1個ずつチェックすると、ありました。つけ間違え。一番最初にこれをやるべきでした。
抵抗が2か所間違ってます。
場所 | 誤 | 正 |
---|---|---|
R24 (写真左側) | 10KΩ | 100Ω |
R33(写真右側) | 100Ω | 100KΩ |
取り外しに苦戦しましたが30分くらいかけて外せました。
パーツには若干の予備が同梱されていたので、ありがたく使わせていただきました。 ですがホールに詰まったはんだまではどう頑張っても取り除けなく、表面への取り付けは諦めました。
仕方なく裏側にこんな感じで取り付けてみました。素人のDIYはこんなもんですよね。。
電源を入れると見事解決しました!しっかり入力した値が書き込まれます。LEDも元気に点いてくれてます。これは場所を特定するのに時間がかかりました。
3. 電源スイッチの取り付け
これは問題が2つあって、1つは向きを逆に取り付けてしまいました。PCの電源と違って押し込むとONの状態がキープで戻すとOFFになりますが、逆になっています。
2つ目は取り付けが斜めになってしまってます。はんだ付けがへたっぴな証拠ですね。。 本体が動かないレベルの問題じゃないので、これはとりあえずこのまま使ってます。
4.減算信号LEDが点灯しっぱなし
減算信号を示すLEDが常に点灯しっぱなしの状態です。
こちらは取り付けミスなのか仕様なのかわかりません。ミスってたらのちのち別の問題が発覚するかもですね。。
完成
というわけで何とか動く状態にまでたどり着けました。
Hello World的サンプルコードが書かれてたのでためしてみましたが、こちらはまた別の記事で。 プログラムはオリジナルの命令セットで作るようなので、試しつつ慣れてきたらいろいろ作ってみようと思います。