2019年9月29日の日記を表示中
2019年 9月29日 (日)
■IONA-JS
IONA-JSは基板上にICSPの端子が引出してあるので、ピンを立ててやるだけで中身の書き換えができるっぽいです。しかも、調べてみると、プログラマにはArduino Unoが使える模様。ということは、手持ちの機材で書き込めちゃうってことですね。というわけで、早速やってみることに。
まず、PC上でArduinoのIDEを起動し、「ファイル」メニューの「スケッチ例」から「11.ArduinoISP」を選びます。で、Arduino Uno向けにコンパイルして書き込みます。このとき、COMポートの何番でArduino Unoが認識されているかを覚えておきます。書き込みが終わったら、ArduinoのIDEは閉じてOKです。もう使いません。ただ、PCとArduino UnoはUSBケーブルで接続しておいたままにします。
次にArduino UnoとIONA-JSを接続すべく、IONA-JS側にピンを立てます。ピンと信号の対応は、とよしまさんのサポートページに記載されています。
そして、Arduino Uno側との間を以下のように配線します。こちらのページの配線図が凄くわかりやすいです。 IONJA-JSとは、IONA-JS側の部品面を表、USB端子がある側を上にして以下のように繋ぎます。
- Arduino Uno 10番 - IONA-JS RST (左側下段)
- Arduino Uno 11番 - IONA-JS MOSI (右側中段)
- Arduino Uno 12番 - IONA-JS MISO (左側最上段(基板の上端に近い側))
- Arduino Uno 13番 - IONA-JS SCK (左側中段)
- Arduino Uno 5V - IONA-JS VCC (右側最上段)
- Arduino Uno GND - IONA-JS GND (右側下段)
で、PCでターミナルを開き、avrdudeコマンドを使って書き込みたいファームウェアのhexファイルをIONA-JSに転送します。avrdudeなどのツール類のパスは、ArduinoのIDEがインストールされているなら、Program Files の中のArduino IDEのインストール先の下の Arduino\hardware\tools\avr\bin にあるツール類にパスを通してやれば使えるようになります。
また、avrdudeの設定ファイルは、同じくArduino IDEのインストール先の Arduino\hardware\tools\avr\etc\avrdude.conf にあるので、適当に参照しやすいところにコピーしておきます。この状態で、avrdudeを以下のような引数で実行することで、IONAJSとの接続が確認できます (以下は、Arduino UnoがCOM3に繋がっている場合の例です。他のCOMポートに繋がっている場合は、適宜読み替えてください)。
avrdude -C avrdude.conf -c avrisp -P COM3 -pm32 -b 19200
これで問題がなければ、以下のコマンドで、カレントディレクトリにあるv1_01a.hexの書き込みができるはずです。
avrdude -C avrdude.conf -c avrisp -P COM3 -pm32 -b 19200 -U flash:w:v1_01a.hex:i
ファームウェアが書けることを確認したので、自分で改造したファームウェアを書き込んでみます。ひとまず、とよしまさんによると、クイズ幸福の旅人の画面右端に表示される「A-」の文字は、「IONA-JS」の文字列の一部ではないかとのこと。これを確認すべく、デバイスIDの「IONA-JS」部分を「IONBXJS」に書き換えてみましたw
このファームウェアを書き込んで、画面右端に「BX」と表示されるようになれば仮説の正しさが証明されます。・・・出ましたww
というわけで、クイズ幸福の旅人の画面右端に出ていた「A-」は「IONA-JS」の文字列の一部であるということが確定しましたw
次に、IONA-JSのファームウェアを1.10に上げて、テストスイッチおよびサービススイッチに対応させてみたいと思います。1.10へのアップデートは、普通にavrdudeでArduino Unoを通じて書き込むだけ。無事完了。
基板側を改造します。テストスイッチの配線を追加。
そしてサービススイッチの配線を追加。
これでようやくSystem12でテストモードに入れますねw。そしてテストモードに入って何が起きているかわかりました。右端に表示されていた「A-」は、この画面の残骸だったんですねー。
ちなみに、てんこもりシューティングのテストモードいじってて気づいたんですが、System12は、設定で、C-SyncからH-Sync/V-Syncモードに変えられるんですな。変えたところで15kHzなのは変わらないですがw
というわけで、色々スッキリしたところで、他のJVS基板でも色々と動作を確認して行きたいと思います。まずはこのミニバタリアンから・・・と思ったら、この基板、電源・映像はJVSだけどIOは違うのね(´・ω・`)
2019年9月29日の日記を表示中
[コメントを書く]