Renesas Community
Renesas Community
  • User
    Join or sign in
  • Site
  • Search Community
  • User
  • Renesas Engineering Community
  • FAQ
  • HELP
  • More
  • Cancel
がじぇっとるねさすコミュニティ
がじぇっとるねさすコミュニティ
GR-ADZUKI スケッチリファレンス作りました、ようやく。。
  • Forums
  • Files
  • がじぇっとるねさす ゆーざー会 - Wiki
  • Tags
  • More
  • Cancel
  • New

 

 GR-SAKURA

 GR-KURUMI

 GR-COTTON

 GR-CITRUS

 GR-PEACH

 GR-KAEDE

 GR-ADZUKI

 GR-LYCHEE

 GR-ROSE

 GR-MANGO(*)

 SNShield

 Web Compiler

 IDE for GR

 TOPPERS関連

 女子美コラボ

 その他

 ※プロデューサミーティング中

 作り方使い方資料

 イベント関連

 作品記事

 体験記事

 その他

 

 ライブラリ

 ツール

 その他・過去ファイル

  • Replies 32 replies
  • Subscribers 426 subscribers
  • Views 36560 views
  • Users 0 members are here
  • GR-ADZUKI
Options
  • Share
  • More
  • Cancel
Related Tags
  • auzuki
  • azuki
  • BASIC
  • GR-ADZUKI
  • GR-ADZUKI Node.js Johnny-Five
  • GR-ADZUKI S4A モーター
  • GR-ADZUKI USB
  • WDT
  • デジタルコンパス
  • リセット
  • 省電力
Related

スケッチリファレンス作りました、ようやく。。

Okamiya Yuuki
Okamiya Yuuki over 6 years ago

がじぇるね岡宮です。

製品リリースから1か月以上も経ってしまいましたが、スケッチリファレンスを作りました。

KURUMIからの相違点といえば、SPI2、SD2、INT2の追加、LED制御の違いぐらいです。モーターやセンサー回りの使い方は特設ページで使い方を増やしていこうと思っています。

ちなみに英語版はもう作ってありますが、製品ページ+特設3ページの英訳が終わり次第、公開いたします。

  • Reply
  • Cancel
  • Cancel
  • @chobichan
    @chobichan over 6 years ago
    より美味しくRL78/G13をいただけるのですね。
    と言うか増えたサポートハードウエアのライブラリを、KURUMIとマージして欲しい。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to @chobichan
    web コンパイラのテンプレートの数がやたらと多いですが、ボード毎にテンプレートはひとつにして、あとはサンプルプログラムとして分離して欲しいです。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 6 years ago in reply to fujita nozomu
    >chobichanさん
    KURUMIのピンに出ていないので、悩ましいです。

    >fujitaさん
    そうですね、gr_sketch.cppだけのものであれば確かにライブラリボタンからのインポートの方に移した方がよいと考えておりまだ実施できてません。ものによってはmakefileが違ったり(TOPPERSとか)や、裏で別のperlが動いている(内蔵ROMのWAVテーブル生成とか)ため、そのためのテンプレート(zip圧縮)が必要なのでボードに対してひとつにするのはちょっと難しい感じです。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • @chobichan
    @chobichan over 6 years ago in reply to Okamiya Yuuki
    いやいや、いつか出るであろうGR-KURUMI FULLとかGR-KURUMI PROを期待して。個人的にはGR-KURUMIの派製品は作っていますしね。、、、あれ?、ライブラリのライセンスはGR-KURUMI上でしか使えないとかは無いですよね?。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 6 years ago in reply to @chobichan
    >いつか出るであろうGR-KURUMI FULLとかGR-KURUMI PROを期待して
    そのときはもちろんマージします!

    ライブラリライセンスは基本的に個々のソースに記載しており、だいたいがLGPLです。一部転用元のソースによってはGPL3やapacheなどがありますが、KURUMI縛りはないです。

    This library is free software; you can redistribute it and/or
    modify it under the terms of the GNU Lesser General Public
    License as published by the Free Software Foundation; either
    version 2.1 of the License, or (at your option) any later version.
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to Okamiya Yuuki
    > 裏で別のperlが動いている(内蔵ROMのWAVテーブル生成とか)ため、

    WAV 等のバイナリファイルを C の書式に合った 16進数に変換してプログラムの一部とする程度のことであれば、やり様ではバイナリファイルのまゝできないこともないです。

    参考:
    japan.renesasrulz.com/.../9694
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to Okamiya Yuuki

    > 裏で別のperlが動いている(内蔵ROMのWAVテーブル生成とか)ため、

    GR-KURUMI_WAVPROM_V1.13.zip と GR-KURUMI_Sketch_V1.13.zip の差分部分を小変更し、perl 等使用することなくビルドできるようしてみました。

    GR-KURUMI_Sketch_V1.13.zip から新規作成したプロジェクトにアップロードするだけで ビルドできます。

     

    同様のことは GR-SAKURA_MP3_WAVROM_V2.13.zip 等でも可能と思います。web コンパイラのテンプレートの数がやたらと多いですが、ボード毎にテンプレートはひとつにして、あとはサンプルプログラムとして分離して欲しいです。

    (次の投稿のものに差し替え)

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to fujita nozomu

    バイナリファイルを読み込むマクロ LoadBinFile() の機能と書式を変更

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 6 years ago in reply to fujita nozomu
    Fujitaさん、ありがとうございます。wavの追加や削除でユーザー側はどうすればよいのか簡単に説明いただけないでしょうか?
    できることならgr_sketch.cppを編集するだけで実現できることがベターかと思っています。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to Okamiya Yuuki

    > wavの追加や削除でユーザー側はどうすればよいのか簡単に説明いただけないでしょうか?

    若干整理しました。

     

    ファイルを追加したい場合には .wav ファイルをプロジェクトにアップロードで追加し、b2ca_file_list.c に

    LoadWavFile("se_maoudamashii_jingle01.wav"/*ファイル名*/, jingle01/*シンボル名*/);
    

    を追加、b2ca_file_list[] の要素に

        {"jingle01.wav"/*参照用ファイル名*/, jingle01/*シンボル名*/},  
    

    を追加します。

    呼び出す場合には gr_sketch.cpp などの中から

    	wavp.play("jingle01.wav"/*参照用ファイル名*/);
    

    とするだけです。

    現状 Wavp ライブラリは

    • 音声再生中は処理が帰ってこない(バックグラウンド処理できない)
    • WAV ファイルに情報として含まれる周波数とサンプリングレートの情報を利用しておらず、複数の音声ファイルをそれぞれの別の設定にしての利用が煩雑
    • API が十分にこなれてる気がしない
    • ライブラリ中でデバグ用の sprintf() が使用されておりコードサイズが大きい
    • 圧縮フォーマットに非対応

    以上の問題があると考えており、ライブラリとしての汎用的な利用を考えるならば解決すべき問題があると思います。

    > できることならgr_sketch.cppを編集するだけで実現できることがベターかと思っています。

    例えば今回の gr_sketch.cpp と b2ca_file_list.c を、

    gr_sketch.cpp:
    #ifdef __cplusplus
    #include 
    #include 
    //#define WAVDATA_8BIT
    
    Wavp wavp(16000);
    
    void setup()
    {
    }
    
    void loop()
    {
        wavp.play("sound24.wav");
        delay(1000);
    }
    #else
    #include 
    #include "loadwavfile.h"
    
    LoadWavFile("sound24.wav", sound24);
    
    const struct b2ca_file b2ca_file_list[] = {
        {"sound24.wav", sound24},
        {"", 0}
    };
    #endif
    
    b2ca_file_list.c:
    #include "gr_sketch.cpp"
    

    のように書けば、.wav ファイルの追加や変更等でも書き換えるのは gr_sketch.cpp のみにできますが、トリッキーであり全然良いとは思わないですね。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to fujita nozomu

    > ・圧縮フォーマットに非対応

    ルネサスでは RL78 用に『M3S-S2-Tiny for the RL78 Family』(https://www.renesas.com/ja-jp/products/software-tools/software-os-middleware-driver/renesas-software-library/m3s-s2-tiny.html)というものがあるようなので、これの GCC 版(恐らくはサポートの関係かなんかで国内では非公開であろう)を持ってきて GR-KURUMI他で動作させるというのが良さげな感じですね。

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 6 years ago in reply to fujita nozomu
    ありがとうございます。ただ、やはりちょっと煩雑になってしまうと思ってまして、メリットを考慮して検討したいです。
    >音声再生中は処理が帰ってこない(バックグラウンド処理できない)
    これは割込みで停止処理ができます。
    >WAV ファイルに情報として含まれる周波数とサンプリングレートの情報を利用しておらず、複数の音声ファイルをそれぞれの別の設定にしての利用が煩雑
    これは利用ケースに応じてと思ってます。基本的に内蔵ROM版はWAV生成の際にある程度サイズを気にしつつ、妥当なWAVファイルにする必要があります。
    >API が十分にこなれてる気がしない
    私はシンプルでよいと思っています。Readmeにある通りMatsuuraさんに作っていただいてますが、ユーザーのご意見あれば反映すべきとは思っています。
    >ライブラリ中でデバグ用の sprintf() が使用されておりコードサイズが大きい
    了解です。ちょっと時間あるときに削除して見てみます。
    >圧縮フォーマットに非対応
    これもユーザーのご意見次第かなぁと思ってます。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • fujita nozomu
    fujita nozomu over 6 years ago in reply to Okamiya Yuuki

    > >音声再生中は処理が帰ってこない(バックグラウンド処理できない)

    > これは割込みで停止処理ができます。

    どのような用途に使用した場合としてどのやったら回避できるということでしょうか?

    私は例えばしゃべるロボットのような音声を再生しながら動作する用途を想定し、音声を再生してる間は動作が止まるようでは話にならないという認識で上記を問題として捉えています。音声再生以外をタイマー割り込みで回すということですか?

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • Okamiya Yuuki
    Okamiya Yuuki over 6 years ago in reply to fujita nozomu
    あぁ、なるほど、処理が返ってこないというより、再生しながら次の処理に進むということですね。それは現状無理かもです。
    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • NoMaY
    NoMaY over 6 years ago in reply to fujita nozomu

    藤田様、こんにちは。

    fujita nozomu様wrote: said:
    > できることならgr_sketch.cppを編集するだけで実現できることがベターかと思っています。
    例えば今回の gr_sketch.cpp と b2ca_file_list.c を、
    ...略...
    のように書けば、.wav ファイルの追加や変更等でも書き換えるのは gr_sketch.cpp のみにできますが、トリッキーであり全然良いとは思わないですね。引用終わり

    試していて気付いたのですが、この話は『マクロの中で__farキーワードを使う必要があるけれども__farキーワードがcppファイルでは使えないというGNURL78の制限ゆえに別途cファイルを使わざるを得ない』ということを仰っている、のではないかという気がしたのですが、その認識であっているでしょうか?

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
>
サイト使用条件
プライバシーポリシー
お問い合わせ
© 2010-2022 Renesas Electronics Corporation. All rights reserved.