今日届いた基板たち

JLCPCBからSF Expressで今日届いた基板です。

Z8001-M20基板のJLCPCBの生産進捗です。

SF Expressの貨物追跡状況で途中1日遅れかなと思いましたが最終的に1日早く着きました。

広告

ArduinoMegaでApple1

ArduinoMegaにRetroshield for Arduino MegaのR6502を追加してApple1として使ってみました。

基板は、他のボードを作った時のスペースに間借りしています。こちらでキットとして購入できますので気になった方はいかがでしょうか。

ArduinoMegaにk65c02_apple1を書き込んで起動した状態です。LCD Keypad Shieldを付けていますのでdefine USE_LCD_KEYPAD 1に変更しています。

WOZモニタで0番地、FFF0番地から16バイトをダンプ後に、BASICで”Hello World”を表示してみました。

LCD Keypad Shield の表示を見ると動作速度はおおよそ150KHzの様です。RetroShield 6502 for Arduino Megaの詳しい動作説明はRetroShield 6502 Operationにあります。

このRetroShield 6502 for Arduino Megaは使用するCPUによってジャンパーの切替えが必要です。

  1. R65x02
    • 1ピン:ショート、36ピン:オープン
  2. W65C02
    • 1ピン:オープン、36ピン:ショート 

今回はR6502を使用していますので1ピン(VSS):ショート、36ピン(BE):オープンで使用しています。

RetroShield 6502 for Arduino Mega で今回はApple1を使用しましたが、Arduinoのスケッチには下記があります。

  • k65c02_apple1
  • k65c02_c64
  • k65c02_kim1

このRetroshield for Arduino Megaが対応しているCPUは

  • MOS: 6502
  • Motorola: 6809
  • Intel: 8031 – 8085
  • RCA: 1802
  • Zilog: Z80

でこれからも増えていくようです。

覚え書きとしてこのシールドには”DIO2.h”が使用されている為Arduino Library ListよりDIO2をインストールしました。このライブラリーはIOの高速化対応みたいなので調べてこれから使用させていただく予定です。

PICの学習中

これから使用しようとしているPICが、本屋の本を見ていたら通称PIC16F1シリーズと出ていましたので久しぶりにPICの本を購入させていただきました。

前回購入したのはUSBを使用する為に購入した本でこれで2冊目です。もちろん著者は後閑さんですね。

この本は、2018年4月には出ていたのでもっと早く気が付いていればと思います。

PIC16F1シリーズ、8ピンはクロックジェネレータやボーレートジェネレータ&リセットに、多ピンの物はブートローダ等に使用します。機能的にも端子配置からもおすすめですね。

PIC16F1シリーズの使用予定品です。
            RAM   ROM
8ピン PIC12F1822  128Byte 2KWord
8ピン PIC12F1572  256Byte 2KWord
8ピン PIC16F18313  256Byte 2KWord  
14ピン PIC16F18323 256Byte 2KWord  
20ピン PIC16F18346 2KByte 16KWord  
28ピン PIC16F18857 4KByte 32KWord
40ピン PIC16F18877 4KByte 32KWord  

Apple1 のドキュメント

Apple1のドキュメントやBASICのプログラムは、Briel Computer の replica1用に提供されているCurrent replica 1 plus CD: replica 1 plus CDApple1 をダウンロードして頂くのが良いと思います。

ダウンロードしたファイル内にはreplica1の回路図やファームウェアなどもありますので興味のある方は詳しく調べてみてください。

  • r1pluscd.zip\CD\manuals APPLE1のドキュメント類があります
  • r1pluscd.zip\CD\software BASICファイルがあります

replica1ですが現在はReactiveMicroの方で入手可能ですので興味のある方どうぞ。

R6502 Apple1 Replicaを作る

Apple1レプリカも今回で3機種目です。L-Star PlusA-ONEのクーロン、そして今回がR6502 Apple1 Replicaという3種でApple1の本当のクーロンは残念ながらありません。

Hvetebolleで公開されているR6502 Apple1 Replicaを作らせていただきました。こちらのバージョンはビデオ出力&キーボード対応はありませんがArduino NANOを使用したUSBシリアルでのPC接続が可能な構成になっています。また、RC2014に対応したバックプレーンにて拡張も可能な構成になっているようです。

作成に当たってGithubで公開されているデータについて下記変更をさせていただきました。変更させて頂いたKicadおよびPIC12F1822のデータはこちらに公開させていただきます。ライセンスはオリジナルの”GNU GENERAL PUBLIC LICENSE”です。

  • PIC12F1822の追加
  • X1の代わりにPIC12F1822で1MHzのクロック供給
  • NE555の代わりにPIC12F1822でパワーオンリセットおよびリセットSWの500mseリセットを生成

部品表

品名品番個数商社
ROM28C2561
RAMHM622561
CPUR6502(WD65C02)1
IC74LS001
IC74LS041
IC74LS1381① ②
ICMCP23S171  ②
ICMC68211
ICPIC12F18221① ②
ICArduino NANO1  ②
コンデンサ0.1μF(104)8① ②
コンデンサ0.01μF(103)1① ②
抵抗3.3KΩ5  ②
抵抗330Ω1  ②
抵抗10KΩ1  ②
ICソケット8pin1① ②
ICソケット14pin2① ②
ICソケット16pin1① ②
ICソケット28pin300mil1① ②
ICソケット28pin600mil2① ②
ICソケット40pin2① ②
ピンソケットピンソケット1×152  ②
ジャンパージャンパーピン8① ②
ピンヘッダーピンヘッダー 1×22① ②
ピンヘッダーピンヘッダー 1×33① ②
L型ピンヘッダーL型ピンヘッダー 1×21① ②
L型ピンヘッダーL型ピンヘッダー 1×401① ②
LEDLED1① ②
タクトスイッチ6mx6m1① ②
商社は
①オレンジピコショップ秋月電子通商

L型ピンヘッダーについては各社で扱っている形状が異なります。
個人的には②の形状を使用しています。(1x40は実装していません)
RC2014用の1x40の形状は①のタイプが通常使用されている様です。

Arduino NANOはamazonにてUSBシリアルがCH340の物がUSBシリアルがFTDIに比較して安いです。
私はこちらの物を購入しました。

オレンジピコショップさんで3,603円=3,393+210(IC、ICソケット、ジャンパー等)
秋月電子さんで1,385円=885+500(IC,抵抗、コンデンサ、ピンヘッダー等)
Arduino NANO 450円
で基板以外に部品代で5,500円ほどかかります。
参考に各ショップでの購入品を下記に追加いたしました。HM62256が在庫なしの為630円抜けています。

PIC12F1822を使用しない場合は、
NE555は②にあります。
水晶発振器は 千石電商オンラインショップ にあります
 水晶発振器 1MHz ハーフサイズ 水晶発振器 1MHz フルサイズ 

組付け

基板と部品がそろったら背の低い部品から取り付けて半田付していきます。

抵抗を実装します。(R2,R3,R4は実装しません)

  • 黒枠 R1,R6,R7,R8,R10に3.3KΩを実装します
  • 青枠 R5に330Ωを実装します
  • 黄枠 R9に10KΩを実装します
  • USB POWERのL型ピンヘッダー2×1を実装しても良いと思います

コンデンサを実装します。(C6,C11は実装しません)

  • 黒枠 C1,C2,C3,C4,C5,C7,C8,C9に0.1μF(104)を実装します
  • 黄枠 C12に0.01 μF(103)を実装します

ICソケットを実装します。(U6は実装しません)

  • U1,U8に40ピンICソケットを実装します
  • U2,U4に28ピン600milICソケットを実装します
  • U3に16ピンICソケットを実装します
  • U5,U7に 14ピンICソケットを実装します
  • U9に28ピン300milICソケットを実装します
  • U10に8ピンICソケットを実装します

LED、タクトスイッチ、L型ピンヘッダー、ピンソケットを実装します。

  • LEDは、上記のように足の長い方がアノード、短い方がカソードで写真に合わせて挿入し実装
  • タクトスイッチを実装
  • L型ピンソケットは黄色①、黒②の商社で扱っている者になります
  • ピンソケット1×14はArduino NANO用2個に実装

ピンヘッダーを実装します。

  • 2x1のピンヘッダーを2か所実装
  • 3x1のピンヘッダーを5か所実装

ジャンパーピンを実装します。

  • 黄枠 ショート
  • 青枠 WD65C02の場合はオープン、他のCPUの場合はショート
  • 緑枠 イネーブル側をショート(イネーブル位置は基板裏側を確認)
  • 水色枠 ROMに0番地から書き込みましたのでグランドとショート

水色枠の拡大写真です。(C12は裏側に0.01μFのコンデンサを実装しています)

プログラム書込み

1. Arduino NANOへの書込み 
  RC6502-Apple-1-Replica-master\RC6502 Serial IO\pia_communicator\pia_communicator.ino
  スケッチをコンパイルして書き込みます。
  コンパイル時にMCP23S17-masterライブラリが必要になります。
Githubには、 MCP23S17 のライブラリが数種あります。私が使用させて頂いたのは下記URLのライブラリでlibrariesの下に MCP23S17-master で展開して使用いたしました。
 URL:  https://github.com/MajenkoLibraries/MCP23S17 

2.28C256への書込み
   RC6502-Apple-1-Replica-master\RC6502 ROM\firmware\8K Basic & Monitor.bin 
  を0番地( $0000-$1FFF )から書き込んで下さい。

3.PIC12F1822への書込み
  R6502ckgen\R6502ckgen.hex
  を書き込んで下さい

1,2についてはgithubからダウンロードしたファイル
3についてはこのblogからダウンロードしたファイル

ICを実装

この画像には alt 属性が指定されておらず、ファイル名は 190816003.png です
  • PIC12F1822
  • MCP23S17
  • MC6821
  • R6502
  • HM62256
  • 28C256
  • 74LS138
  • 74LS04
  • 74LS00
  • Arduino NANO

確認

  • テスタなどで電源、グランドがショートしていないことを確認
  • 半田付け忘れが無いか確認
  • ジャンパー設定を確認

APPLE1のドキュメントやBASICファイルの入手方法を参考にして下さい。

R6502 Apple1 replica の使い方はこちらを参考にしてください。 (作成予定です)

Apple1 Replicaの3種目を作った

L-Star PlusA-ONEのクーロン、今回がR6502 Apple1 Replicaと3種類目のApple1レプリカを作りました。

R6502 Apple1 Replica で今回作成したボードです。
WD65C02とHD63B21を使用していますのでロジックICは74HCシリーズを使用しています。
PIC12F1822の8,7ピンがオープンで1MHz、ショートで2MHz動作になります。
WD65C02は2MHzでもOKでした。(当たり前ですね)
個人的にA-ONEと言うApple1 Replica品のクーロンです。
1番最初に作ったボードです。

今回作成したR6502 Apple1 ReplicaはHvetebolleで開発の経緯をgithubでそのデータを公開されています。

水晶発振器とNE555を使用した回路をPIC12F1822に置き換えた変更版を作成させて頂きました。今回の変更時にArduino NANOで対応する方法もありましたが今回はPIC12F1822に置き換える方法を選択させていただきました。

変更したデータについては作成方法と合わせてKiCADデータ&PICのソースを公開させていただきます。

MB8861/70BL基板が届いた

No1910のMB8861/70が届きました。

SBC8861/70BLボードはSBC68系の拡張コネクタ端子仕様になっています。SBC80系とは電源を含めて端子位置が異なるのでSBC-BUSを使うときは設定を確認しないとね。

SBC8861/70BLボードです。

まだPIC16F18857が無いので作っても動作確認できません。

先ず抵抗とダイオードを実装。

次は、コンデンサを実装。

そしてICソケットを実装。

使用しない部品を除いて実装完了。

MiniUSBは、裏側にUSBシリアルCH330と一緒に動作確認後にテスト用に実装予定です。水晶振動子はクロック精度が必要な場合に実装する予定の為、私は使用しないと思います。

NSC800 DXボード2枚目です

フラットパッケージのICが来ましたのでNSC800DXボードの2枚目を作りました。

今回は、オプション部も実装済みです。まだ1枚目のデバッグが終わっていないので動作確認を実施できません。

JP5,JP6は、外部SRAM使用切替え用のソリッドジャンパーで1-2をパターンカットし2-3を接続しています。

D8755へのゼロプレシャーソケット搭載ですが一応可能なようです。ギリギリです!

NSC800 dxボードを作った

NSC800DX No1907を組付けました。

NSC800DXの最小構成(MCS8085相当品)

NSC830が無いのでD8755を代わりに使用しています。この3チップの構成はMCS8085相当になります。

この構成の問題点はD8755はNMOS品の為インタフェースはTTL相当でNSC800はCMOS品でD8755からNSC800へのVIHのレベルが仕様外動作(実力での動作)を期待している所です。

D8755にはMCS8085で使用していたMMー8000のRAM&IOアドレスを修正したバージョンを作成しMCS8085用サブボードを付けて動作確認です。

この構成では7セグLEDが消灯しています。
動作していないようですね

残念ながら動作しませんでした。確認の為NSC800の9ピン(CLK)の周波数を確認しました。

5MHzの水晶をNSC800の下に付けてありますので期待は2.5MHzが出力される予定で2.499MHzで期待通りOKです。

NSC810はRAMが128バイトでD8156の256バイトより少ないのでダメもとでD8156に変更して動作確認をします。

D8156では7セグLEDに表示が出ます。またキーの0からFの入力もOKです。という事でNSC800はD8755,D8156とのインタフェースは実力でできている様です。

ファンクションキーが動作しないのはテーブルアドレスの修正忘れが原因ですのでこちらはD8755のROMを変更すればよさそうです。

NSC810を使用した時に動作しない原因について現在は不明です。ソフト修正のバグかインタフェースなど再度確認いたします。

基板が届いた

No1907,08,09の3種の基板が届きました。

届いた基板ですが、No1907はゼロプレッシャーのソケットの位置を合わせたつもりが1穴分ずれていました。NSC800,180,8755を上方向に変更したrev02のアートワーク修正を行いました。動作確認がまだですから修正は逐次追加予定です。ただしrev02を作るかは未定です。

No1909は、P1,P2のコネクタの1番ピン位置が誤っていました。それとP1,P2の間隔が誤っているではないですか、これは大きな問題です。こちらもアートワーク修正してrev02作成しました。こちらはPICのソフトと動作確認ができればrev02の基板は作る方向ですね。

これから基板を組付けてゆっくり動作確認予定です。