RL78/G10の外部UARTによる書き込み

いつもお世話になっております。


表題の通りRL78/G10に外部UARTを通じて書き込みたいと考えているのですが、

プロトコルを記したドキュメントを見つけることができません。

どこかにアプリケーションノート等として公開されているのでしょうか、

それともプロトコルは秘匿されているため外部UART経由の書き込みは事実上不可能ということなのでしょうか。


もしよければ教えてください。

Parents
  • sohc1300さん

    UMのフラッシュ書きこみの章は中途半端な書き方ですよねー

    試しにRFPとRL78/G10(R5F10Y16)のコマンド通信を見ると結構シンプルなコマンド体系のようでした。
    以下にコマンドフローを掲載しておきますね。

    ●消去後書き込み
     モード引き込み
    TX:3AH
    RX:06H
    TX:60H 消去後書き込みコマンド
    RX:06H
    RX:07H ROMサイズ(07FFh)?
    TX:06H
     消去開始
    RX:06H
     消去完了
    TX:[DATA0000H][DATA0001H][DATA0002H][DATA0003H] 書きこみデータ
    RX:06H
    TX:[DATA0004H][DATA0005H][DATA0006H][DATA0007H] 書きこみデータ
    RX:06H
    ・・・・
    TX:[DATA07FCH][DATA007FDH][DATA07FEH][DATA07FFH] 書きこみデータ
    RX:06H,06H
     書きこみ完了

    ●CRCチェック
     モード引き込み
    TX:3AH
    RX:06H
    TX:53H CRCチェックコマンド
    RX:06H
    RX:07H ROMサイズ(07FFh)?
    TX:06H
    RX:06H
    RX:53H,F6H CRC

Reply
  • sohc1300さん

    UMのフラッシュ書きこみの章は中途半端な書き方ですよねー

    試しにRFPとRL78/G10(R5F10Y16)のコマンド通信を見ると結構シンプルなコマンド体系のようでした。
    以下にコマンドフローを掲載しておきますね。

    ●消去後書き込み
     モード引き込み
    TX:3AH
    RX:06H
    TX:60H 消去後書き込みコマンド
    RX:06H
    RX:07H ROMサイズ(07FFh)?
    TX:06H
     消去開始
    RX:06H
     消去完了
    TX:[DATA0000H][DATA0001H][DATA0002H][DATA0003H] 書きこみデータ
    RX:06H
    TX:[DATA0004H][DATA0005H][DATA0006H][DATA0007H] 書きこみデータ
    RX:06H
    ・・・・
    TX:[DATA07FCH][DATA007FDH][DATA07FEH][DATA07FFH] 書きこみデータ
    RX:06H,06H
     書きこみ完了

    ●CRCチェック
     モード引き込み
    TX:3AH
    RX:06H
    TX:53H CRCチェックコマンド
    RX:06H
    RX:07H ROMサイズ(07FFh)?
    TX:06H
    RX:06H
    RX:53H,F6H CRC

Children
  • Kirinさん、回答ありがとうございます。

    まさかUARTプロトコルの解析までして下さるとは思いませんでした……

    基板まで完成して手詰まりになっていたところ、本当に助かりました。

    0x3Aを送ってとりあえず引き込みを試みた後0x06が返って来たかどうか記憶が定かでないのですが、

    タイミングを調整しながら試してみます。

    貴重な時間を割いて迅速に対応して頂いたことに感謝します。

  • sohc1300さん

    解析は趣味なので、お役に立ててよかったです。

    G10の方は、TOOL0のセットアップ時間とか、100msec以内とかタイミングがシビアみたいですね。がんばってください。

  • sohc1300さん

    RL78/G10って、奇数パリティです。
    UMには書いてありませんけども。

    もしかしたら、パリティがなくてエラーが出ているのかもしれませんね。
  • Kirinさん

    奇数パリティが必要との情報、ありがとうございます!

    おかげさまで無事書き込むことができました。

    僕はROM1KiBの10Y14を使っていますが、0x07の代わりに0x03が返ってきたのでこのバイトはROMサイズで間違いなさそうです。

    また、CRCチェックで返ってくるCRC値はROM全域のデータをRL78/G13搭載の汎用CRCに(ビットエンディアンネスを反転せず)通した場合と同一のものでした

    CRC-16-CCITT(初期値0x0000、左シフト非反転、除数0x11021)です。


    追記:

    CRCについてですが、汎用CRCではなくG13のフラッシュ・メモリCRCによる結果と同じでした。

    0xFFで埋め立てた状態で調べたときにたまたま汎用CRCと同じ値が出たようです。

  • sohc1300さん

    やりましたね!

    CRCも解けたのでバッチリOK