' ' ************************************************** ' * 0.96インチ 65KフルカラーLCD テストプログラム * ' * 横160 x 縦80 ドット [ST7735S] SPI * ' * O-Family 2021. 1. 5 * ' ************************************************** ' '$regfile = "m88pdef.dat" '使用するAVRを設定。(ATmega88P) $regfile = "m328pdef.dat" '使用するAVRを設定。(ATmega328P) $crystal = 8000000 'AVRクロックを設定。 $hwstack = 64 'ハードウェア・スタックの容量を設定。 $swstack = 10 'ソフトウェア・スタックの容量を設定。 $framesize = 24 'フレーム領域の容量を設定。 ' ' * G-LCDの初期設定 * ' Const Portrait = 0 'LCDの画面設置方向(90度回転)。 (0:横置き[X=160,Y=80] , 1:縦置き[X=80,Y=160]) Const Rotate_180 = 1 'LCDの画面設置方向(180度回転)。(0:コネクターが下側 , 1:コネクターが上側) $lib "glcd-ST7735S_160x80.lib" 'ST7735Sの160x80版ライブラリを組み込む。 ' LCDの接続ポートを指定する。 Cs1 = [CS] , A0 = [DC] , Rst = [RES] , Si = [SDA] , Sclk = [SCL] Config Graphlcd = Color , Cs1 = Portd.7 , A0 = Portd.6 , Rst = Portd.5 , Si = Portd.4 , Sclk = Portd.3 '[Cs1]と[Rst]はオプション。 Initlcd 'ST7735Sを初期化する。 Cls 'G-LCDの全画面を消去する。 ' ' * 色の名前を定義する * [RRRG_GGBB] = [R2,R1,R0,G2_G1,G0,B1,B0] ' Const Black = &B0000_0000 Const Red = &B1110_0000 Const Green = &B0001_1100 Const Blue = &B0000_0011 Const Magenta = &B1110_0011 Const Yellow = &B1111_1100 Const Cyan = &B0001_1111 Const White = &B1111_1111 ' Const Orange = &B1111_0100 Const Brightgreen = &B0011_1110 Const Brightblue = &B0001_1111 Const Darkred = &B1010_0000 Const Darkgreen = &B0001_0100 Const Darkblue = &B0000_0010 ' ' **************** ' * 描画のテスト * ' **************** ' #if Portrait = 0 '横置き[X=160,Y=80] Box(0 , 0) -(159 , 79) , White Setfont Color8x8 Lcdat 1 , 1 , "Red" , Red , Black Lcdat 9 , 1 , "Green" , Green , Black Lcdat 17 , 1 , "Blue" , Blue , Black Lcdat 25 , 1 , "Magenta" , Magenta , Black Lcdat 33 , 1 , "Yellow" , Yellow , Black Lcdat 41 , 1 , "Cyan" , Cyan , Black Lcdat 49 , 1 , "Orange" , Orange , Black Lcdat 57 , 1 , "White" , White , Black Lcdat 67 , 1 , "Black" , Black , White ' Lcdat 1 , 65 , "Darkred" , Darkred , Black Lcdat 9 , 65 , "Darkgreen" , Darkgreen , Black Lcdat 17 , 65 , "Darkblue" , Darkblue , Black Lcdat 25 , 65 , "Brightgreen" , Brightgreen , Black ' Boxfill(128 , 48) -(158 , 78) , Red Boxfill(138 , 58) -(148 , 68) , Green Circle(95 , 58) , 16 , Blue Circle(95 , 58) , 8 , Yellow Line(75 , 58) -(115 , 58) , White Pset 95 , 58 , Black ' #else '縦置き[X=80,Y=160] Box(0 , 0) -(79 , 159) , White Setfont Color8x8 Lcdat 1 , 1 , "Red" , Red , Black Lcdat 9 , 1 , "Green" , Green , Black Lcdat 17 , 1 , "Blue" , Blue , Black Lcdat 25 , 1 , "Magenta" , Magenta , Black Lcdat 33 , 1 , "Yellow" , Yellow , Black Lcdat 41 , 1 , "Cyan" , Cyan , Black Lcdat 49 , 1 , "Orange" , Orange , Black Lcdat 57 , 1 , "White" , White , Black Lcdat 67 , 1 , "Black" , Black , White ' Lcdat 77 , 1 , "Darkred" , Darkred , Black Lcdat 85 , 1 , "Darkgreen" , Darkgreen , Black Lcdat 93 , 1 , "Darkblue" , Darkblue , Black Lcdat 101 , 1 , "Brightgre" , Brightgreen , Black ' Boxfill(48 , 128) -(78 , 158) , Red Boxfill(58 , 138) -(68 , 148) , Green Circle(25 , 135) , 16 , Blue Circle(25 , 135) , 8 , Yellow Line(5 , 135) -(45 , 135) , White Pset 25 , 135 , Black ' #endif ' End '-------------------------------------------------------------------------------------------------- ' ' * フォント データ * ' $include "color8x8.font"