RL78FLASHによる書き込み

RL78

単線UARTの基板を作成して、RL78への書き込みが、rl78flash.exeで行えるようになった。
この際、rl78flash.exeを作成するのに、手間取ったのでその内容を記載しておく。

①msys2をインストール

 msys2のサイト(https://www.msys2.org/)からインストーラーをダウンロードし実行する。

②gcc&make&gitコマンドインストール

 msys2 mingw64を立ち上げて、
  pacman -S mingw-w64-ucrt-x86_64-gcc
  pacman -S make
  pacman -S git
 を実行して、gccとmakeとgitをインストールする。

③gitにてRL78FLASHのソースコードを取り込んでおく

 github(https://github.com/msalau/rl78flash)より最新版のソースコードを取り込んでおく。
 git clone https://github.com/msalau/rl78flash.gitにて取り込みが可能。
場合によっては、zipファイルの形で取り込んでもらって、展開する形でも構わないと思う。

④make win32を実行する

 makeと行きたいところだが、msys2 mingw64上にてmake win32としてTargetをwin32の物とする。
 うまくいけば、rl78flash.exeとrl78g10flash.exeが出来上がっているので、lsなどで確認のこと。makeのみだと、termios.hが無いというエラーが出るはずなので、必ずmake win32とする必要がある。
 書き込むべきモトローラー形式のファイルと同じフォルダーにrl78flash.exeとrl78g10flash.exeを移動するか、PATHの通っているフォルダーに移動するかしてください。
 CS+のデフォルトで生成される形式はINTEL-HEX形式なので、モトローラー形式に変更が必要なので注意のこと。

⑤コマンドの実行

 コマンドオプションが色々あるので、rl78flashを実行して表示される内容に従ってオプションを決めてください。通常の消去、書き込み、ベリファイの処理で -a。RESETの極性を反転させるので-n。情報表示のため-v。書き込み処理(単線UART)とRESETの設定で-m 3。今回はCOMポートが7に割り当てられたので、COM7の指定。書き込むファイル名という形で下記画面のようになった。

-b 1000000を指定しても動作は行えた。デフォルトは115200で動作するようだ。

 こんなことをしなくてもバイナリーが配布されているので、そちらをダウンロードするのが手っ取り早い(https://github.com/msalau/rl78flash/releases)。

(2023年9月26日追記)
RTS端子は外部に20kΩ未満のプルダウン抵抗が存在するとPCがうまくCH340Eを認識しない。
DTC114EMは便宜上10k+10kの20kΩでプルダウンされているようにRTS端子には見えるので、何とか動いているような状況のようだ。本来なら22k+22kのDTC124EMとか100k+100kのDTC115EMなどを使った方が良いかもしれない。

コメント

タイトルとURLをコピーしました