SSブログ

「モトローラ6800伝説」で遊ぶ 6809編その10 まだまだ63C09 [マイコン]

63C09_1.jpg
写真のようにしてシリアルポートに抵抗をかましました。現在、10kをつけてだいぶ安定して動くようになりました。
ですが、どうも、電源OFF時に電解コンデンサの放電が不十分な様に感じます。
放電が早まるように、パイロットランプ(LED)を取り付けたのですが、もうひとつ、、、。
CMOSを前提にコンデンサの値を決めた方が良いのかな。
まあ、しばらく放置後、電源を入れたときはBASICプロンプトが出るようになっています。
実は、これ、部品集めがルースキット説明書発表より早かったので、手持ちの中から選んでしまい、電解コンデンサの容量が説明書より大きくなっています。
次は、説明書どおりの容量でためしてみます。

それと、LEDの付け方が気に入りません。別の方法に変えます。

nice!(0)  コメント(0) 

「モトローラ6800伝説」で遊ぶ 6809編その9 HD63C09Pだ [マイコン]

先日、vinatgechips さんのSBC6809ボードに、HD63C09Pを取り付けたところ、もう一つ初期化がうまくいっていないことがわかりました。
先日は6850がHD63B50だったので、MC68B50Pに変えてためしてみることにしました。
すると、毎回とは行きませんが、数回BASICプロンプトが出ます。
どうも、先日より成功する確率が高くなったようです。
つまり、シリアルポートからの微弱電流の影響は、HD63C09PよりHD63B50Pの方が大きいのではないかという読みです。
直接繋がっていますから。
と言うことで、スイッチON直後にシリアルコネクタを繋ぐと言う荒技に出ました。
USbコネクタだってそんなつながり方ですよね。
で、3回トライして3回ともBASICプロンプトが出ました。
気をよくして、HD63B50Pでこの荒技をやってみました。
BASICプロンプトは出ますねえ、ただ、スイッチON、OFFの間隔が短いと「OK」のみ出ます。
電源を切ったことになってないようです。

それでは、次はシリアルポートに抵抗をかますことにします。
nice!(0)  コメント(0) 

HD63C09P [マイコン]

言わずとしれた日立製のCPUです。モトローラのMC6809のCMOS版です。
6809には、ノーマル6809、68A09、68B09と動作速度の違う3種類があります。
CMOS版は、どうやら、63B09、63C09の2種類しかないようです。
が、高速は低速を兼ねます。
また、63C09P、63C09EPとEがつく、つかないタイプがそれぞれにあります。
Eがつかないタイプは、クロック発振器内蔵で、クリスタルをつなぐと発振します。
Eがつくタイプは、発振器を外付けします。

さて、華の国のAliに63C09が安く出ていますので、HD63C09Pを注文してみたところ、
送られてきたのは、HD63C09EPでした。こんな事が3回続き、
63C09EPは要らない、63C09Pがほしい、と言ってやったところ、ようやくHD63C09Pが届きました。
どうも、区別をしていない上に、Eタイプがたくさんあるのでしょう。

で、今日、ネット上の某ページで中華購入のHD63C09Pは、実はHD63C09EPだった
と書いてあるのを見ました。
心配になったので、手元のHD63C09Pをvinatgechips さんのSBC6809に取り付けて見ることにしました。
1回目、TeraTerm反応無し、何回かONOFFを繰り返すと、文字化けが出た。
オシロで各ピンの波形を見ると、MC68B09と似ている、電圧は高く出ている。
と言うことで、BかCかはわからないが、6309には違いないと判断しました。

いじっていると、1回だけBASICプロンプトが出ました。
CMOS対策をすればちゃんと動くのでしょうね。やれやれ。

追記
RPの表記もあるようだ。たしかに、Aliに出てくる。これ、中身はEPらしい。
6303RPのRPとは意味が違うのですね。

関連
http://daisan.blog.so-net.ne.jp/2018-02-24
http://daisan.blog.so-net.ne.jp/2018-02-27
nice!(0)  コメント(4) 

WEMOS CH340G USB to serial module [マイコン]

WEMOS CH340G USB to serial module.jpg
中華製のモジュールです。1個1ドル前後です。
これ、vinatgechips さんのSBC6800のシリアルポートに直接つないで使えました。
Z80-MBSにも使えそうです。(追記  現状文字化けします。)
それにしても、安いなあ。
nice!(0)  コメント(0) 

4ICs, Z80 homemade computer その1 [マイコン]

4IC_Z80MBC1.jpg
やっぱり手を出してしまいました。
現在、半田付けがすんだところです。これからICに書き込みです。
ここまでで気がついたことです。
なお、基板はオレンジピコさんから購入した、V2基板です。
まず、回路図は、A041116 schematic.pdfだと思うのですが、基板と違いがあります。
コンデンサの数が大きく違うのは、チップタイプでも実装できるようにとの配慮だと思います。
ですが、回路図上のC6は基板上のC6ではありません。基板上のC6は、0.1uFです。
回路図上のC6は、基板上では、C13~C15の3つです。
回路図上のR16の39オームは基板上では直結、パターンはありません。
シリアルポートも違いますね、1番ピンの位置が違うのはおいといて、5ピンと6ピンの違いがあります。基板上では、VCCとGNDピンの間にNCピンがあります。
これは、、、中華製CH340G使用のシリアルUSB変換ボートが使えるかな。
取り付けたパーツは、手持ちの関係から、
R16は360オームですが、470オームがついています。
C13、C14は100uF、C15は10uFをつけています。動かして見て、減らすかもしれません。

あと、気になるのは、私は電解コンデンサを使いましたが、先人たちの中に、電解コンデンサではなく、タンタルコンデンサとおぼしきコンデンサをつけておられる方がおられます。
もし、タンタルなら、その選択理由は何なのか知りたいと思います。
私が電解コンデンサにしている理由は、タンタルでないといけない回路ではない、タンタルは高価、故障モードがショート、所詮自己使用と言うことです。

そうそう、24LC1024への電源は、基板裏のC8パッドから取っています。

3月18日追記
ふとしたことから、こちらをご覧いただいた方がその方のホームページで、上のタンタルコンデンサの使用例は私ではないかと書かれていました。
まあ、私が見たのは、某所での貼り付け写真なので、どなたの基板か全くわかりません。
その方のタンタルコンデンサ使用理由は、手持ちの関係、電解コンデンサをパンクさせた経験の方がはるかに多いとの事、最終的には、自己責任とアマチュア規格と理解しました。
私の情報源は、ネットと書籍のみで、周囲にプロ、同好のアマもいませんので、皆様の経験や考え方を教えていただけることは大変ありがたいと思います。
ありがとうございます。

もっとも、そのまま墓場へもって行くしかないのですけどね。
nice!(0)  コメント(0) 

「モトローラ6800伝説」で遊ぶ 6809編その8 [マイコン]

basic689.jpg
ようやくMS-BASICがアセンブルできた。
使用したアセンブラはアークピットのX6809.EXE です。
ただし、このアセンブラ固有の問題で2種類の修正が必要でした。

1つめは、このタイプ

TOK_USR EQU *-FUNC_TAB/2+$7F
TOK_USR EQU (*-FUNC_TAB)/2+$7F

上がオリジナルです。数式としては、下が正しいですね。

CMPB #TOK_INKEY-$80*2
CMPB #(TOK_INKEY-$80)*2

これも同様の部類です。

もう一つが

FCB ''+$80
FCB $80+'''

同じく、上がオリジナルです。
このような修正が数カ所ずつありました。

やれやれ。

nice!(0)  コメント(0) 

「モトローラ6800伝説」で遊ぶ 6809編その7 [マイコン]

vinatgechips さんのホームページにMSBASICが動いたと報告が出ました。
すでにROMデータも公開されていますが、それを見ずにやってみようとしました。

ネタもとであるGrant 氏のシステムは、ROMが$E000から、RAMは$0000からになっていますから、
RAMの最終アドレスが書いてあれば修正が必要ですが、見あたりません。
ACIA(UART)のアドレスが$FFD0なので$8018に変更します。
また、115200 Baud の通信速度とのことなので、9600 Baud にしたければ変更します。 (ここ間違い)
RTS_LOWという変数名のところです。
あっ、いや違う。インターラプトは使っていないので、$95での初期化はダメだ。
$15でないと。

ここまではわかりました。
わからなかったのは、RAMエリアであるはずのアドレスに、
GETNCH INC
BNE
INC
GETCCH FCB $B6
CHARAD RMB 2
JMP BROMHK
こんなコードがあります。(全部は出しません。)
FCB $B6
RMB 2
なんて、トリッキーなことしています。
これではROMに持って行けません。
でも、Grant 氏も無視しているように思います。
シリアル通信のみなら使わないのでしょうか、ひとまず、無視します。

これで一度動かして見よう。
と言うことで、カンニング。
あれ、
COMPARISON て、ラベルではなく、前の行のコメントが途中で改行されて落ちてきただけですか。
良く見つけられたものです。すばらしい。
MSBASIC1.jpg
動いた、でもお見せできないけどなんか変。
また、アセンブラX6809.exeが
FCB '*+$80 A8
FCB '/+$80 A9
FCB '^+$80 AA
この辺りを上手くアセンブルしていないようだ。
nice!(0)  コメント(0) 

FlashAir て、何だ? [電子工作]

ああ、またにんじんがぶら下がったようだ。
不完全燃焼するのだろうなあ。
nice!(0)  コメント(0) 

mbedでインラインアセンブラ [マイコン]

どれもこれもよくわからないが、

main.cpp
://Nucleo_blink_led2
:#include "mbed.h"

:DigitalOut myled(LED1);
:DigitalOut myout(D8);

:int main() {
: while(1) {
: myled = 1; // LED is ON
: myout = 0;
: wait(0.2); // 200 ms
: myled = 0; // LED is OFF
: myout = 1;

: __asm volatile
: (
: " NOP \n"
: " NOP \n"
: " NOP \n"
: " NOP \n"
: );
: wait(1.0); // 1 sec
: }
:}

これでよいのか?  とりあえずは、エラーが出ない。
できあがったバイナリファイルはNOPが無いときより6バイト増えている。
しかし、わからないのは、NOP1つでは無いときと変わらない。

次はもう少し中身のあるアセンブラにしよう。

あっ、: はスペースが消えないように入れただけで、
本当はありません。でも、消えているなあ。インデントはどうするのだ。

追記
見つけました。
STM32マイコンでアセンブリしたい!(インラインアセンブラ編)
http://blueeyes.sakura.ne.jp/2018/01/23/825/

nice!(0)  コメント(0) 

Z80 覚え書き [マイコン]

中日電工さんのND80Z3.5を持っていまして、
このたび、新マイコン独立化セットを注文しました。
届くのが楽しみです。

で、このボードはZ80で動きますが、乗っかっているCPUは、ZilogのZ84C0006PECです。
よく考えると、初期の頃は、Zilog製のZ80は見たことがありませんでした。
始めて入手したZ80は、MOSTEK製でした。その後はSHARP製をどんどん見掛けるようになり、
価格も暴落状態でしたので、少々お高いZilog製は見掛けることは無かったのかもしれません。
そこで、手持ちのZ80CPUを抜き出しました。

MOSTEK MK7880 NMOSです。
SHARP LH0080(A) NMOS
LH5080 CMOS
NEC uPD780C NMOS Zではなく7になっています。
uPD70008AC CMOS
TOSHBA TMPZ84C00 CMOS
Zilog Z84C0006PEC CMOS
変わり種
NS NSC800D     CMOS ソフトウエア互換
複合 
TOSHIBA TMPZ84C011 FP
TMPZ84C013 PLCC
TMPZ84C015 FP
複合かつMMU付き
HITACHI HD64180RP SDIPは512MBまで、PLCCは1MB
HD64180ZCP 制御信号がZilogタイプ
KAWASAKI KL5C80A12CF
KL5C80A16CF     1MBまでだったはず
Zilog Z8018010VSC

こうしてみると、Zilogの現在のラインアップ
Z84C00はTOSHIBAのTMPZ84C00の、
Z80180はHITACHIのHD64180Zのセカンドソース、本家帰りなのでしょうね。

そして、Z80からの鞍替えを狙ったのが、
TOSHIBA TLCS-90シリーズ、TMP90C841
NECの78のつくシリーズも、オリジナルと言いながら、
レジスタがA,B,C,Dと続くZ80を意識した作りになっています。

忘れてはいけないのが、
忘れられた
Zilog Z8028010VSC
いわゆる、Z280です。
nice!(0)  コメント(0) 

EEPROM覚え書き [マイコン]

先日、こちらで

http://daisan.blog.so-net.ne.jp/2018-01-08

2716を数個仕入れることにしました。
入手はできましたが、ふと、
Atmelに2716相当のEEPROMがあることに気づきました。
AT28C16です。
もう少し早く気づいていれば、と思いながらも、
ポチッとしてしまったのでありました。

AT28C64もあるのか。2732相当は無いようだ。

nice!(0)  コメント(0) 

ダイニチ ファンヒーター 換気サインの嵐 [故障と修理(その他)]

もう5年目になるダイニチ ファンヒーター、
またまた換気サインの嵐になった。

昨シーズンも換気サインが出まくり、最後に「HHH」のエラーになり動かなくなった。
こちら
http://daisan.blog.so-net.ne.jp/2017-02-14

このときはフレームロッドのみを磨いただけでした。

これのセンサーとしての働きは、炎の中にあるイオン化したガスに電流を流して、
その抵抗値の変化で不完全燃焼を判断していると理解した。

と言うことは、もう片方の電極に相当するバーナーの金網も掃除する必要があるはず。

と言うことで、今回はフレームロッドと金網を磨いて掃除した。

ついでに気化器も分解。こちらは頑固な汚れはなかった。

今のところ、換気サインは出ていません。
が、何かでシリコン使っているのでしょう。いずれまた掃除が必要になるでしょうね。

1月20日追記
カウンタの上がりが早いので、きっと同じ目に遭っている人が多いのでしょうね。
私はこちらを参考にしました。
https://takubeya.com/fw-477lx_4/

現在まで、換気サインは出ていません。

1月30日追記
また出るようになったので、昨夜分解掃除をしました。単に磨くだけではダメなのかもしれない。
とりあえず、フレームロッドから基板に繋がるコネクタをいったん外してもう一度つなぎました。
このコネクタの接触不良を疑っています。次は、基板上の部品か・・・。
nice!(1)  コメント(0) 

「モトローラ6800伝説」で遊ぶ その5 [マイコン]

6800S.jpg
一番下がブルガリアから届いたCM601なんだけど、
マークが消えて読めない。そこがCM601なる所以かもしれない。

写真の三つとも1.33MHzで動きました。

nice!(0)  コメント(0) 

「モトローラ6800伝説」で遊ぶ その4 [マイコン]

現在CPUを交換できる状態なので、ちょいと実験をしてみました。
ほうめいさんのTwitterで

SBC6800 ちょっぴりクロックアップ成功 1.33MHz
mc6800crgen.cの PR2=5; CCPR1L=3; に変えてみた

とあったので1.33MHzにした上で、CPUをノーマルMC6800PとこすれMC68A00Pの両方をためしてみた。

結果、どちらもMIKBUGが動きました。

予想を外しました。
nice!(0)  コメント(0)