趣味のマイコンいじり

安価なマイコンを利用して作成したアプリの紹介です。

KMR-1.8 SPI LCD をSTM32F103C8ボードで動かして見ました

STM32F103C8ボードでのアプリの開発も少し慣れて来たので、1.8インチの
LCDを動かして見ました。動作内容は以前Arduino UNOで行ったものと同じですが
それをSW4STM32の環境に移植して合わせて移植性の程度も調べて見ました。
今回は、新たに購入したKMR-1.8で行った為、当初はデバイスの違いから移植が
正しく行えていると思われても正常に動作せず挫折しそうになりましたが、諦めずに
チェックした結果、デバイスの違いも併せて対応する事ができました。その時の
内容が以下のものです。

<KMR-1.8 SPI LCD の概要>
  今回STM32F103C8ボードでの動作を検討した「KMR-1.8 SPI LCD」は
  フルカラーの128x160のLCDと標準のSDのカードリーダを装備したもので
   次の様なものでした。 (電源電圧は3.3Vで動作させました。)
   イメージ 1

  1.LCDの解像度は128x160でフルカラー
  2.LCDのコントローラはST7735でSPI制御方式
  3.標準のSDカードスロットでカード端子とスロット端子は直結
  4.電源電圧は今回3.3Vで使用
    5.動作確認は、前回Arduino UNOで行ったものと同じ内容で行う。
         (前回のArduino UNOでの記事はこちら
          Adafruit lib graphic demo, Adafruit lib slide show
          Ucglib lib graphic demo, Ucglib lib slide show
  6.その為、前回のArduino UNOのものからSW4STM32用のものに移植して
          利用

 [動作状況]
   

<テスト内容>
    今回のテストは次の様な内容で、STM32F103C8ボード用に、Arduino
    ライブラリを移植してこのボードの今後のアプリケーションに利用する時の
    可能性と動作を確認するものでした。

 [目的と結果]
    テストの確認目標は次のものでした。
         1.ある程度規模の大きいArduinoのライブラリを移植する時の方法と
               問題点を確認
         2.移植したコードのサイズと他のアプリを組み込む余裕の確認

     結果としては、次の様な状況で、予定通りの動作を実現させる事ができました。
         1.移植に関しては、ArduinoのI/O部分を代替するラッパを用意する事で、
               移植時の変更を少なくできる事が判りました。
         2.ただし、コンパイルオプションに関しては、Arduinoのラッパを利用
               するには、Arduino側への設定に変更する必要が有る場合も有り、
               利用時に十分注意する必要が有る事も判りました。
         3.コードサイズに関しては、Arduino UNOの場合より若干増える程度
               なので、Arduino UNOの2倍のROM容量を持つこのボードでは更に
               いろんなアプリが追加できる事が判りました。
         4.その他、今回は買い増した新しいKMR-1.8を利用しましたが、中の
               チップのバージョンが変わっている様で、最初、Adafruitのライブラリが
               動かなかったり、青と赤が入れ替わったりしていて色が正しく
               出なかったリして時間が取られました。

        以上の様な状況で、コードの移植に関してはラッパを用意する事で変更する
        部分を少なくする事ができる様になり、規模の大きなライブラリでも比較的
        簡単に移植ができる事が判りました。また、コードサイズもArduinoのもの
        より少し増える位なので、Arduino UNOの2倍のROM容量を持つこの
        ボードの利用価値は高いと思いました。

 [テストでの機器の接続] 
    イメージ 2
    
 [コード類]
     今回も、コードの開発にはSW4STM32のシステムを利用しました。
  (STM32F103C8ボードののコード開発に 関してはこちらの記事を参照して
       下さい。)

     Code download URL : https://www.dropbox.com/s/yenfgqy8wj6lso1/AC6_KMR1p8.zip?dl=0