読者です 読者をやめる 読者になる 読者になる

Miho's Memory

組込みとアートとまぜまぜ

あっちむいてほいっ♪ ~ 魂吹き込み編 ~

PSoC Advent Calendar2016  12/18

☆あそび相手がほしい...

はんだづけ友達,どろーん友達,呑み友達,温泉友達,ショッピング友達,カフェ友達,Disny大好き友達...そこそこ相手はいるけれど,みんなして予定入っちゃってるときがある.
そんなとき ”ぼっち” になっちゃうの...

だれか みほ とあそんでくれない?

☆いたいた ^^ ちょうどいいやついた!

その名は ”らぴろん” #^^#
最近ガンダムみたいな進化を遂げた(外見だけ)
『ねぇ らぴろん,みほと一緒にあそばない?^^』

ん?でも らぴろん,元気なみほについてこれるかな??^^

そこで

☆らぴろんの身体検査

らぴろん は手足はそこそこ自由に動かせます.

f:id:MihoN:20161206163138p:plain

でも... あたま... からっぽw  
ドモドモ\( ̄▽ ̄*)(* ̄▽ ̄)/ドモドモ

f:id:MihoN:20161206162908p:plain

そこで...

らぴろんのあたまん中改造計画w

らぴろんを”も少しおりこうさん”にしてあげましょう♪ ^^#
使うのはこれ!

”みんな大好きPSoC♡” &
       ”みんな大好きTOPPERS♡”  

f:id:MihoN:20161206170034j:plain

TOPPERSとは
組込み用のITRON仕様のちっちゃなRTOS
https://www.toppers.jp/project.html

脳みそ基板にはこれ!

PSoC5LP(CY8C5868AXI-LP035)を使います!
みんな簡単に手に入るよ!
http://shop.cqpub.co.jp/hanbai/books/48/48171.html

脳みそはこれ!

TOPPERS/ASPカーネル 簡易パッケージ
CY8CKIT-050(Cypress Semiconductor)簡易パッケージ
これまたみんな簡単に手に入るよ!
https://www.toppers.jp/asp-e-download.html

https://www.toppers.jp/download.cgi/asp_cy8ckit050_gcc_20140204.zip

脳みそ注入!

まず,
PSoC Creator を準備して!
     http://yamagoya.hatenablog.jp/entry/2016/12/02/000000
     ※ こにしさんのページを引用させていただきました ^^#

② DLしたTOPPERS/ASPカーネル簡易パッケージを
     c:\PSoC5 以下に展開しよう!
     ※ 日本語フォルダ名はだいたいなにかを引き起こす...

PSoC Creator にインポート!
     File -> Open -> c:\PSoC5\asp_1.9.0_3.0\asp_eval1.cywrk

④ ビルド!
     Build -> Build asp_1.9.0_3.0

⑤ 書き込み!
     ボードを接続
     Debug -> Program

⑥ 脳みそ(サンプル)を動かしてみよう!
     PSoC5LPのシリアル出力をPCで観測するために
     *用意するもの!
         USBシリアル変換モジュール
            今回使用したものは FTDI社製 FT234X
     *手順
         1) PSoC Creator の Design Wide Resources - Pins で確認

f:id:MihoN:20161207212706p:plain

f:id:MihoN:20161207212723p:plain

         Rx_1 が P3[7],Tx_1 が P3[6] に割り当たっています.

         2) PSoC5LPと変換モジュールを接続して,ターミナルソフトを起動します

             Rx_1:PSoC5LP.P3[7] と 変換モジュールの Tx
             Tx_1:PSoC5LP.P3[6] と 変換モジュールの Rx
             を接続して,PCでターミナルソフトを起動します.
             ※ ボーレートは 19200

f:id:MihoN:20161207213702j:plain

    くまさんがいると間違いなく成功します(嘘w

    ターミナルソフトに何か出てきます.
    もともと task1,2,3 全部動いてます.
    c を1回入力すると task1,2,3 が順に回ります.いけた?(下図)

f:id:MihoN:20161207213731p:plain

   2 ,e と順番に入力すると,task2 は exitします.

   ちな,コマンドは sample1.c をみてね ^^*

f:id:MihoN:20161207220429p:plain

脳みそをもっと充実させて!!

タスクを追加してみよう!!

サンプルに task4 を追加してみよ (*・ω・)(*-ω-)(*・ω・)(*-ω-)ウンウン♪

① Task4 の静的生成準備
     C:\PSoC5\asp_1.9.0_3.0\asp_eval1.cydsn\asp\OBJS の
     sample1.cfg に追記

     『task4 生成!』って task1-3 のまねっこで書いて ^^#

② OBJSフォルダ内の set_path.bat の編集
     今回は PSoC Creator 4.0 を使っているからね

     IF %1 == 4.0 path C:\Program Files(x86)\Cypress\PSoC Creator\4.0\PSoC Creator\import\gnu\arm\4.9.3\bin;%PATH%

     の一文を追加します
     みんなの PSoC Creator のインストールパスに合わせてね ^^#

コマンドプロンプトを開いて『set_path.bat 4.0』Enter を実行して!

    念押しだけど,今回は PSoC Creator 4.0 だからね ^^*

④ つづけてコマンドプロンプト
     make_depend.bat .. sample1 cy8ckit050_gcc
     Enter を実行して!

⑤ kernal_cfg.h,kernel_cfg.c,offset.h が新しく生成されましたか? ^-^
     タイムスタンプで確認したり,kernel_cfg.c の中身を見たりしてみてね
     task4 が追加されてるのがわかります

PSoC Creator を開いて,sample1.c の一部編集!
     抜粋:
         char message[4];
         const char *graph[] = {"|", " +", "  *", "      ^^#_Miho"};
         SVC_PERROR(act_tsk(TASK4));
         case '4':   case '3' とかと同じように追記

実行すると ^-^

f:id:MihoN:20161213085137p:plain

ファイル名などを変えたときには

ex. OBJS フォルダで作業
sample1.cfg -> rapiro.cfg
sample1.c -> rapiro.c
sample1.h -> rapiro.h

PSoC Creator の Workspace Explore から sample1.c と sample1.h を削除して!
そして,rapiro.c と rapiro.h を追加しよう!
くれぐれも sample1.h の記載箇所を rapiro.h にすることなど忘れないでね!
そのあと,コマンドプロンプトから set_path.bat を実行!
続けて,
make_depend.bat .. rapiro cy8ckit050_gcc
を実行!

おわり ^^#

続きは
PSoC Advent Calendar2016  12/25  Merry Christmas!!
で会いましょう♪