' ' ************************************************* ' * 1.3インチ 65KフルカラーLCD テストプログラム * ' * 横240 x 縦240 ドット [ST7789V] SPI * ' * O-Family 2019. 5.29 * ' ************************************************* ' '$regfile = "m88pdef.dat" '使用するAVRを設定。(ATmega88P) $regfile = "m328pdef.dat" '使用するAVRを設定。(ATmega328P) $crystal = 8000000 'AVRクロックを設定。 $hwstack = 64 'ハードウェア・スタックの容量を設定。 $swstack = 10 'ソフトウェア・スタックの容量を設定。 $framesize = 24 'フレーム領域の容量を設定。 ' ' * G-LCDの初期設定 * ' Const Portrait = 1 'LCDの画面設置方向(90度回転)。 (0:横置き[X=240,Y=240] , 1:縦置き[X=240,Y=240]) Const Rotate_180 = 0 'LCDの画面設置方向(180度回転)。(0:コネクターが上側 , 1:コネクターが下側) $lib "glcd-ST7789V_1R3_240x240.lib" 'ST7789Vの1.3インチ240x240版ライブラリを組み込む。 ' LCDの接続ポートを指定する。 A0 = [DC], Rst = [RES] , Si = [SDA] , Sclk = [SCL] Config Graphlcd = Color , A0 = Portd.4 , Rst = Portd.5 , Si = Portd.6 , Sclk = Portd.7 '[Cs1]と[Rst]はオプション。 Initlcd 'ST7789Vを初期化する。 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 = &B1110_1100 Const Brightgreen = &B0011_1101 Const Brightblue = &B0001_1111 Const Darkred = &B1010_0000 Const Darkgreen = &B0001_0000 Const Darkblue = &B0000_0010 ' ' **************** ' * 描画のテスト * ' **************** ' Dim Temp1 As Byte Setfont Color8x8 ' Box(0 , 0) -(239 , 239) , White '表示エリアの枠。 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 , "Brightgreen" , Brightgreen , Black ' Boxfill(160 , 160) -(238 , 238) , Red 'BOX命令のテスト。 Boxfill(185 , 185) -(213 , 213) , Green Box(170 , 170) -(228 , 228) , Cyan ' Circle(80 , 180) , 40 , Magenta 'CIRCLE命令のテスト。 Circle(80 , 180) , 20 , Yellow Line(20 , 180) -(140 , 180) , White Pset 80 , 180 , Black ' For Temp1 = 1 To 106 Step 5 'LINE命令のテスト。 Line(120 , 106) -(239 , Temp1) , Cyan Next Temp1 ' ' Wait 3 ' Cls '[Showpic]命令のテスト。 ' Showpic 0 , 0 , 5011_240_240 ' End '-------------------------------------------------------------------------------------------------- ' ' * フォント データ * ' $include "color8x8.font" ' ' * BGC画像データ * ' '5011_240_240: '$bgf "5011_240_240.BGC"